MultiLabelBinarizer
- classsklearn.preprocessing.MultiLabelBinarizer(*, classes=None, sparse_output=False)[source]
-
Преобразует итерируемый объект из итерируемых объектов в формат с несколькими метками.
Хотя список множеств или кортежей — очень интуитивно понятный формат для данных с несколькими метками, его неудобно обрабатывать. Этот преобразователь выполняет преобразование между этим интуитивно понятным форматом и поддерживаемым форматом с несколькими метками: бинарной матрицей (количество образцов × количество классов), указывающей на наличие метки класса.
Подробнее см. в руководстве пользователя.
- Параметры:
-
- classesarray-like of shape (n_classes,), default=None
-
Задает порядок меток классов. Все элементы должны быть уникальными (дубликаты классов не допускаются).
- sparse_outputbool, default=False
-
Установите значение True, если выходной бинарный массив должен иметь разреженный формат CSR.
- Атрибуты:
-
- classes_ndarray of shape (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_.
- Параметры:
-
- yiterable of iterables
-
Набор меток (любые упорядочиваемые и хешируемые объекты) для каждого образца. Если задан параметр
classes,yне будет перебираться.
- Возвращает:
-
- selfobject
-
Обученный оценщик.
- fit_transform(y)[source]
-
Обучает бинаризатор наборов меток и преобразует переданные наборы меток.
- Параметры:
-
- yiterable of iterables
-
Набор меток (любые упорядочиваемые и хешируемые объекты) для каждого образца. Если задан параметр
classes,yне будет перебираться.
- Возвращает:
-
- y_indicator{ndarray, sparse matrix} of shape (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, default=True
-
Если True, возвращает параметры этого оценщика и вложенных объектов, являющихся оценщиками.
- Возвращает:
-
- paramsdict
-
Имена параметров, сопоставленные с их значениями.
- inverse_transform(yt)[source]
-
Преобразует переданную матрицу индикаторов в наборы меток.
- Параметры:
-
- yt{ndarray, sparse matrix} of shape (n_samples, n_classes)
-
Матрица, содержащая только 1 и 0.
- Возвращает:
-
- y_originallist of tuples
-
Набор меток для каждого образца, где
y[i]состоит изclasses_[j]для каждогоyt[i, j] == 1.
- set_output(*, transform=None)[source]
-
Задает контейнер выходных данных.
Дополнительные сведения см. в руководстве пользователя, а пример использования API — в разделе Знакомство с API set_output.
- Параметры:
-
- transform{“default”, “pandas”, “polars”}, default=None
-
Настраивает формат выходных данных для
transformиfit_transform.-
"default": Формат выходных данных преобразователя по умолчанию -
"pandas": Выходные данные в виде DataFrame -
"polars": Выходные данные в формате Polars -
None: Конфигурация преобразования остается без изменений
Добавлено в версии 1.4: Добавлен параметр
"polars". -
- Возвращает:
-
- selfestimator instance
-
Экземпляр оценщика.
- set_params(**params)[source]
-
Задает параметры этого оценщика.
Метод работает как с простыми оценщиками, так и с вложенными объектами (например,
Pipeline). Параметры последних имеют вид<component>__<parameter>, что позволяет обновлять каждый компонент вложенного объекта.- Параметры:
-
- **paramsdict
-
Параметры оценщика.
- Возвращает:
-
- selfestimator instance
-
Экземпляр оценщика.
- transform(y)[source]
-
Преобразует переданные наборы меток.
- Параметры:
-
- yiterable of iterables
-
Набор меток (любые упорядочиваемые и хешируемые объекты) для каждого образца. Если задан параметр
classes,yне будет перебираться.
- Возвращает:
-
- y_indicatorarray or CSR matrix, shape (n_samples, n_classes)
-
Матрица, в которой
y_indicator[i, j] = 1тогда и только тогда, когдаclasses_[j]входит вy[i], и 0 в противном случае.
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.preprocessing.MultiLabelBinarizer.html