Contenu du cours
Classification Avec Python
Classification Avec Python
Surapprentissage. Régularisation
Comme montré dans le chapitre précédent, en utilisant PolynomialFeatures
, vous pouvez obtenir une frontière de décision assez complexe. Les caractéristiques polynomiales de second degré peuvent même vous donner les frontières dans l'image ci-dessous.
Et ce n'est qu'un degré de deux. Un degré plus élevé peut produire des formes encore plus complexes. Mais il y a un problème avec cela. La frontière de décision construite par la régression logistique peut devenir trop compliquée, entraînant un surapprentissage du modèle.
Surapprentissage est lorsque le modèle, au lieu d'apprendre des motifs généraux dans les données, construit une frontière de décision très complexe pour gérer chaque instance d'entraînement. Cependant, il ne fonctionne pas aussi bien sur les données qu'il n'a jamais vues, alors que bien performer sur des données non vues est une tâche principale du modèle d'apprentissage automatique.
La régularisation aborde le problème du surapprentissage. En fait, la régularisation ℓ2 est utilisée dans la classe LogisticRegression
par défaut. Mais vous devez configurer la force avec laquelle le modèle doit être régularisé. Elle est contrôlée par un paramètre C
.
- plus grand
C
– moins de régularisation, plus de surapprentissage; - plus petit
C
– régularisation plus forte, moins de surapprentissage (mais possiblement sous-apprentissage).



Les valeurs de C
qui donneront un bon modèle dépendent du jeu de données, il est donc préférable de le choisir en utilisant le GridSearchCV
.
Remarque
Si vous construisez une régression logistique avec régularisation, vous devez mettre à l'échelle les données.
La classe LogisticRegression
inclut la régularisation par défaut, vous devez donc soit supprimer la régularisation (en définissant penalty=None
) soit mettre à l'échelle les données (par exemple, en utilisant StandardScaler
).
Remarque
Si vous utilisez à la fois
PolynomialFeatures
etStandardScaler
pour le prétraitement, leStandardScaler
doit être appliqué après lesPolynomialFeatures
. En général, vous souhaitez appliquer leStandardScaler
lorsque toutes les autres modifications des caractéristiques sont terminées.
1. Choisissez l'énoncé INCORRECT.
2. Quel est l'ordre correct pour prétraiter les données.
Merci pour vos commentaires !