MultiLabelBinarizer#

класс sklearn.preprocessing.MultiLabelBinarizer(*, классы=None, sparse_output=False)[источник]#

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

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

Параметры:
классыarray-like формы (n_classes,), по умолчанию=None

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

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

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

Атрибуты:
classes_ndarray формы (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)[источник]#

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

Параметры:
yитерируемый из итерируемых

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

Возвращает:
selfobject

Обученный оценщик.

fit_transform(y)[источник]#

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

Параметры:
yитерируемый из итерируемых

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

Возвращает:
вес один.{ndarray, sparse matrix} формы (n_samples, n_classes)

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

6332()[источник]#

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

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

Возвращает:
маршрутизацияMetadataRequest

A MetadataRequest Инкапсуляция информации о маршрутизации.

get_params(глубокий=True)[источник]#

Получить параметры для этого оценщика.

Параметры:
глубокийbool, по умолчанию=True

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

Возвращает:
paramsdict

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

inverse_transform(yt)[источник]#

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

Параметры:
yt{ndarray, sparse matrix} формы (n_samples, n_classes)

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

Возвращает:
y_originalсписок кортежей

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

set_output(*, преобразовать=None)[источник]#

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

См. Введение API set_output для примера использования API.

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

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

  • "default": Формат вывода трансформера по умолчанию

  • "pandas": DataFrame вывод

  • "polars": Вывод Polars

  • None: Конфигурация преобразования не изменена

Добавлено в версии 1.4: "polars" опция была добавлена.

Возвращает:
selfэкземпляр estimator

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

set_params(**params)[источник]#

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

Метод работает как на простых оценщиках, так и на вложенных объектах (таких как Pipeline). Последние имеют параметры вида __ чтобы можно было обновить каждый компонент вложенного объекта.

Параметры:
**paramsdict

Параметры оценщика.

Возвращает:
selfэкземпляр estimator

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

преобразовать(y)[источник]#

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

Параметры:
yитерируемый из итерируемых

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

Возвращает:
вес один.массив или CSR матрица, форма (n_samples, n_classes)

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