menu icon

Apprentissage automatique

L'apprentissage automatique se concentre sur les applications qui apprennent de l'expérience et améliorent leur prise de décision ou leur précision prédictive au fil du temps.

Qu'est-ce que l'apprentissage automatique ?

L'apprentissage automatique est une branche de l'intelligence artificielle (IA) axée sur la création d'applications qui apprennent à partir de données et améliorent leur précision au fil du temps sans être programmées pour le faire. 

En science des données, un algorithme est une séquence d'étapes de traitement statistique. Dans l'apprentissage automatique, les algorithmes sont « entraînés » à trouver des modèles et des caractéristiques dans des quantités massives de données, afin de prendre des décisions et de faire des prédictions sur la base de nouvelles données. Plus l'algorithme est performant, plus les décisions et les prédictions deviendront précises à mesure qu'il traitera davantage de données.

Aujourd'hui, nous trouvons des exemples d'apprentissage automatique partout autour de nous. Les assistants numériques effectuent des recherches sur le Web et diffusent de la musique en réponse à nos commandes vocales. Les sites Web recommandent des produits, des films et des chansons en fonction de ce que nous avons acheté, regardé ou écouté auparavant. Les robots aspirent nos sols pendant que nous faisons... quelque chose de plus gratifiant avec notre temps. Les détecteurs de spam empêchent les e-mails indésirables d'atteindre nos boîtes de réception. Des systèmes d'analyse d'images médicales aident les médecins à repérer les tumeurs pourraient ne pas identifier. Et les premiers véhicules autonomes prennent la route.

Et ce n'est que le début. Alors que les données Big Data ne cessent de croître, que l'informatique devient de plus en plus puissante et abordable et que les analystes scientifiques des données continuent de développer des algorithmes toujours plus performants, l'apprentissage automatique apportera une efficience accrue dans nos vies personnelles et professionnelles. 

Fonctionnement de l'apprentissage automatique

La création d'une application (ou d'un modèle) d'apprentissage automatique suit quatre étapes fondamentales. Elles sont généralement réalisées par des analystes scientifiques des données qui travaillent en étroite collaboration avec les professionnels de l'entreprise pour lesquels le modèle est développé.

Étape 1 : Sélectionner et préparer un fichier d'entraînement

Les données d'entraînement sont un ensemble de données représentatif des données que le modèle d'apprentissage automatique ingérera pour résoudre le problème qui lui est soumis. Dans certains cas, les données d'entraînement sont des données étiquetées, « balisées » pour appeler les fonctions et les classifications que le modèle doit identifier. Les autres données ne sont pas étiquetées, et le modèle doit extraire ces fonctions et affecter des classifications seul.

Dans les deux cas, les données d'entraînement doivent être préparées correctement, à savoir randomisées, dédupliquées et vérifiées pour éviter les déséquilibres ou les biais qui pourraient avoir un impact sur l'entraînement. Elles doivent être également divisées dans les deux sous-ensembles suivants : le sous-ensemble d'entraînement qui sera utilisé pour entraîner l'application, et le sous-ensemble d'évaluation utilisé pour la tester et l'affiner.

Étape 2 : Choisir un algorithme à exécuter sur le fichier d'entraînement

Là encore, un algorithme est un ensemble d'étapes de traitement statistique. Le type d'algorithme dépend du type (étiqueté ou non) et de la quantité de données dans l'ensemble de données d'entraînement, ainsi que du type de problème à résoudre.

