Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Surapprentissage et Régularisation | Régression Logistique
Classification avec Python

Surapprentissage et Régularisation

Glissez pour afficher le menu

Comme démontré dans le chapitre précédent, en utilisant PolynomialFeatures, il est possible de créer une frontière de décision complexe. Les caractéristiques polynomiales de degré deux peuvent même produire les frontières illustrées dans l'image ci-dessous :

PolyFeaturesBoundaries

Et il ne s'agit que d'un degré deux. Un degré supérieur peut générer des formes encore plus complexes. Cependant, cela pose un problème. La frontière de décision construite par la régression logistique peut devenir trop compliquée, ce qui entraîne un surapprentissage du modèle.

Le surapprentissage se produit lorsque le modèle, au lieu d'apprendre des tendances générales dans les données, construit une frontière de décision très complexe pour gérer chaque instance d'entraînement. Pourtant, il n'obtient pas de bons résultats sur des données qu'il n'a jamais vues, alors que la capacité à bien fonctionner sur des données inédites est une tâche essentielle pour un modèle d'apprentissage automatique.

surapprentissage lr

La régularisation permet de résoudre le problème de surapprentissage. En effet, la régularisation l2 est utilisée par défaut dans la classe LogisticRegression. Cependant, il est nécessaire de configurer l'intensité de la régularisation appliquée au modèle. Cela est contrôlé par le paramètre C :

carousel-imgcarousel-imgcarousel-img
  • valeur de C plus élevée : régularisation plus faible, surapprentissage accru ;
  • valeur de C plus faible : régularisation plus forte, moins de surapprentissage (mais risque de 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 les choisir à l'aide de GridSearchCV.

Note
Remarque

Lors de l'utilisation de la régression logistique avec régularisation, il est essentiel de mettre à l'échelle vos données. La régularisation pénalise les grands coefficients, et sans mise à l'échelle, les variables avec de grandes valeurs peuvent fausser les résultats. En réalité, la mise à l'échelle est presque toujours nécessaire – même lorsque la régularisation n'est pas utilisée.

La classe LogisticRegression inclut la régularisation par défaut, il faut donc soit supprimer la régularisation (en définissant penalty=None), soit mettre les données à l'échelle (par exemple, en utilisant StandardScaler).

Note
Remarque

Si vous utilisez à la fois PolynomialFeatures et StandardScaler, assurez-vous d'appliquer StandardScaler après avoir généré les caractéristiques polynomiales. Effectuer la mise à l'échelle avant l'expansion polynomiale peut fausser les caractéristiques résultantes, car des opérations telles que l'élévation au carré ou la multiplication de valeurs déjà standardisées peuvent conduire à des distributions non naturelles.

1. Choisissez l'affirmation INCORRECTE.

2. Quel est l'ordre correct pour prétraiter les données

question mark

Choisissez l'affirmation INCORRECTE.

Sélectionnez la réponse correcte

question mark

Quel est l'ordre correct pour prétraiter les données

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Section 2. Chapitre 5
some-alt