Accueil Finances personnelles Optimisation des choix de validation croisée dans l'apprentissage automatique - des mannequins

Optimisation des choix de validation croisée dans l'apprentissage automatique - des mannequins

Vidéo: CROSS-VALIDATION SKLEARN PYTHON (Techniques expliquées en Français) 2024

Vidéo: CROSS-VALIDATION SKLEARN PYTHON (Techniques expliquées en Français) 2024
Anonim

La validation d'une hypothèse d'apprentissage automatique permet une optimisation plus poussée de l'algorithme choisi. L'algorithme fournit la plupart des performances prédictives sur vos données, étant donné sa capacité à détecter des signaux à partir de données et à s'adapter à la forme fonctionnelle réelle de la fonction prédictive sans surapprentissage et générant beaucoup de variance des estimations. Tous les algorithmes d'apprentissage automatique ne conviennent pas forcément à vos données, et aucun algorithme ne peut convenir à tous les problèmes. C'est à vous de trouver le bon pour un problème spécifique.

Une deuxième source de performance prédictive est la donnée elle-même lorsqu'elle est transformée et sélectionnée de manière appropriée pour améliorer les capacités d'apprentissage de l'algorithme choisi.

La dernière source de performance découle de la mise au point des hyper-paramètres de l'algorithme, qui sont les paramètres que vous décidez avant l'apprentissage et qui ne sont pas appris des données. Leur rôle est de définir a priori une hypothèse, alors que d'autres paramètres la spécifient a posteriori, après interaction de l'algorithme avec les données et, en utilisant un processus d'optimisation, trouve certaines valeurs de paramètres travailler mieux pour obtenir de bonnes prédictions.

Tous les algorithmes d'apprentissage automatique ne nécessitent pas beaucoup d'optimisation des hyper paramètres, mais certains des plus complexes le font, et bien que de tels algorithmes fonctionnent encore hors de la boîte, tirer les bons leviers peut faire une grande différence dans l'exactitude des prédictions. Même lorsque les hyper-paramètres ne sont pas appris à partir des données, vous devez considérer les données sur lesquelles vous travaillez pour déterminer les hyper-paramètres, et vous devez faire le choix basé sur la validation croisée et l'évaluation soigneuse des possibilités.

Les algorithmes complexes d'apprentissage automatique, les plus exposés à la variance des estimations, présentent de nombreux choix exprimés dans un grand nombre de paramètres. Les bidouiller avec eux les fait s'adapter plus ou moins aux données qu'ils apprennent. Parfois, trop de twittling hyper-paramètre peut même rendre l'algorithme détecter de faux signaux à partir des données. Cela fait des hyper-paramètres eux-mêmes une source de variance non détectée si vous commencez à les manipuler trop en fonction d'une référence fixe comme un ensemble de tests ou un schéma de validation croisée répété.

R et Python offrent des fonctionnalités de découpage qui découpent votre matrice d'entrée en parties de train, de test et de validation. En particulier, pour les procédures de test plus complexes, telles que la validation croisée ou l'amorçage, le package Scikit-learn offre un module complet et R un package spécialisé, offrant des fonctions de fractionnement, de prétraitement et de test des données.Ce paquet est appelé caret.

Les combinaisons possibles de valeurs que les hyper-paramètres peuvent former déterminent où rechercher les optimisations. Comme décrit lors de la discussion sur la descente de gradient, un espace d'optimisation peut contenir des combinaisons de valeurs qui fonctionnent mieux ou moins bien. Même après avoir trouvé une bonne combinaison, vous n'êtes pas assuré que c'est la meilleure option. (C'est le problème de rester coincé dans les minima locaux en minimisant l'erreur.)

Comme moyen pratique de résoudre ce problème, la meilleure façon de vérifier les hyper-paramètres pour un algorithme appliqué à des données spécifiques est de les tester tous validation croisée, et de choisir la meilleure combinaison. Cette approche simple, appelée grid-search, offre des avantages indiscutables en vous permettant d'échantillonner la gamme des valeurs possibles à entrer systématiquement dans l'algorithme et de repérer quand le minimum général se produit.

D'un autre côté, la recherche de grille présente également de sérieux inconvénients car elle nécessite beaucoup de calculs (vous pouvez facilement effectuer cette tâche en parallèle sur des ordinateurs multicœurs modernes) et prend beaucoup de temps. De plus, des tests systématiques et intensifs augmentent la possibilité d'erreurs, car certains résultats de validation bons mais faux peuvent être causés par le bruit présent dans l'ensemble de données.

Certaines alternatives à la recherche de grille sont disponibles. Au lieu de tout tester, vous pouvez essayer d'explorer l'espace des valeurs possibles d'hyper-paramètres guidées par des techniques d'optimisation non linéaires lourdes et mathématiquement complexes (comme la méthode Nelder-Mead), en utilisant une approche bayésienne (où le nombre de tests est minimisé). avantage des résultats précédents) ou en utilisant la recherche aléatoire.

Étonnamment, la recherche aléatoire fonctionne incroyablement bien, est simple à comprendre et ne se fonde pas uniquement sur la chance aveugle, bien qu'elle puisse sembler au premier abord l'être. En fait, le point principal de la technique est que si vous choisissez suffisamment de tests aléatoires, vous avez réellement assez de possibilités pour repérer les bons paramètres sans gaspiller d'énergie en testant des combinaisons légèrement différentes de combinaisons similaires.

