IsotonicRegression
- classsklearn.isotonic.IsotonicRegression(*, y_min=None, y_max=None, increasing=True, out_of_bounds='nan')[source]
-
Модель изотонической регрессии.
Подробнее см. в Руководстве пользователя.
Добавлена в версии 0.13.
- Параметры:
-
- y_minfloat, по умолчанию=None
-
Нижняя граница наименьшего предсказанного значения (минимальное значение все равно может быть выше). Если не задано, по умолчанию равно -бесконечности.
- y_maxfloat, по умолчанию=None
-
Верхняя граница наибольшего предсказанного значения (максимальное значение все равно может быть ниже). Если не задано, по умолчанию равно +бесконечности.
- increasingbool или ‘auto’, по умолчанию=True
-
Определяет, должны ли предсказания возрастать или убывать с
X. Значение ‘auto’ определит это на основе знака оценки ранговой корреляции Спирмена. - out_of_bounds{‘nan’, ‘clip’, ‘raise’}, по умолчанию=’nan’
-
Обрабатывает, как
Xзначения вне области обучения обрабатываются во время предсказания.- ‘nan’, предсказания будут NaN.
- ‘clip’, предсказания будут установлены в значение, соответствующее ближайшей точке конца интервала обучения.
- ‘raise’, генерируется
ValueError.
- Атрибуты:
-
- X_min_float
-
Минимальное значение входного массива
X_для левой границы. - X_max_float
-
Максимальное значение входного массива
X_для правой границы. - X_thresholds_массив формы (n_thresholds,)
-
Уникальные возрастающие
Xзначения, используемые для интерполяции монотонной функции y = f(X).Добавлена в версии 0.24.
- y_thresholds_массив формы (n_thresholds,)
-
Дедублицированные
yзначения, пригодные для интерполяции монотонной функции y = f(X).Добавлена в версии 0.24.
- f_функция
-
Функция поэтапной интерполяции, которая охватывает область входных данных
X. - increasing_bool
-
Выведенное значение для
increasing.
См. также
sklearn.linear_model.LinearRegression-
Линейная регрессия методом наименьших квадратов.
sklearn.ensemble.HistGradientBoostingRegressor-
Градиентный бустинг, являющийся непараметрической моделью, принимающей ограничения монотонности.
isotonic_regression-
Функция для решения модели изотонической регрессии.
Примечания
Связи разрешаются с помощью вторичного метода из де Лиу, 1977.
Ссылки
Изотоническая медианная регрессия: подход линейного программирования Нилотапал Чакраварти Математика операций исследования Том 14, № 2 (май 1989 г.), стр. 303-308
Изотонная оптимизация в R: алгоритм «Pool-Adjacent-Violators» (PAVA) и методы активного набора де Лиу, Хорник, Майр Журнал статистического программного обеспечения 2009 г.
Корректность алгоритмов Крускала для монотонной регрессии с совпадениями де Лиу, Психодиметрика, 1977
Примеры
>>> from sklearn.datasets import make_regression >>> from sklearn.isotonic import IsotonicRegression >>> X, y = make_regression(n_samples=10, n_features=1, random_state=41) >>> iso_reg = IsotonicRegression().fit(X, y) >>> iso_reg.predict([.1, .2]) array([1.8628..., 3.7256...])
- fit(X, y, sample_weight=None)[source]
-
Обучение модели с использованием X, y в качестве обучающих данных.
- Параметры:
-
- Xпоследовательность типа array-like, формы (n_samples,) или (n_samples, 1)
-
Обучающие данные.
Изменено в версии 0.24: Также принимает двумерный массив с одним признаком.
- yпоследовательность типа array-like, формы (n_samples,)
-
Целевые значения обучения.
- sample_weightпоследовательность типа array-like, формы (n_samples,), по умолчанию=None
-
Веса. Если установлено в None, все веса будут установлены в 1 (равные веса).
- Возвращаемые значения:
-
- selfобъект
-
Возвращает экземпляр self.
Примечания
X сохраняется для дальнейшего использования, так как
transformнуждается в X для интерполяции новых входных данных.
- fit_transform(X, y=None, **fit_params)[source]
-
Обучение на данных, а затем их преобразование.
Обучает преобразователь к
Xиyс необязательными параметрамиfit_paramsи возвращает преобразованную версиюX.- Параметры:
-
- Xпоследовательность типа array-like, формы (n_samples, n_features)
-
Входные выборки.
- yпоследовательность типа array-like, формы (n_samples,) или (n_samples, n_outputs), по умолчанию=None
-
Целевые значения (None для безконтрольных преобразований).
- **fit_paramsсловарь
-
Дополнительные параметры обучения.
- Возвращаемые значения:
-
- X_newмассив ndarray формы (n_samples, n_features_new)
-
Преобразованный массив.
- get_feature_names_out(input_features=None)[source]
-
Получение имён выходных признаков для преобразования.
- Параметры:
-
- input_featuresпоследовательность типа array-like из str или None, по умолчанию=None
-
Игнорируется.
- Возвращаемые значения:
-
- feature_names_outмассив ndarray из str объектов
-
Массив ndarray с одной строкой, т.е. [“isotonicregression0”].
- get_metadata_routing()[source]
-
Получение маршрутизации метаданных этого объекта.
Пожалуйста, обратитесь к Руководству пользователя для получения информации о том, как работает механизм маршрутизации.
- Возвращаемые значения:
-
- routingMetadataRequest
-
Объект
MetadataRequest, содержащий информацию о маршрутизации.
- get_params(deep=True)[source]
-
Получить параметры этого оценщика.
- Параметры:
-
- deepbool, по умолчанию=True
-
Если True, вернёт параметры этого оценщика и вложенных подобъектов, являющихся оценщиками.
- Возвращает:
-
- paramsdict
-
Имена параметров, сопоставленные со значениями.
- predict(T)[source]
-
Предсказание новых данных методом линейной интерполяции.
- Параметры:
-
- Tмассив-подобный формы (n_samples,) или (n_samples, 1)
-
Данные для преобразования.
- Возвращает:
-
- y_predndarray формы (n_samples,)
-
Преобразованные данные.
- score(X, y, sample_weight=None)[source]
-
Возвращает коэффициент детерминации предсказания.
Коэффициент детерминации \(R^2\) определяется как \((1 - \frac{u}{v})\), где \(u\) — сумма квадратов остатков
((y_true - y_pred)** 2).sum()и \(v\) — общая сумма квадратов((y_true - y_true.mean()) ** 2).sum(). Лучшее возможное значение равно 1.0, оно может быть отрицательным (потому что модель может быть произвольно хуже). Модель, которая всегда предсказывает ожидаемое значениеy, игнорируя входные признаки, получит значение \(R^2\) равное 0.0.- Параметры:
-
- Xмассив-подобный формы (n_samples, n_features)
-
Тестовые образцы. Для некоторых оценщиков это может быть предварительно вычисленная матрица ядер или список общих объектов вместо неё с формой
(n_samples, n_samples_fitted), гдеn_samples_fitted— количество образцов, используемых при подгонке для оценщика. - yмассив-подобный формы (n_samples,) или (n_samples, n_outputs)
-
Истинные значения для
X. - sample_weightмассив-подобный формы (n_samples,), по умолчанию=None
-
Веса образцов.
- Возвращает:
-
- scorefloat
-
\(R^2\) для
self.predict(X)по отношению кy.
Примечания
Значение \(R^2\), используемое при вызове
scoreдля регрессора, используетmultioutput='uniform_average'с версии 0.23 для согласованности с значением по умолчаниюr2_score. Это влияет наscoreметод всех регрессоров с несколькими выходами (за исключениемMultiOutputRegressor).
- set_fit_request(*, sample_weight:bool|None|str='$UNCHANGED$') IsotonicRegression[source]
-
Запрос метаданных, переданных в метод
fit.Обратите внимание, что этот метод актуален только если
enable_metadata_routing=True(см.sklearn.set_config). Пожалуйста, обратитесь к Руководству пользователя для информации о работе механизма маршрутизации.Варианты для каждого параметра:
-
True: метаданные запрашиваются и передаютсяfitпри их наличии. Запрос игнорируется, если метаданные не предоставлены. -
False: метаданные не запрашиваются и мета-оценщик не передаст ихfit. -
None: метаданные не запрашиваются, и мета-оценщик выведет ошибку, если пользователь их предоставит. -
str: метаданные должны быть переданы мета-оценщику с этим псевдонимом вместо оригинального имени.
По умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняется существующий запрос. Это позволяет изменить запрос для некоторых параметров, а не для других.Добавлен в версии 1.3.
Примечание
Этот метод актуален только если этот оценщик используется как под-оценщик мета-оценщика, например, внутри
Pipeline. В противном случае он не оказывает никакого влияния.- Параметры:
-
- sample_weightstr, True, False, или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightвfit.
- Возвращает:
-
- selfobject
-
Обновленный объект.
-
- set_output(*, transform=None)[source]
-
Установить контейнер вывода.
См. Введение в API set_output для примера использования API.
- Параметры:
-
- transform{“default”, “pandas”, “polars”}, по умолчанию=None
-
Настройка вывода
transformиfit_transform.-
"default": Формат вывода по умолчанию для преобразователя -
"pandas": Вывод в формате DataFrame -
"polars": Вывод в формате Polars -
None: Настройка преобразования не изменена
Добавлен в версии 1.4:
"polars"опция была добавлена. -
- Возвращает:
-
- selfэкземпляр оценщика
-
Экземпляр оценщика.
- set_params(**params)[source]
-
Установите параметры этого оценщика.
Метод работает как с простыми оценщиками, так и с вложенными объектами (такими как
Pipeline). Последние имеют параметры в формате<component>__<parameter>, чтобы было возможно обновить каждый компонент вложенного объекта.- Параметры:
-
- **paramsdict
-
Параметры оценщика.
- Возвращает:
-
- selfэкземпляр оценщика
-
Экземпляр оценщика.
- set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') IsotonicRegression[source]
-
Запрос метаданных, передаваемых методу
score.Обратите внимание, что этот метод актуален только если
enable_metadata_routing=True, (см.sklearn.set_config). Пожалуйста, см. Руководство пользователя о том, как работает механизм маршрутизации.Варианты для каждого параметра:
-
True: метаданные запрашиваются и передаются вscore, если они предоставлены. Запрос игнорируется, если метаданные не предоставлены. -
False: метаданные не запрашиваются, и мета-оценщик не передаст их вscore. -
None: метаданные не запрашиваются, и мета-оценщик выдаст ошибку, если пользователь предоставит их. -
str: метаданные должны передаваться мета-оценщику под этим псевдонимом вместо оригинального имени.
По умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняется существующий запрос. Это позволяет изменить запрос для некоторых параметров, а не для других.Добавлен в версии 1.3.
Примечание
Этот метод актуален только в том случае, если этот оценщик используется в качестве под-оценщика мета-оценщика, например, внутри
Pipeline. В противном случае он не оказывает никакого влияния.- Параметры:
-
- sample_weightstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightвscore.
- Возвращает:
-
- selfобъект
-
Обновленный объект.
-
- transform(T)[source]
-
Преобразовать новые данные с помощью линейной интерполяции.
- Параметры:
-
- Tмассив-подобный формы (n_samples,) или (n_samples, 1)
-
Данные для преобразования.
Изменено в версии 0.24: Также принимает двумерный массив с 1 признаком.
- Возвращает:
-
- y_predndarray формы (n_samples,)
-
Преобразованные данные.
Примеры из галереи
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.isotonic.IsotonicRegression.html