Régression de la crête à Sklearn

Régression de la crête à Sklearn
La régression de la crête est une technique d'apprentissage automatique pour régulariser les données utilisées pour effectuer la régression linéaire. C'est une optimisation de la régression linéaire simple. Dans cet article, nous allons discuter de la régression de Ride Ridge, de ses avantages, des problèmes qu'il a résolus et de sa mise en œuvre dans Sklearn.

Qu'est-ce que la régression de la crête?

Afin d'augmenter la précision de la prédiction, la technique statistique connue sous le nom de régression de la crête réduit l'ampleur des estimations des paramètres. Cela fonctionne particulièrement bien si votre ensemble de données contient des colonnes corrélées que vous essayez d'utiliser comme entrées (variables indépendantes) dans des modèles de régression, mais aucun de vos modèles n'a produit de résultats très précis. En d'autres termes, la régression de la crête est une technique de réglage modèle qui est utilisée pour toute analyse de données multicollinéaires. Les données sont soumises à une régularisation en L2 en utilisant cette méthode.

La fonction de coût de la régression de la crête est:

Min (|| y - x (theta) || ^ 2 + λ || theta || ^ 2)

Qu'est-ce que la multicolinéarité?

Le concept de multicolinéarité est basé sur la recherche statistique. Juste au moment où vos variables indépendantes ont un degré de corrélation significatif. La colinéarité n'affecte pas directement la variable de réponse; il concerne plutôt les interactions entre les variables ou les caractéristiques prédictives. Les estimations des coefficients de régression peuvent être inexactes en raison de la multicolinéarité. Il peut potentiellement augmenter les erreurs standard du coefficient de régression et diminuer l'efficacité de tout test t. La multicolinéarité peut fournir des résultats et des valeurs de p trompeurs, augmentant la redondance du modèle et abaissant l'efficacité et la fiabilité de la prévisibilité.

Avantages de la régression de la crête

  • Il protège contre le modèle devenant un sur-tarif.
  • Il ne nécessite pas d'estimateurs objectifs.
  • Il existe une petite quantité de biais, permettant aux estimations d'être une approximation assez précise du nombre de populations authentiques.
  • Lorsqu'il y a une multicolinéarité, l'estimateur de la crête est très utile pour améliorer l'estimation des moindres carrés.

Implémentation de la régression de la crête dans Sklearn

L'importation nécessite les bibliothèques suivantes:

de Sklearn.linéaire_model Import Ridge
Importer Numpy comme NP

Créez l'ensemble de données à l'aide de la commande suivante:

n_sample, n_features = 20, 4
données = np.aléatoire.RandomState (0)
y = données.randn (n_sample)
X = données.randn (n_sample, n_features)
Imprimer («Les fonctionnalités sont», x)
imprimer («les étiquettes sont», y)

Sortir:

Les fonctionnalités sont [[-2.55298982 0.6536186 0.8644362 -0.74216502]
[2.26975462 -1.45436567 0.04575852 -0.18718385]
[ 1.53277921 1.46935877 0.15494743 0.37816252]
[-0.88778575 -1.98079647 -0.34791215 0.15634897]
[ 1.23029068 1.20237985 -0.38732682 -0.30230275]
[-1.04855297 -1.42001794 -1.70627019 1.9507754]
[-0.50965218 -0.4380743 -1.25279536 0.77749036]
[-1.61389785 -0.21274028 -0.89546656 0.3869025]
[-0.51080514 -1.18063218 -0.02818223 0.42833187]
[0.06651722 0.3024719 -0.63432209 -0.36274117]
[-0.67246045 -0.35955316 -0.81314628 -1.7262826]
[0.17742614 -0.40178094 -1.63019835 0.46278226]
[-0.90729836 0.0519454 0.72909056 0.12898291]
[ 1.13940068 -1.23482582 0.40234164 -0.68481009]
[-0.87079715 -0.57884966 -0.31155253 0.05616534]
[-1.16514984 0.90082649 0.46566244 -1.53624369]
[ 1.48825219 1.89588918 1.17877957 -0.17992484]
[-1.07075262 1.05445173 -0.40317695 1.22244507]
[0.20827498 0.97663904 0.3563664 0.70657317]
[0.01050002 1.78587049 0.12691209 0.40198936]]
Les étiquettes sont [1.76405235 0.40015721 0.97873798 2.2408932 1.86755799 -0.97727788
0.95008842 -0.15135721 -0.10321885 0.4105985 0.14404357 1.45427351
0.76103773 0.12167502 0.44386323 0.33367433 1.49407907 -0.20515826
0.3130677 -0.85409574]

Création et ajustement du modèle:

modèle = crête (alpha = 1.0)
modèle.ajustement (x, y)

Conclusion

Nous avons discuté du modèle de régression de la crête dans l'apprentissage automatique qui est utilisé pour effectuer la régularisation L2 sur les données pour empêcher le sur-ajustement. C'est une version avancée d'une simple régression linéaire. Nous avons également discuté de sa mise en œuvre en utilisant Skaran.