Spec-Zone.ru › scikit-learn

MultiLabelBinarizer

classsklearn.preprocessing.MultiLabelBinarizer(*, classes=None, sparse_output=False)[source]

Преобразование между итерируемыми списками итерируемых объектов и многомерным форматом.

Хотя список множеств или кортежей — очень интуитивный формат для данных с множественной меткой, он неудобен для обработки. Этот преобразователь преобразует этот интуитивный формат в поддерживаемый формат многомерных меток: двоичную матрицу (образец x класс), указывающую на наличие метки класса.

Параметры:
classesпоследовательность из n_classes элементов, по умолчанию=None

Указывает порядок меток класса. Все элементы должны быть уникальными (нельзя включать дублирующиеся классы).

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

Устанавливается в значение True, если выходной двоичный массив должен быть в формате разреженной матрицы CSR.

Атрибуты:
classes_массив NumPy формы (n_classes,)

Копия параметра classes, если он был предоставлен. В противном случае соответствует отсортированному набору классов, найденному при подгонке.

См. также

OneHotEncoder

Кодирование категориальных признаков с использованием схемы one-hot (one-of-K).

Примеры

>>> from sklearn.preprocessing import MultiLabelBinarizer
>>> mlb = MultiLabelBinarizer()
>>> mlb.fit_transform([(1, 2), (3,)])
array([[1, 1, 0],
       [0, 0, 1]])
>>> mlb.classes_
array([1, 2, 3])
>>> mlb.fit_transform([{'sci-fi', 'thriller'}, {'comedy'}])
array([[0, 1, 1],
       [1, 0, 0]])
>>> list(mlb.classes_)
['comedy', 'sci-fi', 'thriller']

Распространённая ошибка — передача списка, что приводит к следующей проблеме:

>>> mlb = MultiLabelBinarizer()
>>> mlb.fit(['sci-fi', 'thriller', 'comedy'])
MultiLabelBinarizer()
>>> mlb.classes_
array(['-', 'c', 'd', 'e', 'f', 'h', 'i', 'l', 'm', 'o', 'r', 's', 't',
    'y'], dtype=object)

Для исправления этого списка меток следует передавать как:

>>> mlb = MultiLabelBinarizer()
>>> mlb.fit([['sci-fi', 'thriller', 'comedy']])
MultiLabelBinarizer()
>>> mlb.classes_
array(['comedy', 'sci-fi', 'thriller'], dtype=object)
fit(y)[source]

Обучение бинаризатора набора меток, сохраняя classes_.

Параметры:
yитерируемый список итерируемых объектов

Набор меток (любой упорядочиваемый и хешируемый объект) для каждого образца. Если параметр classes установлен, y не будет итерироваться.

Возвращаемые значения:
selfобъект

Обученная модель.

fit_transform(y)[source]

Обучение бинаризатора набора меток и преобразование заданных наборов меток.

Параметры:
yитерируемый список итерируемых объектов

Набор меток (любой упорядочиваемый и хешируемый объект) для каждого образца. Если параметр classes установлен, y не будет итерироваться.

Возвращаемые значения:
y_indicator{массив NumPy, разреженная матрица} формы (n_samples, n_classes)

Матрица, такая что y_indicator[i, j] = 1 тогда и только тогда, когда classes_[j] содержится в y[i], и 0 в противном случае. Разреженная матрица будет в формате CSR.

get_metadata_routing()[source]

Получение маршрутизации метаданных для этого объекта.

Пожалуйста, проверьте Руководство пользователя о том, как работает механизм маршрутизации.

Возвращаемые значения:
routingMetadataRequest

Объект MetadataRequest, содержащий информацию о маршрутизации.

get_params(deep=True)[source]

Получение параметров для этого оценивателя.

Параметры:
deepbool, по умолчанию=True

Если True, возвращаются параметры для данного оценивателя и вложенных под-объектов, являющихся оценивателями.

Возвращаемые значения:
paramsсловарь

Имена параметров, сопоставленные с их значениями.

inverse_transform(yt)[source]

Преобразование заданной индикаторной матрицы в наборы меток.

Параметры:
yt{массив NumPy, разреженная матрица} формы (n_samples, n_classes)

Матрица, содержащая только 1 и 0.

Возвращаемые значения:
yсписок кортежей

Набор меток для каждого образца, такой что y[i] состоит из classes_[j] для каждого yt[i, j] == 1.

set_output(*, transform=None)[source]

Установить контейнер для вывода.

См. Вводное руководство по API set_output, чтобы узнать как использовать API.

Параметры:
transform{“default”, “pandas”, “polars”}, по умолчанию=None

Настройка вывода для transform и fit_transform.

  • "default": Формат вывода по умолчанию для преобразователя
  • "pandas": Вывод в формате DataFrame
  • "polars": Вывод в формате Polars
  • None: Настройка преобразования не меняется

Добавлен в версии 1.4: Вариант "polars" был добавлен.

Возвращаемые значения:
selfэкземпляр оценивателя

Экземпляр оценивателя.

set_params(**params)[source]

Установить параметры этого оценивателя.

Метод работает как с простыми оценивателями, так и с вложенными объектами (например, Pipeline). Последние имеют параметры в формате <component>__<parameter>, что позволяет обновить каждый компонент вложенного объекта.

Параметры:
**paramsсловарь

Параметры оценивателя.

Возвращаемые значения:
selfэкземпляр оценивателя

Экземпляр оценивателя.

transform(y)[source]

Преобразовать заданные наборы меток.

Параметры:
yитерируемый из итерируемых объектов

Набор меток (любой упорядоченный и хешируемый объект) для каждой выборки. Если параметр classes установлен, y не будут итерироваться.

Возвращаемые значения:
y_indicatorмассив или CSR-матрица, форма (n_samples, n_classes)

Матрица, такая что y_indicator[i, j] = 1 тогда и только тогда, когда classes_[j] находится в y[i], и 0 в противном случае.

© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.preprocessing.MultiLabelBinarizer.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API