Spec-Zone.ru › scikit-learn

TweedieRegressor

classsklearn.linear_model.TweedieRegressor(*, power=0.0, alpha=1.0, fit_intercept=True, link='auto', solver='lbfgs', max_iter=100, tol=0.0001, warm_start=False, verbose=0)[исходный код]

Обобщённая линейная модель с распределением Твиди.

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

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

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

Параметры:
powerfloat, по умолчанию=0

Параметр power определяет лежащее в основе распределение целевой переменной согласно следующей таблице:

Power

Распределение

0

Нормальное

1

Пуассона

(1,2)

Составное распределение Пуассона—Гамма

2

Гамма

3

Обратное гауссовское

Для 0 < power < 1 распределение не существует.

alphafloat, по умолчанию=1

Константа, умножающая слагаемое штрафа L2 и определяющая силу регуляризации. alpha = 0 соответствует обобщённым линейным моделям без штрафа. В этом случае матрица признаков X должна иметь полный ранг по столбцам (без линейной зависимости). Значения alpha должны находиться в диапазоне [0.0, inf).

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

Указывает, следует ли добавлять константу (также называемую смещением или свободным членом) к линейному предиктору (X @ coef + intercept).

link{‘auto’, ‘identity’, ‘log’}, по умолчанию=’auto’

Функция связи обобщённой линейной модели, то есть отображение линейного предиктора X @ coeff + intercept в прогноз y_pred. Параметр ‘auto’ выбирает функцию связи в зависимости от значения параметра power следующим образом:

  • ‘identity’ для power <= 0, например для нормального распределения
  • ‘log’ для power > 0, например для распределений Пуассона, Гамма и обратного гауссовского
solver{‘lbfgs’, ‘newton-cholesky’}, по умолчанию=’lbfgs’

Алгоритм, используемый для решения задачи оптимизации:

‘lbfgs’

Вызывает оптимизатор L-BFGS-B из scipy.

‘newton-cholesky’

Использует шаги Ньютона—Рафсона (в арифметике произвольной точности эквивалентные итеративно перевзвешенному методу наименьших квадратов) с внутренним решателем на основе разложения Холецкого. Этот решатель подходит для случаев, когда n_samples >> n_features, особенно при использовании категориальных признаков с редкими категориями, закодированных методом one-hot. Обратите внимание, что потребление памяти этим решателем квадратично зависит от n_features, поскольку он явно вычисляет матрицу Гессе.

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

max_iterint, по умолчанию=100

Максимальное число итераций решателя. Значения должны находиться в диапазоне [1, inf).

tolfloat, по умолчанию=1e-4

Критерий остановки. Для решателя lbfgs итерации прекращаются, когда max{|g_j|, j = 1, ..., d} <= tol, где g_j — j-й компонент градиента (производной) целевой функции. Значения должны находиться в диапазоне (0.0, inf).

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

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

verboseint, по умолчанию=0

Для решателя lbfgs задайте любое положительное значение verbose, чтобы включить подробный вывод. Значения должны находиться в диапазоне [0, inf).

Атрибуты:
coef_array формы (n_features,)

Оценённые коэффициенты линейного предиктора (X @ coef_ + intercept_) в обобщённой линейной модели.

intercept_float

Свободный член (также называемый смещением), добавляемый к линейному предиктору.

n_iter_int

Фактическое число итераций, выполненных решателем.

n_features_in_int

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

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

feature_names_in_ndarray формы (n_features_in_,)

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

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

См. также

PoissonRegressor

Обобщённая линейная модель с распределением Пуассона.

GammaRegressor

Обобщённая линейная модель с распределением Гамма.

Примеры

>>> from sklearn import linear_model
>>> clf = linear_model.TweedieRegressor()
>>> X = [[1, 2], [2, 3], [3, 4], [4, 3]]
>>> y = [2, 3.5, 5, 5.5]
>>> clf.fit(X, y)
TweedieRegressor()
>>> clf.score(X, y)
np.float64(0.839)
>>> clf.coef_
array([0.599, 0.299])
>>> clf.intercept_
np.float64(1.600)
>>> clf.predict([[1, 1], [3, 4]])
array([2.500, 4.599])
fit(X, y, sample_weight=None)[исходный код]

Обучает обобщённую линейную модель.

Параметры:
X{array-like, разреженная матрица} формы (n_samples, n_features)

Обучающие данные.

yarray-like формы (n_samples,)

Целевые значения.

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

Веса объектов.

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

Обученная модель.

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

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

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

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

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

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

Получает параметры этого оценивателя.

Параметры:
deepbool, по умолчанию=True

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

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

Имена параметров и соответствующие им значения.

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

Выполняет прогнозирование с помощью обобщённой линейной модели для матрицы признаков X.

Параметры:
X{array-like, разреженная матрица} формы (n_samples, n_features)

Объекты.

Возвращает:
y_predarray формы (n_samples,)

Возвращает прогнозируемые значения.

score(X, y, sample_weight=None)[исходный код]

Вычисляет D^2 — долю объяснённого девианса.

D^2 является обобщением коэффициента детерминации R^2. В R^2 используется квадратичная ошибка, а в D^2 — девианс этой обобщённой линейной модели; см. руководство пользователя.

D^2 определяется как \(D^2 = 1-\frac{D(y_{true},y_{pred})}{D_{null}}\), где \(D_{null}\) — нулевой девианс, то есть девианс модели, содержащей только свободный член, что соответствует \(y_{pred} = \bar{y}\). Среднее значение \(\bar{y}\) вычисляется с учётом sample_weight. Наилучшее возможное значение оценки равно 1.0; она также может быть отрицательной (поскольку модель может быть сколь угодно хуже).

Параметры:
X{array-like, разреженная матрица} формы (n_samples, n_features)

Тестовые объекты.

yarray-like формы (n_samples,)

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

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

Веса объектов.

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

Значение D^2 для self.predict(X) относительно y.

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

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

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

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

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

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

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

Параметры:
sample_weightstr, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED

Маршрутизация метаданных для параметра sample_weight метода fit.

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

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

set_params(**params)[исходный код]

Задаёт параметры этого оценивателя.

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

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

Параметры оценивателя.

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

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

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

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

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

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

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

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

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

Параметры:
sample_weightstr, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED

Маршрутизация метаданных для параметра sample_weight метода score.

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

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

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

Регрессия Твиди для страховых требований

Основные нововведения scikit-learn 0.23

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

Spec-Zone.ru

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