Vous êtes sur la page 1sur 5

Apprentissage automatique

L'apprentissage automatique (en anglais machine learning, littéralement


« l'apprentissage machine ») ou apprentissage statistique, champ d'étude de
l'intelligence artificielle, concerne la conception, l'analyse, le développement et
l'implémentation de méthodes permettant à une machine (au sens large) d'évoluer par
un processus systématique, et ainsi de remplir des tâches difficiles ou problématiques
par des moyens algorithmiques plus classiques.

L'analyse peut concerner des graphes, arbres, ou courbes (par exemple, la courbe
d'évolution temporelle d'une mesure ; on parle alors de données continues, par
opposition aux données discrètes associées à des attributs-valeurs classiques) au
même titre que de simples nombres. Voir l'article Inférence bayésienne.

Un exemple possible d'apprentissage automatique est celui de la classification :


étiqueter chaque donnée en l'associant à une classe. Différents systèmes
d'apprentissage existent, listés ci-dessous.

Principes
Les algorithmes utilisés permettent, dans une certaine mesure, à un système piloté par
ordinateur (un robot éventuellement), ou assisté par ordinateur, d'adapter ses analyses
et ses comportements en réponse, en se fondant sur l'analyse de données empiriques
provenant d'une base de données ou de capteurs.

La difficulté réside dans le fait que l'ensemble de tous les comportements possibles
compte tenu de toutes les entrées possibles devient rapidement trop complexe à
décrire (on parle d'explosion combinatoire). On confie donc à des programmes le soin
d'ajuster un modèle pour simplifier cette complexité et de l'utiliser de manière
opérationnelle. Idéalement, l'apprentissage visera à être non supervisé, c'est-à-dire que
la nature des données d'entrainement n'est pas connue.

Ces programmes, selon leur degré de perfectionnement, intègrent éventuellement des


capacités de traitement probabiliste des données, d'analyse de données issues de
capteurs, de reconnaissance (reconnaissance vocale, reconnaissance de forme,
d'écriture…), de data-mining, d'informatique théorique…

Applications
L'apprentissage automatique est utilisé pour doter des ordinateurs ou des machines de
systèmes de : perception de leur environnement : vision, reconnaissance d'objets
(visages, schémas, langages naturels, écriture, formes syntaxiques…) ; moteurs de
recherche ; aide aux diagnostics, médical notamment, bio-informatique, chémo-
informatique ; interfaces cerveau-machine ; détection de fraudes à la carte de
crédit, analyse financière, dont analyse du marché boursier ; classification des
séquences d'ADN ; jeu ; génie logiciel ; adaptation de sites Web ; locomotion de
robots ; analyse prédictive en matière juridique et judiciaire…

Exemples :
 Un système d'apprentissage automatique peut permettre à un robot ayant la
capacité de bouger ses membres mais ne sachant initialement rien de la
coordination des mouvements permettant la marche, d'apprendre à marcher. Le
robot commencera par effectuer des mouvements aléatoires, puis, en
sélectionnant et privilégiant les mouvements lui permettant d'avancer, mettra peu
à peu en place une marche de plus en plus efficace ;
 La reconnaissance de caractères manuscrits est une tâche complexe car deux
caractères similaires ne sont jamais exactement égaux. On peut concevoir un
système d'apprentissage automatique qui apprend à reconnaître des caractères
en observant des « exemples », c'est-à-dire des caractères connus.

Historique
Depuis l'antiquité, le sujet des machines pensantes préoccupe les esprits. Ce concept
est la base de pensées pour ce qui deviendra ensuite l'intelligence artificielle, ainsi
qu'une de ses sous-branches : l'apprentissage automatique.

La concrétisation de cette idée est principalement due à Alan Turing et son concept de
la "Machine universelle" en 19362 qui sont à la base des ordinateurs d'aujourd'hui. Il
continuera à poser les bases de l'apprentissage automatique, avec son article sur
"L'ordinateur et l'Intelligence" en 19503 dans lequel il développe entre autres le Test de
Turing.

En 1943, le neurophysiologiste Warren McCulloch et le mathématicien Walter


Pitts publièrent un article décrivant le fonctionnement de neurones en les représentants
à l'aide de circuits électriques. Cette représentation sera la base théorique des réseaux
neuronaux.

Arthur Samuel, informaticien américain pionnier dans le secteur de l'intelligence


artificielle, fut le premier à faire usage du terme "apprentissage automatique" (machine
learning en anglais) en 1959 suite à la création de son programme pour IBM en 1952.
Le programme jouait au Jeu de Dames et s'améliorait plus il jouait. À terme, il parvint à
battre le 4emeilleur joueur des États-Unis.

Une avancée majeure dans le secteur de l'intelligence machine fut le succès de


l'ordinateur développé par IBM, "Deep Blue" qui fut le premier à vaincre le champion
mondial d'échecs Garry Kasparov en 1997. Le projet "Deep Blue" inspira nombre
d'autres dans le cadre de l'intelligence artificielle, particulièrement un autre grand
défi : IBM Watson, l'ordinateur dont le but était de gagner au jeu "Jeopardy!". Ce but fut
atteint en 2011, quand Watson gagna à Jeopardy! en répondant aux questions par
traitement de langage naturel.

Durant les années suivantes, les applications de l'apprentissage automatique


médiatisées se succédèrent bien plus rapidement qu'auparavant. En 2012, Un réseau
neuronal développé par Google parvient à reconnaître des visages humains ainsi que
des chats dans des vidéos YouTube.
En 2014, 64 ans après la prédiction d'Alan Turing, le chatbot "Eugene Goostman" fut le
premier à passer le "Test de Turing" en parvenant à convaincre 33% des juges humains
après 5 minutes de conversation qu'il n'était pas un ordinateur, mais un garçon
Ukrainien de 13 ans.

En 2015, une nouvelle étape importante est atteinte, lorsque l'ordinateur Google
"AlphaGo" gagne contre un des meilleurs joueurs au jeu de plateau considéré comme
le plus dur du monde : le jeu de Go12. En 2016, un système d'intelligence artificielle à
base d'apprentissage automatique nommé LipNet parvient à lire les lèvres avec un
grand taux de succès.

Types d'apprentissage
Les algorithmes d'apprentissage peuvent se catégoriser selon le mode d'apprentissage
qu'ils emploient :

Apprentissage supervisé
si les classes sont prédéterminées et les exemples connus, le système apprend à
classer selon un modèle de classement ; on parle alors d'apprentissage supervisé (ou
d'analyse discriminante). Un expert (ou oracle) doit préalablement étiqueter des
exemples. Le processus se passe en deux phases. Lors de la première phase (hors
ligne, dite d'apprentissage), il s'agit de déterminer un modèle des données étiquetées.
La seconde phase (en ligne, dite de test) consiste à prédire l'étiquette d'une nouvelle
donnée, connaissant le modèle préalablement appris. Parfois il est préférable
d'associer une donnée non pas à une classe unique, mais une probabilité
d'appartenance à chacune des classes prédéterminées (on parle alors d'apprentissage
supervisé probabiliste).ex. : L'analyse discriminante linéaire ou les SVM en sont des
exemples typiques. Autre exemple : en fonction de points communs détectés avec
les symptômes d'autres patients connus (les exemples), le système peut catégoriser de
nouveaux patients au vu de leurs analyses médicales en risque estimé (probabilité) de
développer telle ou telle maladie.

Apprentissage non supervisé


Quand le système ou l'opérateur ne disposent que d'exemples, mais non d'étiquettes,
et que le nombre de classes et leur nature n'ont pas été prédéterminés, on parle
d'apprentissage non supervisé ou clustering. Aucun expert n'est requis. L'algorithme
doit découvrir par lui-même la structure plus ou moins cachée des données.
Le partitionnement de données, data clustering en anglais, est un algorithme
d'apprentissage non supervisé.
Le système doit ici — dans l'espace de description (la somme des données) — cibler
les données selon leurs attributs disponibles, pour les classer en
groupe homogènesd'exemples. La similarité est généralement calculée selon une
fonction de distance entre paires d'exemples. C'est ensuite à l'opérateur d'associer ou
déduire du sens pour chaque groupe et pour les motifs (patterns en anglais)
d'apparition de groupes, ou de groupes de groupes, dans leur « espace ». Divers outils
mathématiques et logiciels peuvent l'aider. On parle aussi d'analyse des données en
régression (ajustement d'un modèle par une procédure de type moindres carrés ou
autre optimisation d'une fonction de coût). Si l'approche est probabiliste (c'est-à-dire
que chaque exemple, au lieu d'être classé dans une seule classe, est caractérisé par
un jeu de probabilités d'appartenance à chacune des classes), on parle alors de « soft
clustering » (par opposition au « hard clustering »).
Cette méthode est souvent source de sérendipité. ex. : Pour un épidémiologiste qui
voudrait dans un ensemble assez large de victimes de cancer du foie tenter de faire
émerger des hypothèses explicatives, l'ordinateur pourrait différencier différents
groupes, que l'épidémiologiste chercherait ensuite à associer à divers facteurs
explicatifs, origines géographique, génétique, habitudes ou pratiques de consommation,
expositions à divers agents potentiellement ou effectivement toxiques (métaux
lourds, toxines telle que l'aflatoxine, etc.).

Apprentissage semi-supervisé
Effectué de manière probabiliste ou non, il vise à faire apparaître la distribution sous-
jacente des exemples dans leur espace de description. Il est mis en œuvre quand des
données (ou « étiquettes ») manquent… Le modèle doit utiliser des exemples non
étiquetés pouvant néanmoins renseigner. ex. : En médecine, il peut constituer une aide
au diagnostic ou au choix des moyens les moins onéreux de tests de diagnostic.

Apprentissage partiellement supervisé


probabiliste ou non, quand l'étiquetage des données est partiel16. C'est le cas quand
un modèle énonce qu'une donnée n'appartient pas à une classe A, mais peut-être à
une classe B ou C (A, B et C étant 3 maladies par exemple évoquées dans le cadre
d'un diagnostic différentiel).

Apprentissage par renforcement


l'algorithme apprend un comportement étant donné une observation. L'action de
l'algorithme sur l'environnement produit une valeur de retour qui guide l'algorithme
d'apprentissage.ex. : L'algorithme de Q-learning est un exemple classique.

Apprentissage par transfert


L’apprentissage par transfert peut être vu comme la capacité d’un système à
reconnaître et appliquer des connaissances et des compétences, apprises à partir de
tâches antérieures, sur de nouvelles tâches ou domaines partageant des similitudes. La
question qui se pose est : comment identifier les similitudes entre la ou les tâche(s)
cible(s) et la ou les tâche(s) source(s), puis comment transférer la connaissance de la
ou des tâche(s) source(s) vers la ou les tâche(s) cible(s) ?

Algorithmes utilisés
Ce sont dans ce domaine :

 les machines à vecteur de support ;


 le boosting ;
 les réseaux de neurones20 pour un apprentissage supervisé ou non-supervisé ;
 la méthode des k plus proches voisins pour un apprentissage supervisé ;
 les arbres de décision21 , méthodes à l'origine des Random Forest, par
extension également du boosting (notamment xgboost);
 les méthodes statistiques comme le modèle de mixture gaussienne ;
 la régression logistique ;
 l'analyse discriminante linéaire ;
 les algorithmes génétiques22 et la programmation génétique.
 Ces méthodes sont souvent combinées pour obtenir diverses variantes
d'apprentissage. L'utilisation de tel ou tel algorithme dépend fortement de la
tâche à résoudre (classification, estimation de valeurs…).
 L'apprentissage automatique est utilisé pour un large spectre d'applications, par
exemple :
 moteur de recherche,
 aide au diagnostic,
 détection de donnée aberrante,
 détection de données manquantes,
 détection de fraudes,
 analyse des marchés financiers,
 reconnaissance de la parole,
 reconnaissance de l'écriture manuscrite,
 analyse et indexation d'images et de vidéo, en particulier pour la recherche
d'image par le contenu,
 robotique,

Théorie des graphes


La théorie des graphes est la discipline mathématique et informatique qui étudie
les graphes, lesquels sont des modèles abstraits de dessins de réseaux reliant des
objets1. Ces modèles sont constitués par la donnée de « points »,
appelés nœuds ou sommets (en référence aux polyèdres), et de « liens » entre ces
points ; ces liens sont souvent symétriques (les graphes sont alors dits non orientés) et
sont appelés des arêtes.

Les algorithmes élaborés pour résoudre des problèmes concernant les objets de cette
théorie ont de nombreuses applications dans tous les domaines liés à la notion de
réseau (réseau social, réseau informatique, télécommunications, etc.) et dans bien
d'autres domaines (par exemple génétique) tant le concept de graphe, à peu près
équivalent à celui de relation binaire (à ne pas confondre donc avec graphe d'une
fonction), est général. De grands théorèmes difficiles, comme le théorème des quatre
couleurs, le théorème des graphes parfaits, ou encore le théorème de Robertson-
Seymour, ont contribué à asseoir cette matière auprès des mathématiciens, et les
questions qu'elle laisse ouvertes, comme la conjecture de Hadwiger, en font une
branche vivace des mathématiques discrètes.

Vous aimerez peut-être aussi