En bref: en validant votre modèle. La principale raison de la validation est d'affirmer qu'aucun surajustement ne se produit et d'estimer les performances généralisées du modèle.
Overfit
Voyons d'abord ce qu'est le sur-ajustement. Les modèles sont normalement formés pour s'adapter à un ensemble de données en minimisant certaines fonctions de perte sur un ensemble d'apprentissage. Il existe cependant une limite où la minimisation de cette erreur de formation ne bénéficiera plus aux performances réelles des modèles, mais minimisera uniquement l'erreur sur l'ensemble spécifique de données. Cela signifie essentiellement que le modèle a été trop étroitement ajusté aux points de données spécifiques de l'ensemble d'apprentissage, essayant de modéliser les modèles des données provenant du bruit. Ce concept est appelé overfit . Un exemple de sur-ajustement est affiché ci-dessous où vous voyez l'ensemble d'entraînement en noir et un ensemble plus grand de la population réelle en arrière-plan. Sur cette figure, vous pouvez voir que le modèle bleu est trop étroitement ajusté à l'ensemble d'entraînement, modélisant le bruit sous-jacent.
Afin de juger si un modèle est surajusté ou non, nous devons estimer l'erreur généralisée (ou les performances) que le modèle aura sur les données futures et la comparer à nos performances sur l'ensemble d'entraînement. L'estimation de cette erreur peut se faire de plusieurs manières différentes.
Division de l'ensemble de données
L'approche la plus simple pour estimer les performances généralisées consiste à partitionner l'ensemble de données en trois parties, un ensemble d'apprentissage, un ensemble de validation et un ensemble de tests. L'ensemble d'apprentissage est utilisé pour entraîner le modèle à s'adapter aux données, l'ensemble de validation est utilisé pour mesurer les différences de performances entre les modèles afin de sélectionner le meilleur et l'ensemble de test pour affirmer que le processus de sélection du modèle ne correspond pas au premier deux jeux.
Pour estimer la quantité de sur-équipement, évaluez simplement vos mesures d'intérêt sur l'ensemble de test comme dernière étape et comparez-les à vos performances sur l'ensemble d'entraînement. Vous mentionnez ROC, mais à mon avis, vous devriez également examiner d'autres mesures telles que, par exemple, le score de Brier ou un tracé d'étalonnage pour garantir les performances du modèle. Cela dépend bien sûr de votre problème. Il y a beaucoup de métriques mais c'est d'ailleurs le point ici.
Cette méthode est très courante et respectée mais elle impose une forte demande sur la disponibilité des données. Si votre jeu de données est trop petit, vous perdrez très probablement beaucoup de performances et vos résultats seront biaisés sur la répartition.
Validation croisée
Une façon de contourner le gaspillage d'une grande partie des données pour la validation et le test consiste à utiliser la validation croisée (CV) qui estime les performances généralisées en utilisant les mêmes données que celles utilisées pour former le modèle. L'idée derrière la validation croisée est de diviser l'ensemble de données en un certain nombre de sous-ensembles, puis d'utiliser chacun de ces sous-ensembles comme des ensembles de tests maintenus à tour de rôle tout en utilisant le reste des données pour former le modèle. La moyenne de la métrique sur tous les plis vous donnera une estimation des performances du modèle. Le modèle final est ensuite généralement formé à l'aide de toutes les données.
Cependant, l'estimation du CV n'est pas non biaisée. Mais plus vous utilisez de plis, plus le biais est petit, mais vous obtenez à la place une plus grande variance.
Comme dans la répartition de l'ensemble de données, nous obtenons une estimation des performances du modèle et pour estimer la sur-adaptation, il vous suffit de comparer les métriques de votre CV avec celles acquises en évaluant les métriques de votre ensemble d'entraînement.
Bootstrap
L'idée derrière le bootstrap est similaire à CV, mais au lieu de diviser l'ensemble de données en parties, nous introduisons l'aléatoire dans la formation en dessinant des ensembles de formation à partir de l'ensemble de données à plusieurs reprises avec remplacement et en effectuant la phase de formation complète sur chacun de ces échantillons de bootstrap.
La forme la plus simple de validation de bootstrap évalue simplement les métriques sur les échantillons non trouvés dans l'ensemble de formation (c'est-à-dire ceux laissés de côté) et la moyenne sur toutes les répétitions.
Cette méthode vous donnera une estimation des performances du modèle qui, dans la plupart des cas, sont moins biaisées que le CV. Encore une fois, en le comparant à la performance de votre ensemble d'entraînement et vous obtenez la sur-tenue.
Il existe des moyens d'améliorer la validation du bootstrap. La méthode .632+ est connue pour donner des estimations meilleures et plus robustes des performances du modèle généralisé, en tenant compte de la surajustement. (Si vous êtes intéressé, l'article original est une bonne lecture: Améliorations de la validation croisée: la méthode d'amorçage 632+ )
J'espère que cela répond à votre question. Si vous êtes intéressé par la validation des modèles, je vous recommande de lire la partie sur la validation dans le livre Les éléments de l'apprentissage statistique: exploration de données, inférence et prédiction qui est disponible gratuitement en ligne.
Voici comment vous pouvez estimer l'ampleur du sur-ajustement:
Voici un exemple:
Trefferrate = taux de réussite (% correctement classé), Variablenzahl = nombre de variables (= complexité du modèle)
Symboles :. resubstitution, + estimation interne de sortie de l'optimiseur d'hyperparamètre, o validation croisée externe indépendante au niveau du patient
Cela fonctionne avec ROC, ou des mesures de performance telles que le score de Brier, la sensibilité, la spécificité, ...
* Je ne recommande pas le bootstrap .632 ou .632+ ici: ils mélangent déjà une erreur de resubstitution: vous pouvez de toute façon les calculer plus tard à partir de vos estimations de resubstitution et de bootstap.
la source
Le surajustement est simplement la conséquence directe de la prise en compte des paramètres statistiques, et donc des résultats obtenus, comme une information utile sans vérifier qu'ils n'ont pas été obtenus de manière aléatoire. Par conséquent, afin d'estimer la présence d'un sur-ajustement, nous devons utiliser l'algorithme sur une base de données équivalente à la vraie mais avec des valeurs générées de manière aléatoire, en répétant cette opération plusieurs fois, nous pouvons estimer la probabilité d'obtenir des résultats égaux ou meilleurs de manière aléatoire . Si cette probabilité est élevée, nous sommes très probablement dans une situation de surajustement. Par exemple, la probabilité qu'un polynôme du quatrième degré ait une corrélation de 1 avec 5 points aléatoires sur un plan est de 100%, donc cette corrélation est inutile et nous sommes dans une situation de surajustement.
la source