Spec-Zone.ru › scikit-learn

Нормализатор

classsklearn.preprocessing.Normalizer(norm='l2', *, copy=True)[исходный код]

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

Каждый образец (то есть каждая строка матрицы данных), содержащий хотя бы один ненулевой компонент, масштабируется независимо от других образцов так, чтобы его норма (l1, l2 или inf) равнялась единице.

Этот преобразователь может работать как с плотными массивами numpy, так и с разреженными матрицами scipy (используйте формат CSR, если хотите избежать затрат на копирование или преобразование).

Масштабирование входных данных до единичной нормы часто используется, например, при классификации или кластеризации текстов. Например, скалярное произведение двух нормированных по l2 векторов TF-IDF равно косинусному сходству этих векторов и служит базовой метрикой сходства в векторной модели, широко используемой в области информационного поиска.

Пример визуализации см. в разделе Сравнение Normalizer с другими масштабировщиками.

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

Параметры:
norm{‘l1’, ‘l2’, ‘max’}, default=’l2’

Норма, используемая для нормирования каждого ненулевого образца. Если используется norm=’max’, значения масштабируются на максимум абсолютных значений.

copybool, default=True

Установите значение False, чтобы нормировать строки на месте и избежать копирования (если входные данные уже представлены массивом numpy или разреженной матрицей scipy в формате CSR).

Атрибуты:
n_features_in_int

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

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

feature_names_in_ndarray of shape (n_features_in_,)

Названия признаков, обнаруженных во время fit. Определяется только в том случае, если X имеет названия признаков, представленные строками.

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

См. также

normalize

Эквивалентная функция без API оценщика.

Примечания

Этот оценщик является не имеющим состояния и не требует обучения. Однако мы рекомендуем вызывать fit_transform вместо transform, поскольку проверка параметров выполняется только в fit.

Примеры

>>> from sklearn.preprocessing import Normalizer
>>> X = [[4, 1, 2, 2],
...      [1, 3, 9, 3],
...      [5, 7, 5, 1]]
>>> transformer = Normalizer().fit(X)  # fit does nothing.
>>> transformer
Normalizer()
>>> transformer.transform(X)
array([[0.8, 0.2, 0.4, 0.4],
       [0.1, 0.3, 0.9, 0.3],
       [0.5, 0.7, 0.5, 0.1]])
fit(X, y=None)[исходный код]

Выполняет только проверку параметров оценщика.

Этот метод позволяет: (i) проверить параметры оценщика и (ii) обеспечить соответствие API преобразователей scikit-learn.

Параметры:
X{array-like, sparse matrix} of shape (n_samples, n_features)

Данные для оценки параметров нормирования.

yIgnored

Не используется; присутствует здесь по соглашению для соответствия API.

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

Обученный преобразователь.

fit_transform(X, y=None, **fit_params)[исходный код]

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

Обучает преобразователь на X и y с необязательными параметрами fit_params и возвращает преобразованную версию X.

Параметры:
Xarray-like of shape (n_samples, n_features)

Входные образцы.

yarray-like of shape (n_samples,) or (n_samples, n_outputs), default=None

Целевые значения (None для преобразований без учителя).

**fit_paramsdict

Дополнительные параметры обучения. Передавайте их только в том случае, если оценщик принимает дополнительные параметры в методе fit.

Возвращает:
X_newndarray array of shape (n_samples, n_features_new)

Преобразованный массив.

get_feature_names_out(input_features=None)[исходный код]

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

Параметры:
input_featuresarray-like of str or None, default=None

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

  • Если input_features — это None, то в качестве входных названий признаков используется feature_names_in_. Если feature_names_in_ не определено, создаются следующие входные названия признаков: ["x0", "x1", ..., "x(n_features_in_ - 1)"].
  • Если input_features — это array-like, то input_features должно соответствовать feature_names_in_, если feature_names_in_ определено.
Возвращает:
feature_names_outndarray of str objects

Те же, что и входные признаки.

get_metadata_routing()[исходный код]

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

Информацию о работе механизма маршрутизации см. в руководстве пользователя.

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

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

get_params(deep=True)[исходный код]

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

Параметры:
deepbool, default=True

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

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

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

set_output(*, transform=None)[исходный код]

Задать контейнер выходных данных.

Подробнее см. в руководстве пользователя, а пример использования 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)[исходный код]

Задать параметры этого оценщика.

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

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

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

Возвращает:
selfestimator instance

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

set_transform_request(*, copy:bool|None|str='$UNCHANGED$') → Normalizer[исходный код]

Настроить, следует ли запрашивать передачу метаданных в метод transform.

Обратите внимание, что этот метод имеет значение только в том случае, если этот оценщик используется как вложенный оценщик в составе метаоценщика и маршрутизация метаданных включена с помощью enable_metadata_routing=True (см. sklearn.set_config). Информацию о работе механизма маршрутизации см. в руководстве пользователя.

Для каждого параметра доступны следующие варианты:

  • True: метаданные запрашиваются и передаются в transform, если они предоставлены. Если метаданные не предоставлены, запрос игнорируется.
  • False: метаданные не запрашиваются, и метаоценщик не передаёт их в transform.
  • None: метаданные не запрашиваются, и метаоценщик выдаст ошибку, если пользователь их предоставит.
  • str: метаданные следует передавать метаоценщику под указанным псевдонимом вместо исходного имени.

Значение по умолчанию (sklearn.utils.metadata_routing.UNCHANGED) сохраняет текущий запрос. Это позволяет изменить запрос для одних параметров, не меняя его для остальных.

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

Параметры:
copystr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED

Маршрутизация метаданных для параметра copy в transform.

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

Обновлённый объект.

transform(X, copy=None)[исходный код]

Масштабировать каждую ненулевую строку X до единичной нормы.

Параметры:
X{array-like, sparse matrix} of shape (n_samples, n_features)

Данные для нормирования построчно. Чтобы избежать ненужного копирования, матрицы scipy.sparse должны иметь формат CSR.

copybool, default=None

Копировать входные данные X или нет.

Возвращает:
X_tr{ndarray, sparse matrix} of shape (n_samples, n_features)

Преобразованный массив.

Примеры из галереи

Масштабируемое обучение с приближением полиномиального ядра

Сравнение влияния различных масштабировщиков на данные с выбросами

Кластеризация текстовых документов методом k-means

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

Spec-Zone.ru

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