FeatureUnion#

класс sklearn.pipeline.FeatureUnion(transformer_list, *, n_jobs=None, transformer_weights=None, verbose=False, verbose_feature_names_out=True)[источник]#

Объединяет результаты нескольких объектов-трансформеров.

Этот оценщик применяет список объектов-преобразователей параллельно к входным данным, затем объединяет результаты. Это полезно для объединения нескольких механизмов извлечения признаков в один преобразователь.

Параметры преобразователей могут быть установлены с использованием их имени и имени параметра, разделенных '__'. Преобразователь может быть полностью заменен путем установки параметра с его именем на другой преобразователь, удален путем установки на 'drop' или отключен путем установки на 'passthrough' (признаки передаются без преобразования).

Подробнее в Руководство пользователя.

Добавлено в версии 0.13.

Параметры:
transformer_listсписок кортежей (str, transformer)

Список объектов-трансформеров для применения к данным. Первая половина каждого кортежа — это имя трансформера. Трансформер может быть 'drop' для игнорирования или 'passthrough' для передачи признаков без изменений.

Добавлено в версии 1.1: Добавлена опция "passthrough".

Изменено в версии 0.22: Устаревший None как трансформер в пользу ‘drop’.

n_jobsint, default=None

Количество параллельно выполняемых задач. None означает 1, если только не в joblib.parallel_backend контекст. -1 означает использование всех процессоров. См. Глоссарий для получения дополнительной информации.

Изменено в версии v0.20: n_jobs значение по умолчанию изменено с 1 на None

transformer_weightsdict, по умолчанию=None

Мультипликативные веса для признаков на преобразователь. Ключи — имена преобразователей, значения — веса. Вызывает ValueError, если ключ отсутствует в transformer_list.

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

Если True, затраченное время на обучение каждого преобразователя будет выводиться по завершении.

verbose_feature_names_outbool, по умолчанию=True

Если True, get_feature_names_out будет добавлять префикс ко всем именам признаков с именем преобразователя, который сгенерировал этот признак. Если False, get_feature_names_out не будет добавлять префиксы к именам признаков и выдаст ошибку, если имена признаков не уникальны.

Добавлено в версии 1.5.

Атрибуты:
named_transformersBunch

Объект, подобный словарю, со следующими атрибутами. Атрибут только для чтения для доступа к любому параметру трансформатора по заданному пользователем имени. Ключи - это имена трансформаторов, а значения - это параметры трансформаторов.

Добавлено в версии 1.2.

n_features_in_int

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

feature_names_in_ndarray формы (n_features_in_,)

Имена признаков, наблюдаемых во время fit.

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

make_union

Удобная функция для упрощённого построения объединения признаков.

Примеры

>>> from sklearn.pipeline import FeatureUnion
>>> from sklearn.decomposition import PCA, TruncatedSVD
>>> union = FeatureUnion([("pca", PCA(n_components=1)),
...                       ("svd", TruncatedSVD(n_components=2))])
>>> X = [[0., 1., 3], [2., 2., 5]]
>>> union.fit_transform(X)
array([[-1.5       ,  3.04, -0.872],
       [ 1.5       ,  5.72,  0.463]])
>>> # An estimator's parameter can be set using '__' syntax
>>> union.set_params(svd__n_components=1).fit_transform(X)
array([[-1.5       ,  3.04],
       [ 1.5       ,  5.72]])

Для более подробного примера использования см. Объединение нескольких методов извлечения признаков.

fit(X, y=None, **fit_params)[источник]#

Обучить все преобразователи, используя X.

Параметры:
Xитерируемый объект или массивоподобный, в зависимости от трансформеров

Входные данные, используемые для обучения преобразователей.

yarray-like формы (n_samples, n_outputs), по умолчанию=None

Целевые переменные для обучения с учителем.

**fit_paramsdict, по умолчанию=None
  • Если enable_metadata_routing=False (по умолчанию): Параметры, напрямую передаваемые в fit методы под-трансформеров.

  • Если enable_metadata_routing=True: Параметры, безопасно перенаправленные в fit методы под-трансформеров. См. Руководство по маршрутизации метаданных для получения дополнительной информации.

Изменено в версии 1.5: **fit_params может быть направлен через API маршрутизации метаданных.

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

экземпляр класса FeatureUnion.

fit_transform(X, y=None, **params)[источник]#

Обучить все преобразователи, преобразовать данные и объединить результаты.

Параметры:
Xитерируемый объект или массивоподобный, в зависимости от трансформеров

Входные данные для преобразования.

yarray-like формы (n_samples, n_outputs), по умолчанию=None

Целевые переменные для обучения с учителем.

**paramsdict, по умолчанию=None
  • Если enable_metadata_routing=False (по умолчанию): Параметры, напрямую передаваемые в fit методы под-трансформеров.

  • Если enable_metadata_routing=True: Параметры, безопасно перенаправленные в fit методы под-трансформеров. См. Руководство по маршрутизации метаданных для получения дополнительной информации.

Изменено в версии 1.5: **params теперь может быть направлен через API маршрутизации метаданных.

Возвращает:
X_tarray-like или разреженная матрица формы (n_samples, sum_n_components)

The hstack результатов преобразователей. sum_n_components является суммой n_components (выходная размерность) по трансформерам.

get_feature_names_out(input_features=None)[источник]#

Получить имена выходных признаков для преобразования.

Параметры:
input_featuresarray-like из str или None, по умолчанию=None

Входные признаки.

Возвращает:
feature_names_outndarray из str объектов

Преобразованные имена признаков.

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

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

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

Добавлено в версии 1.5.

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

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

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

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

Возвращает параметры, заданные в конструкторе, а также оценщики, содержащиеся в transformer_list из FeatureUnion.

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

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

Возвращает:
paramsотображение строки в любое значение

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

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

Установить выходной контейнер, когда "transform" и "fit_transform" вызываются.

set_output установит выход всех оценщиков в transformer_list.

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

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

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

  • "pandas": DataFrame вывод

  • "polars": Вывод Polars

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

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

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

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

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

Допустимые ключи параметров можно перечислить с помощью get_params(). Обратите внимание, что вы можете напрямую устанавливать параметры оценщиков, содержащихся в transformer_list.

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

Параметры этого оценщика или параметры оценщиков, содержащихся в transform_list. Параметры преобразователей могут быть установлены с использованием их имени и имени параметра, разделённых '__'.

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

экземпляр класса FeatureUnion.

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

Преобразуйте X отдельно каждым трансформером, объедините результаты.

Параметры:
Xитерируемый объект или массивоподобный, в зависимости от трансформеров

Входные данные для преобразования.

**paramsdict, по умолчанию=None

Параметры, перенаправленные в transform метод под-преобразователей через API маршрутизации метаданных. См. Руководство по маршрутизации метаданных для получения дополнительной информации.

Добавлено в версии 1.5.

Возвращает:
X_tмассивоподобная или разреженная матрица формы (n_samples, sum_n_components)

The hstack результатов преобразователей. sum_n_components является суммой n_components (выходная размерность) по трансформерам.