Jeux d'entrainement, de validation et de test
Ensemble de tâches en apprentissage automatique / De Wikipedia, l'encyclopédie encyclopedia
En apprentissage automatique, une tâche courante est l'étude et la construction d'algorithmes qui peuvent apprendre et faire des prédictions sur les données[1]. De tels algorithmes fonctionnent en faisant des prédictions ou des décisions basées sur les données[2], en construisant un modèle mathématique à partir des données d'entrée. Ces données d'entrée utilisées pour construire le modèle sont généralement divisées en plusieurs jeux de données . En particulier, trois jeux de données sont couramment utilisés à différentes étapes de la création du modèle : les jeux d'apprentissage, de validation et de test.
Le modèle est initialement ajusté sur un jeu de données d'apprentissage[3] qui est un jeu d'exemples utilisés pour ajuster les paramètres (par exemple, les poids des connexions entre les neurones dans les réseaux de neurones artificiels ) du modèle[4]. Le modèle (par exemple un classificateur naïf de Bayes ) est entraîné sur le jeu de données d'apprentissage à l'aide d'une méthode d'apprentissage supervisé, par exemple à l'aide de méthodes d'optimisation telles que la descente de gradient ou la descente de gradient stochastique . En pratique, le jeu de données d'apprentissage se compose souvent de paires d'un vecteur d'entrée (ou scalaire) et du vecteur (ou scalaire) de sortie correspondant, où la variable de réponse est communément appelée cible (ou étiquette ou encore tag). Le modèle est exécuté avec le jeu de données d'apprentissage et produit un résultat, qui est ensuite comparé à la cible, pour chaque vecteur d'entrée dans le jeu de données d'apprentissage. Sur la base du résultat de la comparaison et de l'algorithme d'apprentissage spécifique utilisé, les paramètres du modèle sont ajustés. L'ajustement du modèle peut inclure à la fois la sélection de variables et l'estimation des paramètres.
Successivement, le modèle ajusté est utilisé pour prédire les réponses pour les observations dans un deuxième jeu de données appelé jeu de données de validation[3]. Le jeu de données de validation fournit une évaluation impartiale d'un ajustement de modèle sur le jeu de données d'apprentissage tout en ajustant les hyperparamètres [5] (par exemple, le nombre d'unités cachées - couches et largeurs de couche - dans un réseau de neurones[4]). Les jeux de données de validation peuvent être utilisés pour la régularisation par arrêt anticipé (arrêt de l'entraînement lorsque l'erreur sur le jeu de données de validation augmente, car cela est un signe de sur-apprentissage du jeu de données d'entraînement)[6]. Cette procédure d'apparence simple est compliquée en pratique par le fait que l'erreur du jeu de données de validation peut fluctuer pendant l'apprentissage, produisant plusieurs minima locaux. Cette complication a conduit à la création de nombreuses règles ad hoc pour décider quand le sur-apprentissage a vraiment commencé[6].
Enfin, le jeu de données de test est un jeu de données utilisé pour fournir une évaluation impartiale d'un ajustement final du modèle sur le jeu de données d'apprentissage[5]. Si les données du jeu de données de test n'ont jamais été utilisées dans l'apprentissage (par exemple en validation croisée), le jeu de données de test est également appelé jeu de données d'exclusion. Le terme « jeu de validation » est parfois utilisé au lieu de « jeu de test » dans certaines publications (par exemple, si le jeu de données d'origine a été divisé en deux sous-ensembles seulement, le jeu de test peut être appelé jeu de validation)[5].
Décider des tailles et des stratégies pour la division des jeux de données dans les jeux d'apprentissage, de test et de validation dépend beaucoup du problème et des données disponibles[7].