Comment une machine apprend-elle?
Un aperçu étape par étape du processus de formation au Machine Learning (apprentissage automatique).
Former votre modèle de Machine Learning
Jusqu’à présent, nous avons laissé entendre qu’un modèle de Machine Learning doit être « formé » afin de produire le résultat escompté. Cette leçon vous enseignera les étapes du processus de formation, à travers le prisme d’une étude de cas.
L’objectif est de vous permettre de comprendre comment les machines apprennent, pas encore de reproduire le processus par vous-même.
Avant de décider de votre recours au Machine Learning, posez-vous la question suivante : à quelle question suis-je en train d’essayer de répondre ? Et ai-je besoin du Machine Learning pour y parvenir?
À quelle question souhaitez-vous répondre?
Imaginez que votre site web donne aux lecteurs la possibilité de commenter des articles. Chaque jour, des milliers de commentaires sont publiés et, parfois, la conversation devient quelque peu désagréable.
Ce serait formidable si un système automatisé pouvait classer tous les commentaires publiés sur votre plateforme, identifier ceux qui pourraient être « toxiques » et les signaler aux modérateurs humains, qui pourraient alors les examiner pour améliorer la qualité du débat.
C’est un type de problème que l’apprentissage automatique peut vous aider à résoudre. Et en fait, c’est déjà le cas. Voir Jigsaw’s Perspective API (Perspective du puzzle API) pour en savoir davantage.
C’est l’exemple que nous allons utiliser pour apprendre comment un modèle d’apprentissage automatique est formé, mais gardez à l’esprit que le même processus peut être étendu à un nombre quelconque d’études de cas différentes.
Évaluation de votre cas d’utilisation
Pour former un modèle à reconnaître les commentaires toxiques, il faut des données. Ce qui signifie dans ce cas des exemples de commentaires publiés sur votre site web. Mais avant de préparer votre ensemble de données, il est important de réfléchir au résultat que vous escomptez.
Même pour les humains, il n’est pas toujours facile d’évaluer si un commentaire est toxique et ne doit donc pas être publié en ligne. Deux modérateurs peuvent avoir des avis différents sur la « toxicité » d’un commentaire. Il ne faut donc pas s’attendre à ce que l’algorithme « réussisse » tout le temps comme par magie.
L’apprentissage automatique peut traiter un grand nombre de commentaires en quelques minutes, mais il est important de garder à l’esprit qu’il ne fait que « deviner » en fonction de ce qu’il apprend. Il donnera parfois de mauvaises réponses et, en général, fera des erreurs.
Obtenir les données
Il est à présent temps de préparer votre jeu de données. Pour notre étude de cas, nous savons déjà de quel type de données nous avons besoin et où les trouver : commentaires publiés sur votre site web.
Puisque vous demandez au modèle d’apprentissage automatique de reconnaître la toxicité des commentaires, vous devez fournir des exemples libellés des types d’éléments de texte que vous souhaitez classer (commentaires), et des catégories ou étiquettes que vous voulez que le système puisse prévoir (« toxique » ou « non toxique »).
Pour d’autres cas d’utilisation, les données pourraient ne pas être aussi facilement disponibles. Vous devrez les obtenir auprès de votre entreprise ou de tierces parties. Dans les deux cas, assurez-vous de prendre connaissance des réglementations relatives à la protection des données dans votre région et dans les lieux où votre demande sera traitée.
Mise en forme de vos données
Une fois les données collectées, et avant de les transmettre à la machine, vous devez les analyser en profondeur. Le résultat de votre modèle d’apprentissage automatique sera aussi bon et juste que vos données le seront (pour en savoir plus sur le concept d’« équité », voir la leçon suivante). Vous devez réfléchir à la manière dont votre cas d’utilisation pourrait avoir un impact négatif sur les personnes qui seront affectées par les actions suggérées par le modèle.
Notamment, afin de former un modèle efficace, vous devrez vous assurer d’inclure suffisamment d’exemples libellés et de les répartir équitablement entre les catégories. Vous devez également prévoir un large éventail d’exemples, en tenant compte du contexte et du langage utilisé, afin que le modèle puisse rendre compte de la variation de votre espace problématique.
Choix d’un algorithme
Une fois que vous avez fini de préparer l’ensemble de données, vous devez choisir un algorithme de Machine Learning à former. Chaque algorithme a son objectif propre. Par conséquent, vous devez choisir le bon type d’algorithme en fonction du résultat que vous souhaitez obtenir.
Les leçons précédentes nous ont permis de découvrir différentes approches du Machine Learning. Comme notre étude de cas nécessite des données libellées afin de pouvoir classer nos commentaires comme « toxiques » ou « non toxiques », nous essayons de procéder à un apprentissage supervisé.
Google Cloud AutoML Natural Language est l’un des nombreux algorithmes qui vous permettent d’atteindre le résultat souhaité. Mais, quel que soit l’algorithme choisi, veillez à suivre les instructions spécifiques quant au formatage de l’ensemble des données de formation.
Formation, validation et test du modèle
Nous passons à présent à la phase de formation proprement dite, au cours de laquelle nous utilisons les données pour améliorer progressivement la capacité de notre modèle à prédire si un commentaire donné est toxique ou non. Nous introduisons la plupart de nos données dans l’algorithme, nous attendons peut-être quelques minutes, et voilà, notre modèle est formé.
Mais pourquoi seulement « la plupart » des données ? Pour que le modèle apprenne correctement, vous devez scinder vos données en trois ensembles distincts :
- L’ensemble de formation correspond à ce que votre modèle « voit » et ce dont il apprend initialement.
- L’ensemble de validation fait également partie intégrante du processus de formation, mais il est maintenu séparé pour ajuster les hyperparamètres du modèle, des variables qui spécifient la structure du modèle.
- L’ensemble de tests n’entre en scène qu’après le processus de formation. Nous l’utilisons pour tester la performance de notre modèle sur des données qu’il n’a pas encore vues.
Évaluation des résultats
Comment savoir si le modèle a correctement appris à repérer les commentaires potentiellement toxiques?
Une fois la formation terminée, l’algorithme vous donne un aperçu des performances du modèle. Comme nous l’avons déjà dit, vous ne pouvez pas vous attendre à ce que le modèle soit correct 100 % du temps. Il vous revient de décider ce qui est « suffisant », selon le contexte.
Les principaux éléments à prendre en compte pour évaluer votre modèle sont les faux positifs et les faux négatifs. Dans notre cas, un faux positif serait un commentaire qui n’est pas toxique, mais qui est marqué comme tel. Vous pouvez rapidement l’écarter et passer à autre chose. Un faux négatif serait un commentaire toxique, mais que le système ne parvient pas à marquer comme tel. Il est facile de comprendre quelle erreur vous devez éviter de commettre.
Évaluation journalistique
L’évaluation des résultats du processus de formation ne s’arrête pas à l’analyse technique. À ce stade, vos valeurs et directives journalistiques devraient vous aider à décider si vous utiliserez les informations fournies par l’algorithme et comment vous le ferez.
Commencez par vous demander si vous disposez désormais d’informations que vous n'aviez pas auparavant, et si elles ont valeur informative. Valident-elles votre hypothèse actuelle ou mettent-elles en lumière de nouvelles perspectives et de nouveaux angles de reportage que vous n’aviez pas envisagés auparavant ?
Vous devriez à présent mieux comprendre le fonctionnement du Machine Learning, et être encore plus curieux d’en tester le potentiel. Mais nous ne sommes pas encore prêts. La prochaine leçon présentera la préoccupation majeure entourant l’apprentissage automatique : la partialité
-
Créez votre pile technologique
LeçonIdentifiez les meilleures technologies de publication, monétisation, etc. -
-