Les types courants d'algorithmes d'entraînement automatique à utiliser avec les données marquées sont les suivants :

  • Algorithmes de régression : la régression linéaire et la régression logistique sont des exemples d'algorithmes de régression utilisés pour comprendre les relations dans les données. La régression linéaire est utilisée pour prédire la valeur d'une variable dépendante en fonction de la valeur d'une variable indépendante. La régression logistique peut être utilisée lorsque la variable dépendante est binaire par essence : A ou B. Par exemple, un algorithme de régression linéaire pourrait être entraîné à prédire les ventes annuelles d'un vendeur (la variable dépendante) en fonction de sa relation avec son niveau d'études ou ses années d'expérience (les variables indépendantes). Un autre type d'algorithme de régression appelé Support Vector Machine est utile lorsque les variables dépendantes sont plus difficiles à classer.
  • Arbres de décision : les arbres de décision utilisent des données classifiées pour formuler des recommandations en fonction d'un ensemble de règles de décision. Par exemple, un arbre de décision qui recommande de parier sur un cheval pour qu'il gagne, se place ou se montre pourrait utiliser des données sur le cheval (par exemple, l'âge, le pourcentage de victoires, le pedigree) et appliquer des règles à ces facteurs pour recommander une action ou une décision.
  • Algorithmes basés sur une instance : un bon exemple d'algorithme basé sur des instances est les k plus proches voisins (Nearest Neighbor ou k-nn). Il utilise la classification pour estimer la probabilité qu'un point de données soit membre d'un groupe ou d'un autre en fonction de sa proximité avec d'autres points de données.

Les algorithmes utilisés avec des données non étiquetées sont les suivants :

  • Algorithmes de groupement Les clusters s'apparentent à des groupes. Le groupement consiste à identifier des groupes de documents similaires et à étiqueter les documents en fonction du groupe auquel ils appartiennent. Cela se fait sans connaissance préalable des groupes et de leurs caractéristiques. Les types d'algorithmes de groupement comprennent le groupement K moyenne, TwoStep et Kohonen.
  • Algorithmes d'association : Les algorithmes d'association recherchent des modèles et des relations dans les données et identifient les relations « if-then » fréquentes appelées règles d'association. Ces règles sont similaires aux règles utilisées dans l'exploration de données.
  • Réseaux de neurones : un réseau de neurones est un algorithme qui définit un réseau de calculs en couches comprenant une couche d'entrée, où les données sont ingérées, au moins une couche cachée, où les calculs sont effectués pour tirer différentes conclusions sur l'entrée et une couche de sortie, où une probabilité est attribuée à chaque conclusion. Un réseau de neurones profonds définit un réseau comportant plusieurs couches cachées, chacune affinant successivement les résultats de la couche précédente. (Pour en savoir plus, voir la section « Apprentissage en profondeur » ci-dessous).

Étape 3 : Entraînement de l'algorithme pour créer le modèle

L'entraînement de l'algorithme est un processus itératif : il consiste à passer des variables par l'algorithme, à comparer les résultats obtenus avec ceux qu'il aurait dû produire, à ajuster les pondérations et les biais de l'algorithme qui pourraient donner un résultat plus précis, et à refaire passer les variables jusqu'à ce que l'algorithme donne le résultat correct la plupart du temps. L'algorithme entraîné et précis qui en résulte est le modèle d'apprentissage automatique, une distinction importante à noter, car les termes « algorithme » et « modèle » sont utilisés indifféremment, même par les spécialistes de l'apprentissage automatique.

Étape 4 : Utilisation et amélioration du modèle 

L'étape finale consiste à utiliser le modèle avec de nouvelles données et, dans le meilleur des cas, à faire en sorte qu'il gagne en précision et en efficacité au fil du temps. La provenance des nouvelles données dépend du problème à résoudre. Par exemple, un modèle d'apprentissage automatique conçu pour identifier les courriers indésirables ingérera les messages électroniques, tandis qu'un modèle d'apprentissage automatique qui pilote un aspirateur robot ingérera les données résultant d'une interaction avec le monde réel, avec des meubles déplacés ou de nouveaux objets dans la pièce.

Méthodes d'apprentissage automatique

Les méthodes d'apprentissage automatique (également appelées styles d'apprentissage automatique) appartiennent à trois catégories principales..

Pour un examen approfondi des différences entre ces approches, consultez « Entraînement supervisé et entraînement non supervisé : quelle est la différence ? »

Apprentissage automatique supervisé             

L'apprentissage automatique supervisé s'entraîne lui-même sur un ensemble de données  étiquetées. En d'autres termes, les données sont étiquetées avec des informations que le modèle d'apprentissage automatique est censé déterminer et qui peuvent même être classées de la manière dont le modèle est censé classer les données. Par exemple, un modèle de vision par ordinateur conçu pour identifier des bergers allemands de pure race peut être entraîné sur un ensemble de données constitué de diverses images de chiens étiquetées.

