Spec-Zone.ru › scikit-learn

графический_лассо

sklearn.covariance.graphical_lasso(emp_cov, alpha, *, mode='cd', tol=0.0001, enet_tol=0.0001, max_iter=100, verbose=False, return_costs=False, eps=np.float64(2.220446049250313e-16), return_n_iter=False)[source]

Оценка ковариационной матрицы с L1-регуляризацией.

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

Изменено в версии v0.20: graph_lasso переименовано в graphical_lasso

Параметры:
emp_covмассив типа array-like формы (n_features, n_features)

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

alphafloat

Параметр регуляризации: чем больше alpha, тем больше регуляризация, тем разреженнее обратная ковариационная матрица. Диапазон (0, inf].

mode{‘cd’, ‘lars’}, по умолчанию=’cd’

Используемый алгоритм Lasso: метод координатного спуска или LARS. Используйте LARS для очень разреженных подлежащих графов, где p > n. В противном случае предпочтительнее cd, который более численно устойчив.

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

Порог для объявления сходимости: если двойная щель станет меньше этого значения, итерации будут остановлены. Диапазон (0, inf].

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

Порог для алгоритма эластичной сети, используемого для вычисления направления спуска. Этот параметр контролирует точность направления поиска для обновления каждого столбца, а не всей оценки параметра. Используется только для mode=’cd’. Диапазон (0, inf].

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

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

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

Если verbose=True, целевая функция и двойная щель выводятся на каждой итерации.

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

Если return_costs=True, целевая функция и двойная щель на каждой итерации возвращаются.

epsfloat, по умолчанию=eps

Машинная точность регуляризации при вычислении диагональных факторов Холецкого. Увеличьте это значение для очень плохо обусловленных систем. Значение по умолчанию np.finfo(np.float64).eps.

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

Возвращать или нет количество итераций.

Возвращаемые значения:
covariancendarray формы (n_features, n_features)

Оценённая ковариационная матрица.

precisionndarray формы (n_features, n_features)

Оценённая (разреженная) матрица точности.

costsсписок пар (objective, dual_gap)

Список значений целевой функции и двойной щели на каждой итерации. Возвращается только если return_costs=True.

n_iterint

Количество итераций. Возвращается только если return_n_iter имеет значение True.

См. также

GraphicalLasso

Оценка разреженной обратной ковариационной матрицы с использованием l1-регуляризованного эстиматора.

GraphicalLassoCV

Разреженная обратная ковариационная матрица с перекрёстной проверкой для выбора параметра регуляризации l1.

Примечания

Алгоритм, используемый для решения этой задачи, — это алгоритм GLasso из статьи Фридмана 2008 года по биостатике. Это тот же алгоритм, что и в R glasso пакете.

Возможная разница с пакетом R glasso заключается в том, что диагональные коэффициенты не наказываются.

Примеры

>>> import numpy as np
>>> from sklearn.datasets import make_sparse_spd_matrix
>>> from sklearn.covariance import empirical_covariance, graphical_lasso
>>> true_cov = make_sparse_spd_matrix(n_dim=3,random_state=42)
>>> rng = np.random.RandomState(42)
>>> X = rng.multivariate_normal(mean=np.zeros(3), cov=true_cov, size=3)
>>> emp_cov = empirical_covariance(X, assume_centered=True)
>>> emp_cov, _ = graphical_lasso(emp_cov, alpha=0.05)
>>> emp_cov
array([[ 1.68...,  0.21..., -0.20...],
       [ 0.21...,  0.22..., -0.08...],
       [-0.20..., -0.08...,  0.23...]])

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

Spec-Zone.ru

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