Spec-Zone.ru › scikit-learn

LassoLarsCV

classsklearn.linear_model.LassoLarsCV(*, fit_intercept=True, verbose=False, max_iter=500, precompute='auto', cv=None, max_n_alphas=1000, n_jobs=None, eps=np.float64(2.220446049250313e-16), copy_X=True, positive=False)[source]

Перекрёстно-валидируемый Lasso, использующий алгоритм LARS.

См. запись в глоссарии для оценщика перекрёстной проверки.

Целевая функция оптимизации для Lasso:

(1 / (2 * n_samples)) * ||y - Xw||^2_2 + alpha * ||w||_1

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

Параметры:
fit_interceptbool, default=True

Вычислять ли свободный член для этой модели. Если установлено в false, свободный член не будет использоваться в вычислениях (т.е. ожидается, что данные будут центрированы).

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

Устанавливает уровень подробности.

max_iterint, default=500

Максимальное количество итераций.

precomputebool или ‘auto’ , default=’auto’

Использовать ли предварительно вычисленную матрицу Грама для ускорения вычислений. Если установлено в 'auto' позвольте нам решить. Матрица Грама не может быть передана в качестве аргумента, так как мы будем использовать только подмножества X.

cvint, генератор перекрёстной проверки или итерируемый объект, по умолчанию=None

Определяет стратегию разделения для перекрёстной проверки. Возможные входные данные для cv:

  • None, чтобы использовать стандартную 5-кратную перекрёстную проверку,
  • целое число, чтобы указать количество фолдов.
  • разделитель CV,
  • Итерируемый объект, возвращающий (train, test) разделения в виде массивов индексов.

Для целочисленных/None входных данных, KFold используется.

См. Руководство пользователя для различных стратегий перекрёстной проверки, которые могут быть здесь использованы.

Изменено в версии 0.22: cv значение по умолчанию, если None, изменено с 3-кратной на 5-кратную перекрёстную проверку.

max_n_alphasint, default=1000

Максимальное количество точек на пути, используемых для вычисления остатков в перекрёстной проверке.

n_jobsint или None, default=None

Количество процессоров, используемых во время перекрёстной проверки. None означает 1, за исключением контекста joblib.parallel_backend. -1 означает использование всех процессоров. См. Глоссарий для получения дополнительной информации.

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 спуска по координатам. Вследствие этого использование LassoLarsCV имеет смысл только для задач, где ожидается и/или достигается разреженное решение.

Атрибуты:
coef_массив-подобный формы (n_features,)

вектор параметров (w в формулировке)

intercept_float

свободный член в функции принятия решения.

coef_path_массив-подобный формы (n_features, n_alphas)

меняющиеся значения коэффициентов вдоль пути

alpha_float

оценённый параметр регуляризации alpha

alphas_массив-подобный формы (n_alphas,)

различные значения alpha вдоль пути

cv_alphas_массив-подобный формы (n_cv_alphas,)

все значения alpha вдоль пути для различных фолдов

mse_path_массив-подобный формы (n_folds, n_cv_alphas)

средняя квадратичная ошибка на оставленных извне для каждого фолда вдоль пути (значения alpha заданы cv_alphas)

n_iter_массив-подобный или int

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

active_список int

Индексы активных переменных в конце пути.

n_features_in_int

Количество признаков, увиденных во время fit.

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

feature_names_in_массив формы (n_features_in_,)

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

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

См. также

lars_path

Вычислить регрессию с наименьшим углом или путь Lasso с помощью алгоритма LARS.

lasso_path

Вычислить путь Lasso с помощью спуска по координатам.

Lasso

Линейная модель, обученная с L1-приоритетом в качестве регуляризатора (также известная как Lasso).

LassoCV

Линейная модель Lasso с итеративным обучением вдоль пути регуляризации.

LassoLars

Модель Lasso, обученная с помощью регрессии наименьшего угла (Lars).

LassoLarsIC

Модель Lasso, обученная с помощью Lars, используя BIC или AIC для выбора модели.

sklearn.decomposition.sparse_encode

Разложение с разреженным кодированием.

Примечания

Объект решает ту же проблему, что и LassoCV объект. Однако в отличие от LassoCV, он сам находит соответствующие значения alpha. В целом, из-за этого свойства он будет более стабильным. Однако он более подвержен влиянию сильно мультиколлинеарных наборов данных.

Он более эффективен, чем LassoCV, если выбрано только небольшое количество признаков по сравнению с общим количеством, например, если имеется очень мало выборок по сравнению с количеством признаков.

В fit, после нахождения наилучшего параметра alpha с помощью перекрёстной проверки, модель подгоняется ещё раз, используя весь обучающий набор.

Примеры

>>> from sklearn.linear_model import LassoLarsCV
>>> from sklearn.datasets import make_regression
>>> X, y = make_regression(noise=4.0, random_state=0)
>>> reg = LassoLarsCV(cv=5).fit(X, y)
>>> reg.score(X, y)
0.9993...
>>> reg.alpha_
np.float64(0.3972...)
>>> reg.predict(X[:1,])
array([-78.4831...])
fit(X, y, **params)[source]

Обучение модели с использованием X, y в качестве обучающих данных.

Параметры:
Xмассив-подобный объект формы (n_samples, n_features)

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

yмассив-подобный объект формы (n_samples,)

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

**paramsсловарь, по умолчанию None

Параметры, которые необходимо передать разделителю CV.

Добавлена в версии 1.4: Доступно только если enable_metadata_routing=True, которое можно установить с помощью sklearn.set_config(enable_metadata_routing=True). Более подробную информацию см. в Руководстве пользователя по маршрутизации метаданных.

Возвращаемое значение:
selfобъект

Возвращает экземпляр self.

get_metadata_routing()[source]

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

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

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

Возвращаемое значение:
routingMetadataRouter

Объект MetadataRouter, содержащий информацию о маршрутизации.

get_params(deep=True)[source]

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

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

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

Возвращаемое значение:
paramsсловарь

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

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

Веса образцов.

Возвращаемое значение:
scoreчисло с плавающей запятой

\(R^2\) значения self.predict(X) по отношению к y.

Примечания

Значение \(R^2\), используемое при вызове score на регрессоре, использует multioutput='uniform_average' с версии 0.23 для сохранения согласованности с значением по умолчанию r2_score. Это влияет на метод score всех регрессоров с несколькими выходами (кроме MultiOutputRegressor).

set_fit_request(*, Xy:bool|None|str='$UNCHANGED$') → LassoLarsCV[source]

Запрос метаданных, передаваемых методу fit.

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

Варианты для каждого параметра:

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

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

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

Примечание

Этот метод актуален только если данный оценщик используется в качестве под-оценщика мета-оценщика, например, внутри Pipeline. В противном случае он не оказывает влияния.

Параметры:
Xystr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED

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

Возвращаемое значение:
selfobject

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

set_params(**params)[source]

Устанавливает параметры этого оценщика.

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

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

Параметры оценщика.

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

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

set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') → LassoLarsCV[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.

Возвращаемое значение:
selfobject

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

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

Выбор модели Lasso: AIC-BIC / перекрёстная проверка

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

Spec-Zone.ru

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