ARDРегрессия
- классsklearn.linear_model.ARDRegression(*, max_iter=300, tol=0.001, alpha_1=1e-06, alpha_2=1e-06, lambda_1=1e-06, lambda_2=1e-06, compute_score=False, threshold_lambda=10000.0, fit_intercept=True, copy_X=True, verbose=False)[source]
-
Регрессия с адаптивным распределением априорных знаний.
Настройка весов регрессионной модели с использованием априорного распределения ARD. Предполагается, что веса регрессионной модели распределены по гауссовым распределениям. Также оцениваются параметры lambda (точности распределений весов) и alpha (точность распределения шума). Оценка выполняется итерационными процедурами (Максимизация правдоподобия).
Дополнительную информацию можно найти в Руководстве пользователя.
- Параметры:
-
- max_iterint, по умолчанию=300
-
Максимальное количество итераций.
Изменено в версии 1.3.
- tolfloat, по умолчанию=1e-3
-
Остановка алгоритма, если w сходится.
- alpha_1float, по умолчанию=1e-6
-
Гиперпараметр: параметр формы для гамма-распределения априори параметра alpha.
- alpha_2float, по умолчанию=1e-6
-
Гиперпараметр: обратный параметр масштаба (параметр скорости) для гамма-распределения априори параметра alpha.
- lambda_1float, по умолчанию=1e-6
-
Гиперпараметр: параметр формы для гамма-распределения априори параметра lambda.
- lambda_2float, по умолчанию=1e-6
-
Гиперпараметр: обратный параметр масштаба (параметр скорости) для гамма-распределения априори параметра lambda.
- compute_scorebool, по умолчанию=False
-
Если True, вычислять целевую функцию на каждом шаге модели.
- threshold_lambdafloat, по умолчанию=10 000
-
Порог для удаления (обрезки) весов с высокой точностью из вычислений.
- fit_interceptbool, по умолчанию=True
-
Вычислять ли свободный член для этой модели. Если установлено в false, свободный член не будет использоваться в расчётах (т.е. предполагается, что данные центрированы).
- copy_Xbool, по умолчанию=True
-
Если True, X будет скопирован; иначе, он может быть перезаписан.
- verbosebool, по умолчанию=False
-
Режим отображения подробностей при настройке модели.
- Атрибуты:
-
- coef_массив-подобный формы (n_features,)
-
Коэффициенты регрессионной модели (среднее значение распределения)
- alpha_float
-
оценённая точность шума.
- lambda_массив-подобный формы (n_features,)
-
оценённые точности весов.
- sigma_массив-подобный формы (n_features, n_features)
-
оценённая матрица ковариации весов
- scores_float
-
если вычислено, значение целевой функции (для максимизации)
- n_iter_int
-
Фактическое количество итераций для достижения критерия остановки.
Добавлен в версии 1.3.
- intercept_float
-
Свободный член в функции принятия решения. Установлен в 0,0, если
fit_intercept = False. - X_offset_float
-
Если
fit_intercept=True, сдвиг, вычтенный для центрирования данных до нулевого среднего значения. Иначе установлен в np.zeros(n_features). - X_scale_float
-
Установлен в np.ones(n_features).
- n_features_in_int
-
Количество признаков, увиденных во время fit.
Добавлен в версии 0.24.
-
feature_names_in_ndarray формы (
n_features_in_,) -
Имена признаков, увиденные во время fit. Определены только когда
Xимеют имена признаков, которые все строки.Добавлен в версии 1.0.
См. также
BayesianRidge-
Байесовская регрессия с максимальным правдоподобием.
Примечания
Для примера, см. примеры/linear_model/plot_ard.py.
Литература
D. J. C. MacKay, Байесовское нелинейное моделирование для соревнования по прогнозированию, ASHRAE Transactions, 1994.
R. Salakhutdinov, Лекционные заметки по статистическому машинному обучению, http://www.utstat.toronto.edu/~rsalakhu/sta4273/notes/Lecture2.pdf#page=15 Их beta — это наш
self.alpha_Их alpha — это нашself.lambda_ARD немного отличается от слайда: только измерения/признаки, для которыхself.lambda_ < self.threshold_lambdaсохраняются, а остальные отбрасываются.Примеры
>>> from sklearn import linear_model >>> clf = linear_model.ARDRegression() >>> clf.fit([[0,0], [1, 1], [2, 2]], [0, 1, 2]) ARDRegression() >>> clf.predict([[1, 1]]) array([1.])
- fit(X, y)[source]
-
Настроить модель по заданным обучающим данным и параметрам.
Итерационная процедура максимизации правдоподобия.
- Параметры:
-
- Xмассив-подобный формы (n_samples, n_features)
-
Вектор обучения, где
n_samples— количество образцов, аn_features— количество признаков. - yмассив-подобный формы (n_samples,)
-
Значения целевых переменных (целые числа). Будут преобразованы к типу X, если необходимо.
- Возвращает:
-
- selfобъект
-
Настроенный оценщик.
- get_metadata_routing()[source]
-
Получить маршрутизацию метаданных этого объекта.
Пожалуйста, ознакомьтесь с Руководством пользователя о том, как работает механизм маршрутизации.
- Возвращает:
-
- routingMetadataRequest
-
MetadataRequest, содержащий информацию о маршрутизации.
- get_params(deep=True)[source]
-
Получить параметры этого оценщика.
- Параметры:
-
- deepbool, по умолчанию=True
-
Если True, возвращает параметры этого оценщика и вложенных под-объектов, являющихся оценщиками.
- Возвращает:
-
- paramsdict
-
Имена параметров, сопоставленные со своими значениями.
- predict(X, return_std=False)[source]
-
Предсказание с использованием линейной модели.
Помимо среднего значения предсказательного распределения, также можно вернуть его стандартное отклонение.
- Параметры:
-
- X{array-like, sparse matrix} of shape (n_samples, n_features)
-
Образцы.
- return_stdbool, по умолчанию=False
-
Возвращать ли стандартное отклонение заднего предсказания.
- Возвращает:
-
- y_meanarray-like of shape (n_samples,)
-
Среднее значение предсказательного распределения точек запроса.
- y_stdarray-like of shape (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.- Параметры:
-
- 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.
Примечания
Оценка \(R^2\), используемая при вызове
scoreна регрессоре, используетmultioutput='uniform_average'с версии 0.23 для сохранения согласованности с значениями по умолчаниюr2_score. Это влияет на методscoreвсех многовыходных регрессоров (кромеMultiOutputRegressor).
- set_params(**params)[source]
-
Устанавливает параметры этого оценщика.
Метод работает с простыми оценщиками, а также с вложенными объектами (такими как
Pipeline). Последние имеют параметры вида<component>__<parameter>, чтобы можно было обновить каждый компонент вложенного объекта.- Параметры:
-
- **paramsdict
-
Параметры оценщика.
- Возвращает:
-
- selfestimator instance
-
Экземпляр оценщика.
- set_predict_request(*, return_std:bool|None|str='$UNCHANGED$') ARDRegression[source]
-
Запрос метаданных, переданных в метод
predict.Обратите внимание, что этот метод актуален только если
enable_metadata_routing=True(см.sklearn.set_config). Пожалуйста, см. Руководство пользователя о том, как работает механизм маршрутизации.Варианты для каждого параметра:
-
True: метаданные запрашиваются и передаются вpredict, если предоставлены. Запрос игнорируется, если метаданные не предоставлены. -
False: метаданные не запрашиваются, и мета-оценщик не будет передавать их вpredict. -
None: метаданные не запрашиваются, и мета-оценщик выведет ошибку, если пользователь их предоставит. -
str: метаданные должны быть переданы мета-оценщику с данным псевдонимом вместо исходного имени.
По умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет существующий запрос. Это позволяет изменить запрос для некоторых параметров и не для других.Добавлен в версии 1.3.
Примечание
Этот метод актуален только в том случае, если этот оценщик используется в качестве под-оценщика мета-оценщика, например, внутри
Pipeline. В противном случае он не оказывает никакого влияния.- Параметры:
-
- return_stdstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
return_stdвpredict.
- Возвращает:
-
- selfobject
-
Обновленный объект.
-
- set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') ARDRegression[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.ARDRegression.html