{"version":"1.0","provider_name":"","provider_url":"https:\/\/beta.reboot-conseil.com","author_name":"Yohann Jolain","author_url":"https:\/\/beta.reboot-conseil.com\/index.php\/author\/yohann\/","title":"\ud83e\uddf1Retour aux fondamentaux: Le Machine Learning\ud83e\udd16 -","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"mn7ruBWMkD\"><a href=\"https:\/\/beta.reboot-conseil.com\/index.php\/2024\/01\/25\/retour-aux-fondamentaux-le-machine-learning\/\">\ud83e\uddf1Retour aux fondamentaux: Le Machine Learning\ud83e\udd16<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/beta.reboot-conseil.com\/index.php\/2024\/01\/25\/retour-aux-fondamentaux-le-machine-learning\/embed\/#?secret=mn7ruBWMkD\" width=\"600\" height=\"338\" title=\"\u00ab\u00a0\ud83e\uddf1Retour aux fondamentaux: Le Machine Learning\ud83e\udd16\u00a0\u00bb &#8212; \" data-secret=\"mn7ruBWMkD\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script>\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^a-zA-Z0-9]\/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret=\"'+t.secret+'\"]'),o=l.querySelectorAll('blockquote[data-secret=\"'+t.secret+'\"]'),c=new RegExp(\"^https?:$\",\"i\"),i=0;i<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener(\"message\",d.wp.receiveEmbedMessage,!1),l.addEventListener(\"DOMContentLoaded\",function(){for(var e,t,s=l.querySelectorAll(\"iframe.wp-embedded-content\"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute(\"data-secret\"))||(t=Math.random().toString(36).substring(2,12),e.src+=\"#?secret=\"+t,e.setAttribute(\"data-secret\",t)),e.contentWindow.postMessage({message:\"ready\",secret:t},\"*\")},!1)))}(window,document);\n\/\/# sourceURL=https:\/\/beta.reboot-conseil.com\/wp-includes\/js\/wp-embed.min.js\n<\/script>\n","thumbnail_url":"https:\/\/beta.reboot-conseil.com\/wp-content\/uploads\/2024\/01\/generated_00.jpg","thumbnail_width":1024,"thumbnail_height":1024,"description":"Quand on parle de cr\u00e9er une intelligence artificielle, plusieurs approches ont \u00e9t\u00e9 tent\u00e9es pour parvenir \u00e0 cr\u00e9er un algorithme \u00ab\u00a0intelligent\u00a0\u00bb. Cependant, si on regarde r\u00e9cemment, tous les mod\u00e8les que l&rsquo;on trouve sont d\u00e9riv\u00e9s d&rsquo;un paradigme principal : le Machine Learning (souvent abr\u00e9g\u00e9 en ML). Que ce soient les LLM, les r\u00e9seaux de neurones, ou m\u00eame des mod\u00e8les plus simples, tous suivent les principes du Machine Learning (ou l&rsquo;apprentissage automatique en bon fran\u00e7ais). Mais quels sont ces principes ? Comment fonctionne un mod\u00e8le de Machine Learning ? C&rsquo;est ce que cet article veut mettre en avant. Petit point sur le vocabulaire Avant de rentrer dans le sujet, je souhaite simplement mettre au clair certains concepts. Une machine qui apprend ? Avant d&rsquo;aborder ce qu&rsquo;est un algorithme de Machine Learning, et ses particularit\u00e9s, voici un bref rappel de ce qu&rsquo;on attend g\u00e9n\u00e9ralement d&rsquo;un algorithme de Machine Learning. On veut que ce programme, en lui fournissant des donn\u00e9es en entr\u00e9es, qu&rsquo;e l&rsquo;algorithme qu&rsquo;il nous pr\u00e9dise une valeur, la cible de mani\u00e8re correcte. Et donc on veut que notre mod\u00e8le g\u00e9n\u00e9ralise des r\u00e8gles applicables \u00e0 toutes les donn\u00e9es qu&rsquo;il est susceptible de rencontrer pour pr\u00e9dire correctement la cible. Tous les probl\u00e8mes de ML sont des variations de ce probl\u00e8me. Ce qui changera souvent est ce que d\u00e9signent la valeur et le format de celle-ci (nombre, texte, image, etc.) Un algorithme de Machine Learning, c&rsquo;est quelque chose d&rsquo;un peu particulier dans le monde des algorithmes. En effet, quand on parle d&rsquo;algorithme, la comparaison la plus commune pour expliquer ce que c&rsquo;est, c&rsquo;est la recette de cuisine. On a des ingr\u00e9dients, qui repr\u00e9sentent nos entr\u00e9es de l&rsquo;algorithme et des \u00e9tapes \u00e0 suivre qui repr\u00e9sente les r\u00e8gles de notre algorithme. Avec ces deux \u00e9l\u00e9ments, on arrive \u00e0 constituer notre plat final, qui repr\u00e9sente le r\u00e9sultat de l&rsquo;algorithme, et qui est ce qu&rsquo;on cherche \u00e0 automatiser dans le cas d&rsquo;un programme informatique. Et bien un programme d&rsquo;apprentissage automatique fonctionne \u00e0 rebours d&rsquo;un programme classique, \u00e0 lui on va donner des donn\u00e9es en entr\u00e9es, \u00e9ventuellement les r\u00e9sultats qu&rsquo;on attend de lui, et il va se d\u00e9brouiller pour savoir quelles r\u00e8gles permettent de transformer les donn\u00e9es en sortie, ou dans le cas o\u00f9 on n&rsquo;a pas de donn\u00e9es d&rsquo;essayer de trouver des points communs entre les donn\u00e9es. Ce m\u00e9canisme de trouver des r\u00e8gles en fonction des entr\u00e9es, c&rsquo;est ce qu&rsquo;on appelle l&rsquo;apprentissage, ou l&rsquo;entra\u00eenement et c&rsquo;est le point commun de chaque algorithme de Machine Learning. \u00c0 partir de l\u00e0, un des pr\u00e9requis de ce domaine va \u00eatre de constituer un jeu de donn\u00e9es qu&rsquo;on pourra passer \u00e0 l&rsquo;algorithme afin de g\u00e9n\u00e9rer ces r\u00e8gles et faire en sorte que le mod\u00e8le de Machine Learning qu&rsquo;on va cr\u00e9er sera suffisamment performant pour la tache que nous souhaitons r\u00e9aliser. Comment faire apprendre une machine ? Maintenant, qu&rsquo;on a vu le principe g\u00e9n\u00e9ral du Machine Learning, la question est quelles sont les strat\u00e9gies pour faire apprendre une machine. Il en existe plusieurs, et je vais en pr\u00e9senter 3 ici parmi les plus communes : Il existe d&rsquo;autres types d&rsquo;apprentissages, mais voici ceux que je trouve les plus marquants et les plus simples \u00e0 retenir. Quels sont les principaux obstacles ? Maintenant qu&rsquo;on a vu les principaux m\u00e9canismes du ML, de mani\u00e8re assez g\u00e9n\u00e9rique, on va voir quels sont les principaux obstacles qu&rsquo;on rencontre quand on fait du Machine Learning. Si je dois r\u00e9sumer la majorit\u00e9 des obstacles qu&rsquo;on rencontre en un mot, ce serait le mot \u00ab\u00a0biais\u00ab\u00a0. Les algorithmes de ML peuvent tomber dans des biais qui peuvent \u00eatre li\u00e9s \u00e0 divers facteurs. Mauvaise mesure du score du mod\u00e8le Un premier biais que l&rsquo;on peut avoir, arrive quand on mesure les performances de son mod\u00e8le. Pour s&rsquo;assurer que le mod\u00e8le ait bien g\u00e9n\u00e9ralis\u00e9 les r\u00e8gles qu&rsquo;il devait apprendre, on va mesurer le score du mod\u00e8le sur des donn\u00e9es qu&rsquo;il n&rsquo;a pas encore vues, des donn\u00e9es de test. Le risque de mesurer la performance sur les donn\u00e9es que le mod\u00e8le a vues en entra\u00eenement est que le mod\u00e8le a m\u00e9moris\u00e9 les donn\u00e9es et donc qu&rsquo;il n&rsquo;arrive pas \u00e0 g\u00e9n\u00e9raliser. C&rsquo;est pour \u00e7a que le jeu de donn\u00e9es est s\u00e9par\u00e9 en donn\u00e9es d&rsquo;entra\u00eenement et de test (avec g\u00e9n\u00e9ralement 70-80% des donn\u00e9es pour l&rsquo;entrainement, et 20-30% pour le jeu de test). Ce probl\u00e8me est li\u00e9 \u00e0 la m\u00e9thode que l&rsquo;on utilise pour mesurer la performance du mod\u00e8le. Sur-apprentissage et sous-apprentissage Le sur-apprentissage et le sous-apprentissage sont des probl\u00e8mes li\u00e9s \u00e0 la compatibilit\u00e9 entre l&rsquo;algorithme de ML choisi et le jeu de donn\u00e9es. Le sur-apprentissage ou overfitting est un probl\u00e8me o\u00f9 le mod\u00e8le n&rsquo;arrive pas \u00e0 g\u00e9n\u00e9raliser et m\u00e9morise les donn\u00e9es. L&rsquo;indicateur principal du sur-apprentissage est que le score du mod\u00e8le mesur\u00e9 sur les donn\u00e9es d&rsquo;entra\u00eenement est largement sup\u00e9rieur au score mesur\u00e9 sur les donn\u00e9es de test. Cela signifie que le mod\u00e8le est trop complexe pour le probl\u00e8me qu&rsquo;il faut r\u00e9soudre et qu&rsquo;il faut le simplifier. Cela peut \u00eatre aussi la cons\u00e9quence d&rsquo;un jeu de donn\u00e9es trop petit. Le sous-apprentissage ou underfitting, en revanche est un probl\u00e8me o\u00f9 le mod\u00e8le n&rsquo;arrive pas \u00e0 capter et \u00e0 s&rsquo;adapter \u00e0 la complexit\u00e9 du jeu de donn\u00e9es. Un indicateur qui permet de d\u00e9tecter cela est que le score du mod\u00e8le mesur\u00e9 sur les donn\u00e9es d&rsquo;entra\u00eenement et de test est tr\u00e8s faible. Il faut donc adapter l&rsquo;algorithme pour qu&rsquo;il capte mieux la complexit\u00e9 des donn\u00e9es. Cela peut aussi \u00eatre une cons\u00e9quence d&rsquo;un jeu des donn\u00e9es trop petit, comme pour l&rsquo;overfitting. Biais li\u00e9s aux donn\u00e9es Un autre aspect pour lequel il faut faire attention, la composition du jeu de donn\u00e9es. Il y a tout un tas de biais li\u00e9s \u00e0 la repr\u00e9sentativit\u00e9 des diff\u00e9rents types de donn\u00e9es dans le jeu initial. Par exemple, quand on fait un mod\u00e8le de reconnaissance faciale, il faut que l&rsquo;algorithme reconnaisse tous les types de visages, peu importe l\u2019ethnicit\u00e9 de la personne, si la personne porte des lunettes, la couleur des cheveux, etc&#8230; Et pour \u00e7a, il faut que le jeu d&rsquo;entra\u00eenement de cet algorithme contienne des images de personnes avec des caract\u00e9ristiques vari\u00e9es et qu&rsquo;aucune population"}