label_binarize#

sklearn.preprocessing.label_binarize(y, *, классы, neg_label=0, pos_label=1, sparse_output=False)[источник]#

Бинаризация меток в формате one-vs-all.

В scikit-learn доступны несколько алгоритмов регрессии и бинарной классификации. Простой способ расширить эти алгоритмы для случая многоклассовой классификации — использовать так называемую схему один-против-всех.

Эта функция позволяет вычислить это преобразование для фиксированного набора меток классов, известных заранее.

Параметры:
yarray-like или разреженная матрица

Последовательность целочисленных меток или многометочных данных для кодирования.

классыarray-like формы (n_classes,)

Уникально хранит метку для каждого класса.

neg_labelint, по умолчанию=0

Значение, которым должны быть закодированы отрицательные метки.

pos_labelint, по умолчанию=1

Значение, которым должны быть закодированы положительные метки.

sparse_outputbool, по умолчанию=False,

Установите в true, если требуется вывод бинарного массива в разреженном формате CSR.

Возвращает:
Y{ndarray, sparse matrix} формы (n_samples, n_classes)

Форма будет (n_samples, 1) для бинарных задач. Разреженная матрица будет в формате CSR.

Смотрите также

LabelBinarizer

Класс, используемый для обертывания функциональности label_binarize и позволяющий обучаться на классах независимо от операции преобразования.

Примеры

>>> from sklearn.preprocessing import label_binarize
>>> label_binarize([1, 6], classes=[1, 2, 4, 6])
array([[1, 0, 0, 0],
       [0, 0, 0, 1]])

Порядок классов сохраняется:

>>> label_binarize([1, 6], classes=[1, 6, 4, 2])
array([[1, 0, 0, 0],
       [0, 1, 0, 0]])

Бинарные цели преобразуются в вектор-столбец

>>> label_binarize(['yes', 'no', 'no', 'yes'], classes=['no', 'yes'])
array([[1],
       [0],
       [0],
       [1]])