Qu’est ce que le machine learning (partie 2) ?

machine learning
machine learning

Dans notre précédent article, nous avons essayer de comprendre ce que pouvait nous apporter le machine learning. Dans l’exemple donné, le but était de donner en entrée les caractéristiques d’un bien pour obtenir une prédiction du prix de ce bien.

Mais est ce que le machine learning ne sait faire que ça ? Évidemment, non. On va donc rentrer un peu plus dans les détails. Déjà, il existe 2 types de machine learning. Le supervisé et le non supervisé. Voyons ça.

Machine learning supervisé

Si tu as bien suivi l’article précédent, tu vas me répondre qu’il n’a pas besoin d’être supervisé puisque l’ordinateur apprend tout seul. Et à ça, en bon normand, je te répondrai oui… mais non.

Dans l’exemple précédent, nous étions sur de l’apprentissage supervisé.

Reprenons le tableau :

Nb de piècessuperficietypedistancejardinPrix
115appart500oui135 000,00 €
230appart1300non175 000,00 €
5110appart800non485 000,00 €
380maison3200oui315 000,00 €
125appart200non105 000,00 €
365appart1300non285 000,00 €
5155maison2500oui525 000,00 €

Qu’attendons nous comme prédiction de notre intelligence artificielle ? une prédiction du prix. En fonction de quoi ? Du nombre de pièces, de la superficie, du type de bien etc.

Cela veut dire que nous donnons à notre intelligence artificielle des données sous la forme :

Caractéristique 1 Caractéristique 2 Caractéristique n Résultat

Donc, on donne à notre intelligence artificielle tout un tas d’exemples composés d’un côté les données du problèmes et de l’autre la solution associée !


Dans le cadre d’un machine learning supervisé, les données sont composés d’un côté des variables dites caractéristiques (features) et de l’autre la variable cible ou prédite (target)


Pour créer notre intelligence artificielle, on va donc découper nos données en 2 parties. la première partie sera réservée à l’entrainement, et la seconde sera réservée à l’évaluation. Alors, pour le pourcentage de découpe, c’est à l’initiative du développeur mais on peut partir sur du 80/20 ou 90/10 en fonction du nombre de données qu’on a.

L’entrainement

La première partie de nos données va donc servir à l’entrainement. L’ordinateur va traiter chacune des lignes de notre tableau et essayer de prédire le prix du bien. En fonction du résultat, si il se trompe de beaucoup ou pas beaucoup, il va mettre à jour sa méthode calcul.

Et il va faire ça pour chaque ligne puis répéter cette exercice pour la totalité des lignes un certain nombre de fois. Au fur et à mesure, il est censé améliorer ses prédictions.


L’entrainement en machine learning consiste à lui demander de prédire un résultat en fonction des données entrées. Comme il connait le résultat, il compare sa prédiction avec le résultat et met à jour sa formule de calcul pour être plus précis au prochain tour.


Comment sait on que notre intelligence artificielle est bien entrainée ? Quand elle arrive à 100% de prédiction correcte ? Impossible. Généralement, en fonction du contexte, 75 à 85% c’est déjà pas mal.

Quand on estime que la précision des prédictions est correcte, on va tester notre intelligence sur les données d’évaluation.

L’évaluation

Maintenant qu’on estime que notre intelligence artificielle est correctement entrainée, on va tester ses prédictions sur nos données d’évaluation. On a fait exprès de ne pas intégrer ces exemples pour s’assurer qu’elle ne les aura jamais vu au préalable. Nous allons donc lancer les prédictions sauf que cette fois, elle ne connait pas le résultat donc, elle ne mettra pas à jour sa formule de calcul.

Une fois qu’on a toutes les prédictions, on les compare au résultat et on calcul la précision de notre intelligence artificielle. Si la précision lors de l’évaluation correspond plus ou moins à la précision lors de l’entrainement c’est gagné. Par exemple 85% à l’entrainement et 80% à l’évaluation.


L’évaluation en machine learning consiste à tester notre intelligence artificielle sur des données qu’elle n’a jamais vues mais dont on connait les résultat pour permettre de calculer sa précision.


Imaginons que j’ai une précision de 93% à l’entrainement et de 75% à l’évaluation. Que se passe-t-il ?

Le sur-entrainement

Le sur-entrainement, c’est lorsque tu entraines trop ton intelligence artificielle. A force de toujours apprendre avec les mêmes données, elle finit par quasiment les apprendre par cœur. Ça veut dire que la formule de calcul pour la prédiction sera ultra optimisée pour les données d’entrainement et rien d’autre. Ce qui fait qu’elle sera perdue lorsqu’on lui demandera une prédiction avec de nouvelles données. D’où l’importance de l’entrainer suffisamment… mais pas trop.


Une intelligence trop entrainée sur un jeu de données aura tendance à faire baisser la qualité de ses prédictions.


Les types de prédictions

Dans l’exemple que j’ai donné dans les paragraphes précédent, il s’agissait de prédire un prix. Dans notre cas c’est un nombre qui peut valoir entre 0 et plusieurs millions. Il y a donc plusieurs millions de prédictions possibles. On parlera alors de « régression ». C’est le terme scientifique qu’il va falloir apprendre. Je sais que j’avais promis qu’il n y aurait pas de mot barbare, mais celui-là, tu n’auras pas le choix.

Maintenant, imaginons que nous demandions à notre intelligence artificielle de reconnaître sur une photo si c’est un chat ou un chien. Et seuls ces 2 choix sont possibles. Mais ça peut être aussi si un patient est malade ou non malade. On peut aussi lui demander de prédire si un client, en fonction de son age, son sexe et ses revenus achètera plutôt une voiture de type citadine, SUV ou sportive. Dans tous les cas ci dessus, on parlera alors de « classification ».


Il existe 2 types de prédictions en mode supervisé. La régression dont la prédiction est un nombre qui peut avoir une infinie de valeur et la classification dont la prédiction appartient à une liste de résultat possible et déterminée.


Résumé

Ok les puristes, retirez les points rouges de ma poitrine s’il vous plait. Je sais, j’ai pris des raccourcis et ce n’est pas toujours le bon vocabulaire. Mais le plus important n’est pas là. J’espère juste que les personnes qui n’avait aucune idée de ce qui se cachait derrière les mots « machine learning » ont compris les grandes lignes et qu’elles vont vouloir aller un peu plus loin encore.

La partie 3 (et dernière partie) à suivre bientôt !

Soyez le premier à commenter

Poster un Commentaire

Votre adresse de messagerie ne sera pas publiée.


*


Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.