LassoLarsIC
- classsklearn.linear_model.LassoLarsIC(criterion='aic', *, fit_intercept=True, verbose=False, precompute='auto', max_iter=500, eps=np.float64(2.220446049250313e-16), copy_X=True, positive=False, noise_variance=None)[source]
-
Модель Лассо, обученная с помощью Lars, используя BIC или AIC для выбора модели.
Целевая функция оптимизации для Лассо:
(1 / (2 * n_samples)) * ||y - Xw||^2_2 + alpha * ||w||_1
AIC — критерий Акаике [2], а BIC — байесовский критерий информации [3]. Такие критерии полезны для выбора значения параметра регуляризации, обеспечивая баланс между качеством подгонки и сложностью модели. Хорошая модель должна хорошо объяснять данные и быть простой.
Дополнительную информацию можно найти в Руководстве пользователя.
- Параметры:
-
- criterion{‘aic’, ‘bic’}, по умолчанию=’aic’
-
Тип критерия для использования.
- fit_interceptbool, по умолчанию=True
-
Вычислять ли свободный член для этой модели. Если установлено в false, свободный член не будет использоваться в расчётах (т. е. ожидается, что данные центрированы).
- verbosebool или int, по умолчанию=False
-
Устанавливает уровень подробности.
- precomputebool, ‘auto’ или массив, по умолчанию=’auto’
-
Использовать ли предварительно вычисленную матрицу Грама для ускорения вычислений. Если установлено в
'auto'пусть это решит система. Матрица Грама также может быть передана в качестве аргумента. - max_iterint, по умолчанию=500
-
Максимальное количество итераций для выполнения. Может использоваться для ранней остановки.
- epsfloat, по умолчанию=np.finfo(float).eps
-
Регуляризация машинной точности при вычислении диагональных факторов Холецкого. Увеличьте это значение для очень плохо обусловленных систем. В отличие от параметра
tolв некоторых итерационных алгоритмах оптимизации, этот параметр не управляет толерантностью оптимизации. - copy_Xbool, по умолчанию=True
-
Если True, X будет скопирован; иначе, он может быть перезаписан.
- positivebool, по умолчанию=False
-
Ограничить коэффициенты значениями >= 0. Имейте в виду, что вы можете захотеть удалить fit_intercept, которое по умолчанию установлено в True. При ограничении положительных значений коэффициенты модели не сходятся к решению обычных наименьших квадратов для малых значений alpha. Только коэффициенты до наименьшего значения alpha (
alphas_[alphas_ > 0.].min()при fit_path=True), достигнутые алгоритмом пошагового Lars-Lasso, обычно согласуются с решением оценок Lasso методом координатного спуска. Вследствие этого использование LassoLarsIC имеет смысл только для задач, где ожидается и/или достигается разрешенное решение. - noise_variancefloat, по умолчанию=None
-
Оценённая дисперсия шума данных. Если
None, несмещённая оценка вычисляется с помощью модели OLS. Однако это возможно только в том случае, еслиn_samples > n_features + fit_intercept.Добавлен в версии 1.1.
- Атрибуты:
-
- coef_массив-подобный размерностью (n_features,)
-
вектор параметров (w в формуле)
- intercept_float
-
независимый член в функции решения.
- alpha_float
-
параметр alpha, выбранный по критерию информации.
- alphas_массив-подобный размерностью (n_alphas + 1,) или список таких массивов
-
Максимум ковариаций (по абсолютной величине) на каждой итерации.
n_alphasможет бытьmax_iter,n_featuresили числом узлов в пути сalpha >= alpha_min, что из них меньше. Если это список, его длина будетn_targets. - n_iter_int
-
количество итераций, выполненных lars_path для поиска сетки alphas.
- criterion_массив-подобный размерностью (n_alphas,)
-
Значение критерия информации (‘aic’, ‘bic’) по всем значениям alpha. Выбирается alpha, у которого наименьшее значение критерия информации, как указано в [1].
- noise_variance_float
-
Оценённая дисперсия шума из данных, используемых для вычисления критерия.
Добавлен в версии 1.1.
- n_features_in_int
-
Число признаков, увиденных во время fit.
Добавлен в версии 0.24.
-
feature_names_in_массив размерностью (
n_features_in_,) -
Имена признаков, увиденные во время fit. Определены только тогда, когда
Xимеет имена признаков, все из которых являются строками.Добавлен в версии 1.0.
См. также
lars_path-
Вычислить регрессию наименьших углов или путь Лассо с помощью алгоритма LARS.
lasso_path-
Вычислить путь Лассо с помощью координатного спуска.
Lasso-
Линейная модель, обученная с L1-приоритетом в качестве регуляризатора (известная как Лассо).
LassoCV-
Линейная модель Лассо с итеративным подбором по пути регуляризации.
LassoLars-
Модель Лассо, обученная с помощью регрессии наименьших углов (Lars).
LassoLarsCV-
Перекрёстная проверка Лассо, используя алгоритм LARS.
sklearn.decomposition.sparse_encode-
Разложение с разреженной кодировкой.
Примечания
Количество степеней свободы вычисляется как в [1].
Более подробную информацию о математической формулировке критериев AIC и BIC см. в Руководстве пользователя.
Ссылки
Примеры
>>> from sklearn import linear_model >>> reg = linear_model.LassoLarsIC(criterion='bic') >>> X = [[-2, 2], [-1, 1], [0, 0], [1, 1], [2, 2]] >>> y = [-2.2222, -1.1111, 0, -1.1111, -2.2222] >>> reg.fit(X, y) LassoLarsIC(criterion='bic') >>> print(reg.coef_) [ 0. -1.11...]
- fit(X, y, copy_X=None)[source]
-
Обучить модель, используя X, y в качестве обучающих данных.
- Параметры:
-
- Xмассив-подобный размерностью (n_samples, n_features)
-
Обучающие данные.
- yмассив-подобный размерностью (n_samples,)
-
Целевые значения. Будет приведено к типу данных X, если необходимо.
- copy_Xbool, по умолчанию=None
-
Если предоставлено, этот параметр переопределит выбор copy_X, сделанный при создании экземпляра. Если
True, X будет скопирован; иначе, он может быть перезаписан.
- Возвращает:
-
- selfобъект
-
Возвращает экземпляр self.
- get_metadata_routing()[source]
-
Получить маршрутизацию метаданных этого объекта.
См. Руководство пользователя для получения информации о том, как работает механизм маршрутизации.
- Возвращает:
-
- маршрутизацияMetadataRequest
-
Объект
MetadataRequest, содержащий информацию о маршрутизации.
- get_params(deep=True)[source]
-
Получить параметры этого оценщика.
- Параметры:
-
- deepbool, по умолчанию=True
-
Если True, возвращает параметры этого оценщика и вложенных под-объектов, являющихся оценщиками.
- Возвращает:
-
- paramsdict
-
Имена параметров и их значения.
- predict(X)[source]
-
Предсказание с помощью линейной модели.
- Параметры:
-
- Xмассив-подобный объект или разреженная матрица, форма (n_samples, n_features)
-
Образцы.
- Возвращает:
-
- Cмассив, форма (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
-
Веса образцов.
- Возвращает:
-
- оценкаfloat
-
\(R^2\) значения
self.predict(X)по отношению кy.
Примечания
Значение \(R^2\), используемое при вызове
scoreдля регрессора, используетmultioutput='uniform_average'с версии 0.23 для согласования со значением по умолчаниюr2_score. Это влияет наscoreметод всех многовыходных регрессоров (за исключениемMultiOutputRegressor).
- set_fit_request(*, copy_X:bool|None|str='$UNCHANGED$') LassoLarsIC[source]
-
Запрос метаданных, передаваемых методу
fit.Обратите внимание, что этот метод актуален только если
enable_metadata_routing=True(см.sklearn.set_config). См. Руководство пользователя для получения информации о работе механизма маршрутизации.Варианты для каждого параметра:
-
True: метаданные запрашиваются и передаютсяfitпри наличии. Запрос игнорируется, если метаданные отсутствуют. -
False: метаданные не запрашиваются, и мета-оценщик не передаст ихfit. -
None: метаданные не запрашиваются, и мета-оценщик выдаст ошибку, если пользователь предоставит их. -
str: метаданные должны передаваться мета-оценщику с этим алиасом вместо исходного имени.
По умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет существующий запрос. Это позволяет изменить запрос для некоторых параметров, а не для других.Добавлен в версии 1.3.
Примечание
Этот метод актуален только если этот оценщик используется как под-оценщик мета-оценщика, например, внутри
Pipeline. В противном случае он не оказывает никакого влияния.- Параметры:
-
- copy_Xстрока, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
copy_Xвfit.
- Возвращает:
-
- selfобъект
-
Обновленный объект.
-
- set_params(**params)[source]
-
Установить параметры этого оценщика.
Метод работает как с простыми оценщиками, так и с вложенными объектами (такими как
Pipeline). Последние имеют параметры в формате<component>__<parameter>, чтобы можно было обновить каждый компонент вложенного объекта.- Параметры:
-
- **paramsdict
-
Параметры оценщика.
- Возвращает:
-
- selfэкземпляр оценщика
-
Экземпляр оценщика.
- set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') LassoLarsIC[source]
-
Запрос метаданных, передаваемых методу
score.Обратите внимание, что этот метод актуален только если
enable_metadata_routing=True(см.sklearn.set_config). Подробности о механизме маршрутизации см. в Руководстве пользователя.Доступные варианты для каждого параметра:
-
True: метаданные запрашиваются и передаются вscoreпри их наличии. Запрос игнорируется, если метаданные отсутствуют. -
False: метаданные не запрашиваются, и мета-эстиматор не передаст ихscore. -
None: метаданные не запрашиваются, и мета-эстиматор выдаст ошибку, если пользователь их предоставит. -
str: метаданные должны передаваться мета-эстиматору с этим псевдонимом вместо оригинального названия.
По умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняется существующий запрос. Это позволяет изменять запрос для одних параметров, оставляя другие неизменными.Добавлена в версии 1.3.
Примечание
Этот метод актуален только если этот эстиматор используется в качестве под-эстиматора мета-эстиматора, например, внутри
Pipeline. В противном случае он не оказывает влияния.- Parameters:
-
- sample_weightstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightвscore.
- Returns:
-
- selfobject
-
Объект с обновлёнными настройками.
-
Примеры из галереи
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.linear_model.LassoLarsIC.html