L'apprentissage automatique supervisé nécessite moins de données d'entraînement que les autres méthodes d'apprentissage automatique et facilite l'entraînement, car les résultats du modèle peuvent être comparés à des résultats réels étiquetés. Mais la préparation de données correctement étiquetées est coûteuse, et il existe un risque de surajustement, c'est-à-dire de création d'un modèle si étroitement lié et biaisé par les données d'entraînement qu'il ne gère pas correctement les variations des nouvelles données.

En savoir plus sur l'entraînement supervisé.   

Apprentissage automatique non supervisé

L'apprentissage automatique non supervisé ingère des données non étiquetées (un très grand nombre) et utilise des algorithmes pour extraire les caractéristiques significatives nécessaires pour étiqueter, trier et classer les données en temps réel, sans intervention humaine. L'entaînement non supervisé vise moins à automatiser les décisions et les prédictions qu'à identifier des modèles et des relations dans les données qui échapperaient à l'être humain. Prenons l'exemple de la détection des courriers indésirables : les utilisateurs génèrent plus d'e-mails qu'une équipe de spécialistes des données ne pourrait jamais espérer étiqueter ou classer au cours de leur vie. Un algorithme d'apprentissage non supervisé peut analyser d'énormes volumes d'e-mails et découvrir les caractéristiques et les modèles qui indiquent un courrier indésirable (et s'améliorer au fil du temps).

En savoir plus sur l'entraînement non supervisé.

Entraînement semi-supervisé  

L'entraînement semi-supervisé offre un juste milieu entre l'entraînement supervisé et l'entraînement non supervisé. Pendant 'entraînement, il utilise un ensemble de données étiquetées plus petit pour guider la classification et l'extraction de caractéristiques à partir d'un ensemble de données non étiquetées plus grand. L'entraînement semi-supervisé peut résoudre le problème du manque de données étiquetées (ou du manque de moyens pour étiqueter suffisamment de données) pour entraîner un algorithme d'apprentissage supervisé. 

Renforcement de l'apprentissage automatique

Le renforcement de l'apprentissage automatique est un modèle d'apprentissage automatique comportemental qui est similaire à l'entraînement supervisé, mais l'algorithme n'est pas entraîné à l'aide d'échantillons de données. Ce modèle apprend au fur et à mesure de l'essai et de l'erreur.. Une séquence de résultats positifs sera renforcée pour élaborer la meilleure recommandation ou politique pour un problème donné.

Le système IBM Watson® qui a remporté le défiJeopardy!en 2011 est un bon exemple. Le système a utilisé l'entraînement par renforcementpour décider s'il faut tenter une réponse (ou une question, pour ainsi dire), quelle case choisir sur le tableau, et combien miser, surtout sur les doubles quotidiens.

En savoir plus sur l'entraînement par renforcement.    

Apprentissage en profondeur

L'apprentissage en profondeur est un sous-ensemble de l'apprentissage automatique (tout apprentissage en profondeur est de l'apprentissage automatique, mais tout apprentissage automatique n'est pas de l'apprentissage en profondeur). Les algorithmes d'apprentissage en profondeur définissent un réseau de neurones artificiels conçus pour apprendre de la même manière que le cerveau humain. Les modèles d'apprentissage en profondeur nécessitent de grandes quantités de données qui passent par plusieurs couches de calculs, appliquant des pondérations et des biais dans chaque couche successive pour ajuster et améliorer continuellement les résultats.

Les modèles d'apprentissage en profondeur sont généralement non supervisés ou semi-surveillés.. Les modèles d'entraînement par renforcement peuvent être également des modèles d'apprentissage en profondeur. Certains types de modèles d'apprentissage en profondeur, notamment les réseaux de neurones convolutifs (CNN) et les réseaux de neurones récurrents (RNN), sont à l'origine de progrès dans des domaines tels que la vision par ordinateur, le traitement du langage naturel (y compris la reconnaissance vocale) et les voitures autonomes. 

Voir l'article de blogue « AI vs. Machine Learning vs. Deep Learning vs. Neural Networks: What’s the Difference ? » pour un examen plus approfondi de la relation entre ces différents concepts.

En savoir plus sur l'apprentissage en profondeur.                                                               

Scénario d'utilisation de l'apprentissage automatique dans le monde réel

Comme indiqué au début, l'apprentissage automatique est partout. Voici quelques exemples d'apprentissage automatique que vous pouvez rencontrer tous les jours :

  • Assistants numériques : Apple Siri, Amazon Alexa, Google Assistant et d'autres assistants numériques sont optimisé par le traitement du langage naturel (NLP), une application d'apprentissage automatique qui permet aux ordinateurs de traiter les données textuelles et vocales et de « comprendre » le langage humain comme le font les individus. Le traitement du langage naturel est également à l'origine d'applications à commande vocale, comme les GPS et les logiciels de reconnaissance vocale (dictée vocale).
  • Recommandations :  les modèles d'apprentissage en profondeur sont à l'origine des recommandations « les gens ont aussi aimé » et « juste pour vous » proposées par Amazon, Netflix, Spotify et d'autres services de vente au détail, de divertissement, de voyage, de recherche d'emploi et d'information.
  • Publicité en ligne contextuelle :  les modèles d'apprentissage automatique et d'apprentissage en profondeur peuvent évaluer le contenu d'une page Web, pas seulement le sujet, mais des nuances comme l'opinion ou l'attitude de l'auteur, et diffuser des publicités adaptées aux intérêts du visiteur.
  • Agents conversationnels : Les agents conversationnelspeuvent utiliser une combinaison de reconnaissance des formes, de traitement du langage naturel et de réseaux de neurones profonds pour interpréter le texte entré et fournir des réponses appropriées.
  • Détection des fraudes :  les modèles de régression et de classification par apprentissage automatique ont remplacé les systèmes de détection de fraudes basés sur des règles, qui génèrent un nombre élevé de faux positifs lorsqu'ils signalent l'utilisation de cartes de crédit volées et parviennent rarement à détecter l'utilisation criminelle de données financières volées ou compromises.
  • Cybersécurité :l'apprentissage automatique peut extraire des renseignements à partir de rapports d'incidents, d'alertes, d'articles de blogue, etc, pour identifier les menaces potentielles, conseiller les analystes de sécurité et accélérer la réponse.
  • Analyse d'image médicale : les types et le volume de données d'imagerie médicale numérique ont explosé, entraînant une augmentation des informations disponibles pour étayer les diagnostics, mais aussi des risques d'erreur humaine dans la lecture des données. Les réseaux de neurones à convolution (CNN), les réseaux de neurones récurrents (RNN) et d'autres modèles d'apprentissage en profondeur se sont révélés de plus en plus efficaces pour extraire des caractéristiques et des informations des images médicales, afin de faciliter l'établissement de diagnostics précis.
  • Automobile autonome : les voitures à conduite autonome exigent un tour de force d'apprentissage automatique : elles doivent identifier en permanence les objets présents dans l'environnement de la voiture, prédire comment ils vont évoluer ou se déplacer et guider la voiture autour des objets, ainsi que vers la destination du conducteur. Pratiquement toutes les formes d'apprentissage automatique et d'algorithmes d'apprentissage en profondeur mentionnées ci-dessus jouent un rôle dans la mise en place d'une automobile autonome.

Apprentissage machine et IBM Cloud

IBM Watson Machine Learning prend en charge la fin du cycle de vie de l'apprentissage automatique. Il est disponible dans une gamme d'offres qui vous permettent de créer des modèles d'apprentissage automatique là où vos données vivent et de les déployer partout dans votre environnement hybride multicloud. 

IBM Watson Machine Learning sur IBM Cloud Pak for Data aide les équipes d'analystes scientifiques des données d'entreprise à accélérer le développement et le déploiement de l'IA partout, sur une plateforme de données et une plateforme IA cloud native IBM Watson Machine Learning Cloud, un service géré dans l'environnement IBM Cloud, est le moyen le plus rapide de faire passer les modèles de l'expérimentation sur l'ordinateur de bureau au déploiement pour les charges de travail de production. Pour les petites équipes qui veulent mettre à l'échelle les déploiements d'apprentissage automatique, IBM Watson Machine Learning Server offre une installation simple dans n'importe quel cloud privé ou public.

Pour démarrer, inscrivez-vous pour obtenir un IBMid et créez votre compte IBM Cloud.