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)[исходный код]
-
Модель Lasso, обученная с помощью Lars с использованием BIC или AIC для выбора модели.
Целевая функция оптимизации для Lasso:
(1 / (2 * n_samples)) * ||y - Xw||^2_2 + alpha * ||w||_1
AIC — это информационный критерий Акаике [2], а BIC — байесовский информационный критерий [3]. Эти критерии полезны для выбора значения параметра регуляризации, поскольку позволяют найти компромисс между качеством подгонки и сложностью модели. Хорошая модель должна хорошо объяснять данные и при этом быть простой.
Подробнее см. в Руководстве пользователя.
- Параметры:
-
- criterion{‘aic’, ‘bic’}, default=’aic’
-
Тип используемого критерия.
- fit_interceptbool, default=True
-
Вычислять ли свободный член для этой модели. Если задано значение false, свободный член не будет использоваться в вычислениях (то есть предполагается, что данные центрированы).
- verbosebool or int, default=False
-
Задает уровень подробности вывода.
- precomputebool, ‘auto’ or array-like, default=’auto’
-
Использовать ли предварительно вычисленную матрицу Грама для ускорения вычислений. Если задано значение
'auto', решение будет принято автоматически. Матрицу Грама также можно передать в качестве аргумента. - max_iterint, default=500
-
Максимальное число выполняемых итераций. Можно использовать для досрочной остановки.
- epsfloat, default=np.finfo(float).eps
-
Регуляризация с машинной точностью при вычислении диагональных множителей Холецкого. Увеличьте это значение для систем с очень плохой обусловленностью. В отличие от параметра
tolв некоторых алгоритмах на основе итерационной оптимизации, этот параметр не управляет точностью оптимизации. - copy_Xbool, default=True
-
Если True, X будет скопирован; иначе он может быть перезаписан.
- positivebool, default=False
-
Ограничить коэффициенты значениями >= 0. Обратите внимание, что может потребоваться отключить fit_intercept, который по умолчанию имеет значение True. При ограничении положительности коэффициенты модели не сходятся к решению метода наименьших квадратов при малых значениях alpha. Только коэффициенты вплоть до наименьшего значения alpha (
alphas_[alphas_ > 0.].min()при fit_path=True), достигнутого пошаговым алгоритмом Lars-Lasso, обычно согласуются с решением оценщика Lasso на основе покоординатного спуска. Поэтому использование LassoLarsIC имеет смысл только для задач, в которых ожидается и/или достигается разреженное решение. - noise_variancefloat, default=None
-
Оцененная дисперсия шума данных. Если
None, несмещенная оценка вычисляется с помощью модели OLS. Однако это возможно только в том случае, еслиn_samples > n_features + fit_intercept.Добавлено в версии 1.1.
- Атрибуты:
-
- coef_array-like of shape (n_features,)
-
вектор параметров (w в формуле модели)
- intercept_float
-
свободный член функции принятия решения.
- alpha_float
-
параметр alpha, выбранный информационным критерием
- alphas_array-like of shape (n_alphas + 1,) or list of such arrays
-
Максимум ковариаций (по абсолютному значению) на каждой итерации.
n_alphas— это либоmax_iter, либоn_features, либо число узлов на траектории сalpha >= alpha_min— в зависимости от того, что меньше. Если это список, его длина будет равнаn_targets. - n_iter_int
-
число итераций, выполненных lars_path для поиска сетки значений alpha.
- criterion_array-like of shape (n_alphas,)
-
Значения информационных критериев (‘aic’, ‘bic’) для всех значений alpha. Выбирается alpha с наименьшим значением информационного критерия, как указано в [1].
- noise_variance_float
-
Оцененная по данным дисперсия шума, используемая для вычисления критерия.
Добавлено в версии 1.1.
- n_features_in_int
-
Число признаков, обнаруженных при вызове fit.
Добавлено в версии 0.24.
-
feature_names_in_ndarray of shape (
n_features_in_,) -
Названия признаков, обнаруженные при вызове fit. Определяется только в том случае, если
Xсодержит названия признаков, представленные строками.Добавлено в версии 1.0.
См. также
lars_path-
Вычисление траектории регрессии по методу наименьшего угла или Lasso с помощью алгоритма LARS.
lasso_path-
Вычисление траектории Lasso с помощью покоординатного спуска.
Lasso-
Линейная модель с регуляризатором на основе априорного распределения L1 (также известная как Lasso).
LassoCV-
Линейная модель Lasso с итеративным обучением вдоль траектории регуляризации.
LassoLars-
Модель Lasso, обученная методом регрессии по методу наименьшего угла, также известным как Lars.
LassoLarsCV-
Lasso с перекрестной проверкой, использующий алгоритм 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]
Подробный пример использования этого класса см. в разделе Выбор модели Lasso с помощью информационных критериев.
- fit(X, y, copy_X=None)[исходный код]
-
Обучение модели с использованием X и y в качестве обучающих данных.
- Параметры:
-
- Xarray-like of shape (n_samples, n_features)
-
Обучающие данные.
- yarray-like of shape (n_samples,)
-
Целевые значения. При необходимости тип данных будет приведен к типу X.
- copy_Xbool, default=None
-
Если задан, этот параметр переопределяет значение copy_X, выбранное при создании экземпляра. Если
True, X будет скопирован; иначе он может быть перезаписан.
- Возвращает:
-
- selfobject
-
Возвращает экземпляр self.
- get_metadata_routing()[исходный код]
-
Получение сведений о маршрутизации метаданных этого объекта.
Описание работы механизма маршрутизации см. в Руководстве пользователя.
- Возвращает:
-
- routingMetadataRequest
-
MetadataRequest, содержащий сведения о маршрутизации.
- get_params(deep=True)[исходный код]
-
Получение параметров этого оценщика.
- Параметры:
-
- deepbool, default=True
-
Если True, будут возвращены параметры этого оценщика и содержащихся в нем подобъектов, которые являются оценщиками.
- Возвращает:
-
- paramsdict
-
Имена параметров, сопоставленные с их значениями.
- predict(X)[исходный код]
-
Выполнение предсказания с помощью линейной модели.
- Параметры:
-
- Xarray-like or sparse matrix of shape (n_samples, n_features)
-
Образцы.
- Возвращает:
-
- Cndarray of shape (n_samples,) or (n_samples, n_outputs)
-
Предсказанные значения.
- score(X, y, sample_weight=None)[исходный код]
-
Возврат коэффициента детерминации на тестовых данных.
Коэффициент детерминации \(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.- Параметры:
-
- Xarray-like of shape (n_samples, n_features)
-
Тестовые образцы. Для некоторых оценщиков это может быть предварительно вычисленная матрица ядра или список обобщенных объектов формы
(n_samples, n_samples_fitted), гдеn_samples_fitted— число образцов, использованных при обучении оценщика. - yarray-like of shape (n_samples,) or (n_samples, n_outputs)
-
Истинные значения для
X. - sample_weightarray-like of shape (n_samples,), default=None
-
Веса образцов.
- Возвращает:
-
- scorefloat
-
\(R^2\) для
self.predict(X)относительноy.
Примечания
При вызове
scoreдля регрессора оценка \(R^2\) начиная с версии 0.23 используетmultioutput='uniform_average', чтобы соответствовать значению по умолчаниюr2_score. Это влияет на методscoreвсех регрессоров с несколькими выходами (за исключениемMultiOutputRegressor).
- set_fit_request(*, copy_X:bool|None|str='$UNCHANGED$') LassoLarsIC[исходный код]
-
Настройка запроса на передачу метаданных методу
fit.Обратите внимание, что этот метод имеет значение только тогда, когда данный оценщик используется как подоценщик в составе метаоценщика и включена маршрутизация метаданных с помощью
enable_metadata_routing=True(см.sklearn.set_config). Описание работы механизма маршрутизации см. в Руководстве пользователя.Для каждого параметра доступны следующие варианты:
-
True: запрашиваются метаданные, и при наличии передаются вfit. Если метаданные не предоставлены, запрос игнорируется. -
False: метаданные не запрашиваются, и метаоценщик не будет передавать их вfit. -
None: метаданные не запрашиваются, и метаоценщик вызовет ошибку, если пользователь их предоставит. -
str: метаданные следует передавать метаоценщику под указанным псевдонимом вместо исходного имени.
Значение по умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет текущий запрос. Это позволяет изменить запрос для одних параметров, не меняя его для остальных.Добавлено в версии 1.3.
- Параметры:
-
- copy_Xstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
copy_Xвfit.
- Возвращает:
-
- selfobject
-
Обновленный объект.
-
- set_params(**params)[исходный код]
-
Задание параметров этого оценщика.
Метод работает как с простыми оценщиками, так и с вложенными объектами (например,
Pipeline). Параметры последних имеют вид<component>__<parameter>, что позволяет обновлять каждый компонент вложенного объекта.- Параметры:
-
- **paramsdict
-
Параметры оценщика.
- Возвращает:
-
- selfestimator instance
-
Экземпляр оценщика.
- set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') LassoLarsIC[исходный код]
-
Настройка запроса на передачу метаданных методу
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, or None, default=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightвscore.
- Возвращает:
-
- selfobject
-
Обновленный объект.
-
Примеры из галереи
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.linear_model.LassoLarsIC.html