p. 08 Petite introduction au Machine Learning
p. 20 Évaluez efficacement les frameworks de Machine Learning
p. 36 Utilisez la régression linéaire pour la prédiction
p. 56 La malédiction de la dimension
p. 74 Comment coder un système de recommandation en Python : l'exemple de Mangaki
p. 88 L'Univers, ses galaxies et le machine Learning
p. 112 Prédiction de structures secondaires de protéines
p. 120 Recherche de molécules innovantes
Avec l’explosion du nombre de données disponibles, il faut trouver des méthodes efficaces de traitement pour parvenir à en faire émerger des connaissances. En effet, posséder des milliards et des milliards de données dans différents domaines n’a strictement aucun intérêt en soi si l’on est incapable de les faire « parler », d’établir des relations entre elles ou des inférences. Si nous prenons l’exemple de la biologie, à quoi bon posséder des génomes séquencés si nous nous arrêtons à leurs séquences de nucléotides ? Cela ne nous renseigne en aucune manière sur le fonctionnement de l’organisme étudié. Il faut pour cela passer par les acides aminés, les gènes et leur organisation sur le génome, les protéines, leur structure et leur fonction, etc. Et lorsque les données croissent drastiquement, il n’est plus question d’annotation manuelle et d’expériences (si ce n’est pour valider des hypothèses), il faut un outil informatique puissant qui va aider à faire des prédictions. Cet outil, utilisé par le data scientist (l’expert scientifique chargé de l’analyse de données), peut être le machine learning, thème de ce guide.
De nombreux frameworks permettent d’utiliser le machine learning relativement simplement et ils vous seront présentés de manière plus ou moins avancée dans les différents articles que vous pourrez lire dans les pages suivantes. Il faut toutefois noter deux éléments fondamentaux :
Pour que ce guide soit complet, nous avons voulu le bâtir de manière à proposer des articles présentant les bases théoriques et des exemples pratiques, illustrant comment appliquer le machine learning sur des données et quelles informations en retirer. Vous devriez donc avoir entre les mains tout ce qu’il vous faut pour vous lancer, il ne reste plus qu’à trouver les données...
Tristan Colombo
p.06 IPython 7.0, la nouvelle version du shell interactif Python survitaminé
p.08 Côté livres...
p.10 Quel IDE pour analyser vos données en Python ?
p. 20 Le Deep Learning, en fait rien de nouveau
p. 38 Computer Vision : le traitement des images par Machine Learning
p. 52 Kaggle, la Data Science en compétition
p. 60 Génération d’articles à l’aide de réseaux de neurones
p. 78 Le Machine Learning portable : écrivez une IA de jeu de morpion en Go, distribuez-la en Wasm
p. 102 Journal de bord d’un hackathon, dans la peau d’un Data Scientist
p.110 Deep Learning et humanités numériques, Entretien avec Daniel Stökl Ben Ezra
p.118 Supervision à petite échelle avec Conky et Collectd
« Comment fer cuire un neuf ? »
« Kel tant pour un neuf molé ? »
« Cé ki le prézident ? »
Ce qui est intéressant avec le Machine Learning ou le Deep Learning, c’est la faculté du programme à apprendre par lui-même. Ce qui est dangereux, ce sont les données que nous lui fournissons pour son apprentissage. Prenez un moteur de recherche tel que Google et soumettez-lui les requêtes précédentes : vous obtiendrez des réponses sensées. Pourquoi ? Parce que l’intelligence artificielle qui se cache derrière le moteur de recherche a appris à répondre à ce genre de requêtes. La question qui se pose alors est : d’où peuvent bien provenir des inepties pareilles ? Si je veux connaître le temps de cuisson pour un œuf mollet, je tape : « temps cuisson œuf mollet »
Donc comment la machine a-t-elle pu déduire une telle déformation de langage ? En fait, elle a appris des milliers de requêtes d’utilisateurs et de leur navigation pour en déduire ce qu’ils recherchaient. Le facteur incontrôlable de cet apprentissage permanent ce sont donc « les gens ». Le service devant répondre à la masse il s’adapte, il mute et éventuellement pourrait ne plus reconnaître à terme des requêtes correctement formulées. Lorsque votre recherche par mots-clés échoue, essayez de la réécrire sous forme dysorthographique, vous aurez parfois des surprises et ça fait froid dans le dos. Imaginez une voiture autonome apprenant en se basant sur le comportement des conducteurs humains : demi-tour au milieu de la route, dépassement par la droite, stationnement dans un rond-point, non-respect des distances de sécurité, etc. Au lieu de nous retrouver face à une machine qui, sauf défaillance technique, se comporte de manière rationnelle et prévisible, nous nous retrouverions face à des véhicules à la conduite erratique, semblable à ce que peut faire un conducteur humain. Quel serait alors le gain pour la Société ?
La question que je pose donc en préambule de ce hors-série est la suivante : est-il toujours nécessaire d’apprendre en se calquant sur le comportement du plus grand nombre ? L’Histoire nous a montré à de nombreuses reprises (Galilée démontrant l’héliocentrisme - la Terre tourne autour du Soleil - pour ne citer qu’un seul exemple) que le plus grand nombre n’a pas toujours raison. Est-il donc judicieux de laisser des systèmes apprendre par eux-mêmes et remettre en cause leurs connaissances en se basant sur des comportements de masse ? Tant que l’ensemble d’apprentissage est maîtrisé, l’algorithme va tendre vers un résultat « connu » : classer des photos d’ophrys (des orchidées) en fonction des différentes espèces par exemple. Mais si l’on commence à intégrer à l’ensemble d’apprentissage les observations de citadins incapables de distinguer une marguerite d’une edelweiss, on va aboutir à une nouvelle classification des espèces d’ophrys, une classification qui n’aura plus rien de scientifique, mais qui correspondra au plus grand nombre. Les données sont donc comme toujours à traiter avec beaucoup de prudence. Le Machine Learning et le Deep Learning ne sont pas des méthodes magiques, une préparation des données et un paramétrage précis seront nécessaires et ce sont bien des prédictions que l’on obtiendra et non un résultat. En étant conscients de cela, nous disposons tout de même d’un formidable outil qui sera au cœur du dossier de ce hors-série. Bonne lecture !
Tristan Colombo
Agent conversationnel / LLM / IA : Exécuter votre propre chatbot type...
Lire plus ➤Comprenez la menace web shell Fonctionnement et techniques d’injection...
Lire plus ➤Administration système : Comprendre et utiliser les nouvelles pratiques...
Lire plus ➤Arduino / RP2040 / STM32 / ESP Programmez vos microcontrôleurs en...
Lire plus ➤