La représentation graphique ci-dessous explique pourquoi la recherche aléatoire fonctionne correctement. Une exploration systématique, bien qu'utile, tend à tester chaque combinaison, ce qui se transforme en gaspillage d'énergie si certains paramètres n'influencent pas le résultat. Une recherche aléatoire teste en fait moins de combinaisons mais plus dans la gamme de chaque hyper-paramètre, une stratégie qui s'avère gagnante si, comme cela arrive souvent, certains paramètres sont plus importants que d'autres.

Comparaison de la recherche de grille à la recherche aléatoire.

Pour que la recherche aléatoire fonctionne bien, vous devez effectuer de 15 à 60 tests maximum. Il est logique de recourir à la recherche aléatoire si une recherche de grille nécessite un plus grand nombre d'expériences.

Optimisation des choix de validation croisée dans l'apprentissage automatique - des mannequins

Le choix des éditeurs

Tableaux et pointeurs en C ++ - le nom du tableau des mannequins

Tableaux et pointeurs en C ++ - le nom du tableau des mannequins

Est un pointeur sur le tableau lui-même. Le tableau est une séquence de variables stockée en mémoire. Le nom du tableau pointe vers le premier élément. C'est une question intéressante sur les pointeurs: Pouvez-vous avoir un en-tête de fonction, comme la ligne suivante, et juste utiliser sizeof pour déterminer comment ...

Boost Bibliothèques et C ++ - mannequins

Boost Bibliothèques et C ++ - mannequins

De nombreux développeurs utilisent les bibliothèques Boost car elles fournissent un code de haute qualité une partie de Boost est en train d'être normalisée pour être incluse dans la bibliothèque standard. L'une des meilleures choses à propos de Boost est que la bibliothèque elle-même est gratuite. Le site Web de Boost tient à faire savoir aux développeurs qu'ils ne ...

Casser les programmes Mis à part C ++ - les mannequins

Casser les programmes Mis à part C ++ - les mannequins

Le programmeur peut casser un seul programme en fichiers sources distincts généralement appelés modules. Ces modules sont compilés séparément dans le code machine par le compilateur C ++, puis combinés au cours du processus de génération pour générer un seul programme. Ces modules sont également connus par les geeks du compilateur en tant qu'unités de traduction C ++. Le processus de combinaison ...

Le choix des éditeurs

Comment régler les paramètres via l'affichage d'informations sur votre Nikon D5200 - mannequins

Comment régler les paramètres via l'affichage d'informations sur votre Nikon D5200 - mannequins

L'information l'affichage ne sert pas uniquement à vérifier les paramètres de prise de vue actuels; Cela vous donne également un accès rapide à certains des paramètres les plus critiques. La touche de cette fonction est le bouton Information Edit, situé à l'arrière de l'appareil photo, à droite du viseur. Voici comment cela fonctionne: Afficher les informations ...

Met en surbrillance le mode d'affichage sur votre Nikon D7100 - mannequins

Met en surbrillance le mode d'affichage sur votre Nikon D7100 - mannequins

En mode d'affichage hautes lumières sur votre Nikon D7100 pense que l'appareil photo peut être surexposé clignoter dans le moniteur de l'appareil photo. L'un des problèmes de photo les plus difficiles à corriger dans un programme de retouche photo est connu sous le nom de surbrillance dans certains cercles et de surbrillance dans d'autres. Les deux termes signifient que les zones les plus claires de ...

Comment régler les paramètres via la bande de contrôle Nikon D3300 - les tétines

Comment régler les paramètres via la bande de contrôle Nikon D3300 - les tétines

Présentes en bas à gauche Au coin du Nikon D3300, le bouton i active une bande de contrôle qui vous donne un accès rapide à certains paramètres de prise de vue critiques. Voici comment utiliser la bande de contrôle pour la photographie dans le viseur: Affichez l'écran d'informations. Vous pouvez le faire en appuyant sur le bouton Info. Appuyez sur le bouton i. Le haut ...

Le choix des éditeurs

Comment imprimer vos diapositives et notes Keynote - Les tétines

Comment imprimer vos diapositives et notes Keynote - Les tétines

Lorsque vous créez une présentation dans Snow Leopard Application Keynote, vous ne pouvez pas toujours vouloir imprimer des documents. Cependant, si vous présentez un long diaporama avec beaucoup d'informations que vous aimeriez que votre public se souvienne, rien ne vaut les documents qui incluent des images réduites de vos diapositives (et, facultativement, les notes de votre présentateur). Vous pouvez ...

Comment réorganiser ou supprimer les signets - les mannequins

Comment réorganiser ou supprimer les signets - les mannequins

Safari enregistre vos signets et vos dossiers de signets dans l'ordre dans lequel vous les créez, en les ajoutant au bas d'une liste toujours croissante. Si vous continuez à ajouter des marque-pages au menu Signets sans les placer dans des dossiers, vous pouvez constater que vous avez un nombre de signets gazillion indiqué bon gré mal gré et que vous ne vous en souvenez plus ...

Pour ouvrir et utiliser l'iDisk de Snow Leopard - les mannequins

Pour ouvrir et utiliser l'iDisk de Snow Leopard - les mannequins

Avec un compte MobileMe actif, iDisk est disponible et vous fournit un espace de stockage supplémentaire. Pour connaître l'espace de stockage utilisé et pour configurer l'accès à votre dossier Public, ouvrez les Préférences Système, cliquez sur l'icône MobileMe, puis sur le bouton iDisk pour afficher les paramètres. Vos paramètres iDisk sont disponibles dans les Préférences Système. Le ...