Les algorithmes du chef
= Les algorithmes dans l'IA : La vraie vie d'un développeur =
Si tu entends parler d'"algorithmes" partout, tu dois te dire que les développeurs IA passent leur temps à écrire des formules mathématiques impossibles. Eh bien, détrompe-toi !
En réalité, les développeurs IA utilisent des algorithmes tout le temps, mais ils ne les inventent pas. Ils font comme un chef cuisinier : ils ne fabriquent pas leurs casseroles (les algorithmes de base), mais ils choisissent la bonne casserole au bon moment, ils règlent la température, et ils mélangent les ingrédients.
Voici, dans leur vie quotidienne, les 3 grandes moments où ils utilisent ces fameux "algorithmes".
== Phase 1 : L'entraînement du modèle (le moment où la machine "apprend") ==
C'est le moment le plus important. Le développeur va montrer des millions d'exemples à l'ordinateur pour qu'il apprenne tout seul.
L'algorithme de la "Leçon corrigée" (la Descente de gradient) : Pour apprendre, le robot fait des devoirs et se trompe. À chaque erreur, un algorithme lui dit "tu dois tourner les boutons de ce côté-là pour moins te tromper la prochaine fois". Le développeur ne code pas cet algorithme, il se contente de dire à quelle vitesse le robot doit tourner les boutons (un peu comme on règle la vitesse d'un essuie-glace).
L'algorithme de la "Mémoire courte" (la Régularisation) : Parfois, le robot est trop fort et apprend les exercices PAR CŒUR sans les comprendre (comme un élève qui bachote). Le développeur utilise un algorithme qui, de temps en temps, éteint quelques neurones au hasard pendant l'exercice. Cela force le robot à vraiment comprendre la logique, plutôt que d'apprendre bêtement par cœur.
L'algorithme du "Coup de pouce de départ" (l'Initialisation) : Avant même de commencer à apprendre, le développeur lance un algorithme qui décide des valeurs de départ des neurones. Si on ne fait pas ça, le robot est tellement perdu au début qu'il n'apprendra jamais rien.
== Phase 2 : La préparation des ingrédients (le traitement des données) ==
Contrairement à ce qu'on croit, les développeurs IA passent 80% de leur temps à ranger et nettoyer les données, comme un cuisinier qui épluche des légumes avant de cuisiner.
L'algorithme du "Mètre ruban" (la Normalisation) : Si tu donnes au robot des tailles en mètres et des âges en années, il va être perdu (1 mètre = 100, alors que 1 an = 1). Le développeur utilise un algorithme qui remet toutes les mesures sur une échelle de 0 à 1. Ainsi, le robot ne favorise pas une information parce qu'elle a des chiffres plus gros.
L'algorithme du "Copier-Coller déformé" (l'Augmentation) : Pour les images, si le développeur n'a que 100 photos de chats, il utilise un algorithme qui va tourner les photos, les retourner, les éclaircir... pour créer 1 000 photos différentes à partir des 100 de départ. C'est comme si on apprenait à reconnaître un chat en le voyant sous tous les angles.
L'algorithme du "Déménageur" (la Réduction de dimension) : Si ton tableau de données a 10 000 colonnes, l'ordinateur va ramer. Le développeur utilise un algorithme qui regroupe les colonnes qui se ressemblent pour n'en faire qu'une seule. Il "réduit les cartons" pour que le robot travaille plus vite.
== Phase 3 : La mise en ligne (le moment où le robot rend service) ==
Une fois que le robot a appris, le développeur doit le mettre sur ton téléphone ou sur un site internet. Il utilise alors des algorithmes pour que ça aille très vite.
L'algorithme du "Régime" (la Quantification) : Le robot, dans sa tête, pèse plusieurs kilos de données. Pour le faire entrer dans un téléphone, le développeur utilise un algorithme qui simplifie les nombres (comme si on arrondissait 3,141592 par 3,14). Le robot perd un tout petit peu de précision, mais il devient léger et rapide.
L'algorithme du "Taille-haie" (l'Élagage) : Le développeur utilise un algorithme pour couper les branches du robot qui ne servent à rien. Si un neurone ne fait jamais rien d'utile, on le vire. Comme on taille un arbre pour qu'il donne plus de fruits.
L'algorithme du "Choisisseur de mots" (pour ChatGPT et compagnie) : Quand tu poses une question à une IA qui écrit du texte, le robot doit choisir quel mot mettre après l'autre. Le développeur utilise un algorithme qui va piocher dans une liste de mots probables. Il règle même la "température" : si la température est froide, le robot est très sage et prévisible ; si la température est chaude, il devient plus fou et créatif dans ses réponses.
= Le grand malentendu à retenir =
Pour bien comprendre, il faut savoir la différence entre :
Un développeur "classique" (comme celui qui fait des sites web) : Il écrit une recette de cuisine précise. Il dit à l'ordinateur : "Si l'utilisateur tape A, alors tu fais B". Il code l'algorithme lui-même.
Un développeur "IA" (intelligence artificielle) : Il ne donne pas la recette. Il construit une machine à apprendre, il lui donne des milliards d'exemples, et il utilise des algorithmes "automatiques" pour que ce soit la machine qui trouve toute seule la recette.
En clair : Le développeur IA utilise des algorithmes à chaque seconde de son travail, mais il ne les réinvente pas. Il est comme un pilote de formule 1 : il ne fabrique pas le moteur (l'algorithme de base), mais il sait exactement quel bouton pousser, quel réglage faire et à quel moment, pour que la voiture aille le plus vite possible !