MinMaxScaler#
- класс sklearn.preprocessing.MinMaxScaler(feature_range=(0, 1), *, copy=True, clip=False)[источник]#
Преобразование признаков путем масштабирования каждого признака до заданного диапазона.
Этот оценщик масштабирует и преобразует каждый признак индивидуально так, чтобы он находился в заданном диапазоне на обучающем наборе, например, между нулем и единицей.
Преобразование задается следующим образом:
X_std = (X - X.min(axis=0)) / (X.max(axis=0) - X.min(axis=0)) X_scaled = X_std * (max - min) + min
где min, max = feature_range.
Это преобразование часто используется как альтернатива масштабированию с нулевым средним и единичной дисперсией.
MinMaxScalerне уменьшает влияние выбросов, но линейно масштабирует их в фиксированный диапазон, где наибольшая точка данных соответствует максимальному значению, а наименьшая — минимальному. Для примера визуализации см. Сравните MinMaxScaler с другими масштабаторами.Подробнее в Руководство пользователя.
- Параметры:
- feature_rangeкортеж (min, max), по умолчанию=(0, 1)
Желаемый диапазон преобразованных данных.
- copybool, по умолчанию=True
Установите в False для выполнения нормализации строк на месте и избежания копирования (если вход уже является массивом numpy).
- clipbool, по умолчанию=False
Установите True, чтобы обрезать преобразованные значения проверочных данных до предоставленных
feature_range. Поскольку этот параметр будет обрезать значения,inverse_transformможет не восстановить исходные данные.Примечание
Установка
clip=Trueне предотвращает дрейф признаков (сдвиг распределения между обучающими и тестовыми данными). Преобразованные значения обрезаются доfeature_range, что помогает избежать непреднамеренного поведения в моделях, чувствительных к входным данным вне диапазона (например, линейные модели). Используйте с осторожностью, так как обрезка может исказить распределение тестовых данных.Добавлено в версии 0.24.
- Атрибуты:
- min_ndarray формы (n_features,)
Поэлементная корректировка для минимума. Эквивалентно
min - X.min(axis=0) * self.scale_- scale_ndarray формы (n_features,)
Относительное масштабирование данных по каждому признаку. Эквивалентно
(max - min) / (X.max(axis=0) - X.min(axis=0))Добавлено в версии 0.17: scale_ атрибут.
- data_min_ndarray формы (n_features,)
Минимум по признаку, наблюдаемый в данных
Добавлено в версии 0.17: data_min_
- data_max_ndarray формы (n_features,)
Максимальное значение по признаку, наблюдаемое в данных
Добавлено в версии 0.17: data_max_
- data_range_ndarray формы (n_features,)
Диапазон по признакам
(data_max_ - data_min_)наблюдаемые в данныхДобавлено в версии 0.17: data_range_
- n_features_in_int
Количество признаков, замеченных во время fit.
Добавлено в версии 0.24.
- n_samples_seen_int
Количество выборок, обработанных оценщиком. Он будет сброшен при новых вызовах fit, но увеличивается при
partial_fitвызовы.- feature_names_in_ndarray формы (
n_features_in_,) Имена признаков, наблюдаемых во время fit. Определено только когда
Xимеет имена признаков, которые все являются строками.Добавлено в версии 1.0.
Смотрите также
minmax_scaleкоммуникация вокруг scikit-learn
Примечания
NaN обрабатываются как пропущенные значения: игнорируются при обучении и сохраняются при преобразовании.
Примеры
>>> from sklearn.preprocessing import MinMaxScaler >>> data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]] >>> scaler = MinMaxScaler() >>> print(scaler.fit(data)) MinMaxScaler() >>> print(scaler.data_max_) [ 1. 18.] >>> print(scaler.transform(data)) [[0. 0. ] [0.25 0.25] [0.5 0.5 ] [1. 1. ]] >>> print(scaler.transform([[2, 2]])) [[1.5 0. ]]
- fit(X, y=None)[источник]#
Вычислите минимум и максимум для последующего масштабирования.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Данные, используемые для вычисления минимального и максимального значения для каждого признака, используемых для последующего масштабирования по оси признаков.
- yNone
Игнорируется.
- Возвращает:
- selfobject
Обученный масштабатор.
- fit_transform(X, y=None, **fit_params)[источник]#
Обучение на данных с последующим преобразованием.
Обучает преобразователь на
Xиyс необязательными параметрамиfit_paramsи возвращает преобразованную версиюX.- Параметры:
- Xarray-like формы (n_samples, n_features)
Входные выборки.
- yarray-like формы (n_samples,) или (n_samples, n_outputs), default=None
Целевые значения (None для неконтролируемых преобразований).
- **fit_paramsdict
Дополнительные параметры обучения. Передавайте только если оценщик принимает дополнительные параметры в своем
fitметод.
- Возвращает:
- X_newndarray массив формы (n_samples, n_features_new)
Преобразованный массив.
- get_feature_names_out(input_features=None)[источник]#
Получить имена выходных признаков для преобразования.
- Параметры:
- input_featuresarray-like из str или None, по умолчанию=None
Входные признаки.
Если
input_featuresявляетсяNone, затемfeature_names_in_используется как имена признаков в. Еслиfeature_names_in_не определено, тогда генерируются следующие имена входных признаков:["x0", "x1", ..., "x(n_features_in_ - 1)"].Если
input_featuresявляется массивоподобным, тогдаinput_featuresдолжен соответствоватьfeature_names_in_iffeature_names_in_определен.
- Возвращает:
- feature_names_outndarray из str объектов
То же, что и входные признаки.
- 6332()[источник]#
Получить маршрутизацию метаданных этого объекта.
Пожалуйста, проверьте Руководство пользователя о том, как работает механизм маршрутизации.
- Возвращает:
- маршрутизацияMetadataRequest
A
MetadataRequestИнкапсуляция информации о маршрутизации.
- get_params(глубокий=True)[источник]#
Получить параметры для этого оценщика.
- Параметры:
- глубокийbool, по умолчанию=True
Если True, вернет параметры для этого оценщика и вложенных подобъектов, которые являются оценщиками.
- Возвращает:
- paramsdict
Имена параметров, сопоставленные с их значениями.
- inverse_transform(X)[источник]#
Отменить масштабирование X в соответствии с feature_range.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Входные данные, которые будут преобразованы. Они не могут быть разреженными.
- Возвращает:
- X_originalndarray формы (n_samples, n_features)
Преобразованные данные.
- partial_fit(X, y=None)[источник]#
Онлайн-вычисление минимума и максимума на X для последующего масштабирования.
Весь X обрабатывается как единый пакет. Это предназначено для случаев, когда
fitнеосуществимо из-за очень большого количестваn_samplesили потому что X считывается из непрерывного потока.- Параметры:
- Xarray-like формы (n_samples, n_features)
Данные, используемые для вычисления среднего и стандартного отклонения используемых для последующего масштабирования по оси признаков.
- yNone
Игнорируется.
- Возвращает:
- selfobject
Обученный масштабатор.
- set_output(*, преобразовать=None)[источник]#
Установить контейнер вывода.
См. Введение API set_output для примера использования API.
- Параметры:
- преобразовать{“default”, “pandas”, “polars”}, по умолчанию=None
Настройка вывода
transformиfit_transform."default": Формат вывода трансформера по умолчанию"pandas": DataFrame вывод"polars": Вывод PolarsNone: Конфигурация преобразования не изменена
Добавлено в версии 1.4:
"polars"опция была добавлена.
- Возвращает:
- selfэкземпляр estimator
Экземпляр оценщика.
- set_params(**params)[источник]#
Установить параметры этого оценщика.
Метод работает как на простых оценщиках, так и на вложенных объектах (таких как
Pipeline). Последние имеют параметры видачтобы можно было обновить каждый компонент вложенного объекта.__ - Параметры:
- **paramsdict
Параметры оценщика.
- Возвращает:
- selfэкземпляр estimator
Экземпляр оценщика.
- преобразовать(X)[источник]#
Масштабирует признаки X в соответствии с feature_range.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Входные данные, которые будут преобразованы.
- Возвращает:
- Xtndarray формы (n_samples, n_features)
Преобразованные данные.
Примеры галереи#
Удаление шума с изображения с использованием ядерного PCA
Выбор уменьшения размерности с помощью Pipeline и GridSearchCV
Масштабируемое обучение с полиномиальной аппроксимацией ядра
Обучение многообразию на рукописных цифрах: Locally Linear Embedding, Isomap…
Сравнение стохастических стратегий обучения для MLPClassifier
Сравнение влияния различных масштабировщиков на данные с выбросами