Apprentissage automatique

Apprentissage automatique

L'apprentissage automatique (machine learning en anglais), un des champs d'étude de l'intelligence artificielle, est la discipline scientifique concernée par le développement, l'analyse et l'implémentation de méthodes automatisables qui permettent à une machine (au sens large) d'évoluer grâce à un processus d'apprentissage, et ainsi de remplir des tâches qu'il est difficile ou impossible de remplir par des moyens algorithmiques plus classiques.

Des systèmes complexes peuvent être analysés, y compris pour des données associées à des valeurs symboliques (ex: sur un attribut numérique, non pas simplement une valeur numérique, juste un nombre, mais une valeur probabilisée, c'est-à-dire un nombre assorti d'une probabilité ou associé à un intervalle de confiance) ou un ensemble de modalités possibles sur un attribut numérique ou catégoriel. L'analyse peut même concerner des données présentées sous forme de graphes ou d'arbres, ou encore de 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).

Le premier stade de l'analyse est celui de la classification, qui vise à « étiqueter » chaque donnée en l'associant à une classe. Différents systèmes d'apprentissage existent, listés ci-dessous.

Sommaire

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 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) dans les langages de programmation disponibles. On confie donc à des programmes le soin d'ajuster un modèle permettant de simplifier cette complexité et de l'utiliser de manière opérationnelle. De plus, ce modèle est adaptatif, de façon à prendre en compte l'évolution de la base des informations pour lesquelles les comportement en réponse ont été validés, ce que l'on appelle apprendre ; ceci permet d'auto-améliorer le système d'analyse ou de réponse (commande adaptative…), ce qui est une des formes que peut prendre l'intelligence artificielle.

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, etc.), de data-mining, d'informatique théorique, etc.

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, etc.) ; moteurs de recherche ; aide aux diagnostics, médical notamment, bio-informatique, chémoinformatique ; 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 ; sites Web adaptatifs ou mieux adaptés ; locomotion de robots ; etc.

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.

Types d'apprentissage

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

  • L'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 correctement étiqueter des exemples. L' « apprenant » peut alors trouver ou approximer la fonction qui permet d'affecter la bonne « étiquette » à ces exemples. 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 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.
  • L'apprentissage non-supervisé (ou classification automatique). 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ènes d'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 cancers 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.).
  • L'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.
  • L'apprentissage partiellement supervisé (probabiliste ou non), quand l'étiquetage des données est partiel[1]. 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).
  • L'apprentissage par renforcement [2] : 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[3] est un exemple classique.

Les algorithmes utilisés

Ce sont dans ce domaine :

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, etc.).
L'apprentissage automatique est utilisé pour un large spectre d'applications :

Facteurs de pertinence et d'efficacité

La qualité de l'apprentissage et de l'analyse dépendent du besoin en amont et a priori de la compétence de l'opérateur pour préparer l'analyse. Elle dépend aussi de la complexité du modèle (spécifique ou généraliste), de son adéquation et de son adaptation au sujet à traiter. In fine, la qualité du travail dépendra aussi du mode (de mise en évidence visuelle) des résultats pour l'utilisateur final (un résultat pertinent pourrait être caché dans un schéma trop complexe, ou mal mis en évidence par une représentation graphique inappropriée).

Avant cela, la qualité du travail dépendra de facteurs initiaux contraignants, liées à la base de données :

  1. Nombre d' exemples (moins il y en a, plus l'analyse est difficile, mais plus il y en a, plus le besoin de mémoire informatique est élevé et plus longue est l'analyse) ;
  2. Nombre et qualité des attributs décrivant ces exemples. La distance entre deux "exemples" numériques (prix, taille, poids, intensité lumineuse, intensité de bruit, etc) est facile à établir, celle entre deux attributs catégoriels (couleur, beauté, utilité, …) est plus délicate ;
  3. Pourcentage de données renseignées et manquantes ;
  4. « Bruit » : le nombre et la « localisation » des valeurs douteuses (erreurs potentiels, valeurs aberrantes…) ou naturellement non-conformes au pattern de distribution générale des « exemples » sur leur espace de distribution impacteront sur la qualité de l'analyse.

Prospective

Il est tentant de s'inspirer des êtres vivants pour concevoir des machines capables d'apprendre.
Ainsi, même si l'apprentissage automatique est encore avant tout un sous-domaine de l'informatique, il est également intimement lié aux sciences cognitives, aux neurosciences, à la biologie et à la psychologie, et pourrait à la croisée de ces domaines, les NBIC, aboutir à des systèmes d'intelligence artificielle plus performants.

Articles connexes

Notes

  1. Ambroise et Govaert, 2000
  2. Voir Machine Learning, chap. 13 Reinforcement Learning, pp. 367-390
  3. Voir Machine Learning, pp. 373-380
  4. Voir Machine Learning, chap. 4 Artificial Neural Networks, pp. 81-127
  5. Voir Machine Learning, chap. 3 Decision Tree Learning, pp. 52-80
  6. Voir Machine Learning, chap. 9 Genetic Algorithms, pp. 249-273

Bibliographie



Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Apprentissage automatique de Wikipédia en français (auteurs)

Игры ⚽ Поможем решить контрольную работу

Regardez d'autres dictionnaires:

  • Apprentissage Automatique — L apprentissage automatique (machine learning en anglais) est un des champs d étude de l intelligence artificielle. L apprentissage automatique fait référence au développement, à l analyse et à l implémentation de méthodes qui permettent à une… …   Wikipédia en Français

  • Weka (apprentissage automatique) — Pour les articles homonymes, voir Weka. Weka …   Wikipédia en Français

  • Apprentissage des machines — Apprentissage automatique L apprentissage automatique (machine learning en anglais) est un des champs d étude de l intelligence artificielle. L apprentissage automatique fait référence au développement, à l analyse et à l implémentation de… …   Wikipédia en Français

  • APPRENTISSAGE — Dans l’opposition souvent établie en matière d’activités psychologiques entre l’inné et l’acquis, l’importance accordée à celui ci a largement varié au cours des dernières années. Alors que le problème de l’apprentissage n’avait aucune place dans …   Encyclopédie Universelle

  • Apprentissage Supervisé — L apprentissage supervisé est une technique d apprentissage automatique où l on cherche à produire automatiquement des règles à partir d une base de données d apprentissage contenant des exemples de cas déjà traités. Plus précisément, la base de… …   Wikipédia en Français

  • Apprentissage supervise — Apprentissage supervisé L apprentissage supervisé est une technique d apprentissage automatique où l on cherche à produire automatiquement des règles à partir d une base de données d apprentissage contenant des exemples de cas déjà traités. Plus… …   Wikipédia en Français

  • Apprentissage Par Renforcement — L apprentissage par renforcement fait référence à une classe de problèmes d apprentissage automatique, dont le but est d apprendre, à partir d expériences, ce qu il convient de faire en différentes situations, de façon à optimiser une récompense… …   Wikipédia en Français

  • Apprentissage Non-supervisé — L apprentissage non supervisé est une méthode d apprentissage automatique. Cette méthode se distingue de l apprentissage supervisé par le fait qu il n y a pas de sortie a priori. Dans l apprentissage non supervisé il y a en entrée un ensemble de… …   Wikipédia en Français

  • Apprentissage non-supervise — Apprentissage non supervisé L apprentissage non supervisé est une méthode d apprentissage automatique. Cette méthode se distingue de l apprentissage supervisé par le fait qu il n y a pas de sortie a priori. Dans l apprentissage non supervisé il y …   Wikipédia en Français

  • Apprentissage (Homonymie) — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”