sklearn.linear_model.enet_path(X, y, *, l1_ratio=0.5, eps=0.001, n_alphas=100, alphas=None, precompute='auto', Xy=None, copy_X=True, coef_init=None, verbose=False, return_n_iter=False, positive=False, check_input=True, **params)[source]

Calculer le chemin du filet élastique avec la descente de coordonnées.

La fonction d'optimisation du filet élastique varie pour les mono et multi-sorties.

Pour les tâches mono-sorties, elle est :

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

Pour les tâches à sorties multiples, il s'agit de :

(1/(2* n_samples))*||Y - XW||^Fro_2
+ alpha * l1_ratio *||W||_21
+0.5* alpha *(1- l1_ratio)*||W||_Fro^2

Où :

||W||_21 = sum_i sqrt{sum_j w_{ij}^2}

c'est-à-dire la somme des normes de chaque ligne.

Lire la suite dans le Guide de l'utilisateur.

Paramètres
X{array-like, sparse matrix} of shape (n_samples, n_features)

Données d'entraînement. Passez directement en tant que données contiguës Fortran pour éviter la duplication inutile de la mémoire. Si y est une mono-sortie, alors X peut être clairsemé.

y{array-like, sparse matrix} of shape (n_samples,) or (n_samples, n_outputs)

Valeurs cibles.

l1_ratiofloat, default=0.5

Nombre entre 0 et 1 transmis au filet élastique (mise à l'échelle entre les pénalités l1 et l2). l1_ratio=1 correspond au Lasso.

epsfloat, default=1e-3

Longueur du chemin. eps=1e-3 signifie que alpha_min / alpha_max = 1e-3.

n_alphasint, default=100

Nombre d'alphas le long du chemin de régularisation.

alphasndarray, default=None

Liste des alphas où calculer les modèles. Si None, les alphas sont définies automatiquement.

precompute‘auto’, bool or array-like of shape (n_features, n_features), default=’auto’

Utilisation ou non d'une matrice de Gram précalculée pour accélérer les calculs. Si défini à 'auto' laissez-nous décider. La matrice de Gram peut également être passée en argument.

Xyarray-like of shape (n_features,) or (n_features, n_outputs), default=None

Xy = np.dot(X.T, y) qui peut être précalculé. Il n'est utile que lorsque la matrice de Gram est précalculée.

copy_Xbool, default=True

Si True, X sera copiéed; sinon, il pourra être écrasé.

coef_initndarray of shape (n_features, ), default=None

Les valeurs initiales des coefficients.

verbosebool or int, default=False

Le degré de verbosité.

return_n_iterbool, default=False

Le retour ou non du nombre d'itérations.

positivebool, default=False

Si elle a la valeur True, force les coefficients à être positifs. (Seulement autorisé lorsque y.ndim == 1).

check_inputbool, default=True

Si défini à False, les contrôles de validation d'entrée sont ignorés (y compris la matrice de Gram lorsqu'elle est fournie). Il est supposé qu'ils sont gérés par l'appelant.

**paramskwargs

Arguments de mots-clés passés au solveur de descente de coordonnées.

Retourne
alphasndarray of shape (n_alphas,)

Les alphas le long du chemin où les modèles sont calculés.

coefsndarray of shape (n_features, n_alphas) or (n_outputs, n_features, n_alphas)

Les coefficients le long du chemin.

dual_gapsndarray of shape (n_alphas,)

Les écarts doubles à la fin de l'optimisation pour chaque alpha.

n_iterslist of int

Le nombre d'itérations prises par l'optimiseur de descente de coordonnées pour atteindre la tolérance spécifiée pour chaque alpha. (Est retourné lorsque return_n_iter est réglé sur True).

Voir aussi

MultiTaskElasticNet
MultiTaskElasticNetCV
ElasticNet
ElasticNetCV

Notes

Pour un exemple, voir examples/linear_model/plot_lasso_coordinate_descent_path.py.

Exemples d'utilisation sklearn.linear_model.enet_path

Lasso and Elastic Net

Lasso et Elastic Net