Junior — Middle
Qu'est-ce que le surapprentissage ? Quelles sont les méthodes pour y faire face ?
sobes.tech IA
Réponse de l'IA
Le surapprentissage (overfitting) est une situation où un modèle d'apprentissage automatique s'ajuste trop bien aux données d'entraînement, y compris le bruit et les fluctuations aléatoires, et par conséquent, il généralise mal aux nouvelles données invisibles.
Méthodes pour lutter contre le surapprentissage :
- Régularisation (L1, L2) — ajouter une pénalité pour la complexité du modèle afin d'éviter des poids trop importants.
- Arrêt précoce — arrêter l'apprentissage lorsque la qualité sur le jeu de validation commence à se dégrader.
- Augmentation de la quantité de données — plus de données aident le modèle à mieux généraliser.
- Validation croisée — aide à évaluer la capacité de généralisation du modèle et à ajuster les paramètres.
- Dropout (pour les réseaux neuronaux) — désactiver aléatoirement des neurones pendant l'apprentissage pour éviter la dépendance à des caractéristiques spécifiques.
- Simplification du modèle — réduire le nombre de paramètres ou de couches.
Exemple de régularisation en régression linéaire :
from sklearn.linear_model import Ridge
model = Ridge(alpha=1.0) # Régularisation L2
model.fit(X_train, y_train)