Qu'est-ce que le machine learning ?

Le machine learning (ML) alimente certaines des technologies les plus importantes que nous utilisons, des applications de traduction aux véhicules autonomes. Ce cours explique les concepts de base du ML.

Le ML offre une nouvelle façon de résoudre des problèmes, de répondre à des questions complexes et de créer du contenu. Le ML peut prédire la météo, estimer les temps de trajet, recommander des titres, compléter automatiquement des phrases, résumer des articles et générer des images inédites.

En termes simples, le ML consiste à entraîner un logiciel, appelé modèle, pour effectuer des prédictions utiles ou générer du contenu à partir de données.

Par exemple, supposons que nous souhaitions créer une application pour prédire les précipitations. Nous pouvons utiliser une approche traditionnelle ou une approche ML. Avec une approche traditionnelle, nous créerions une représentation basée sur la physique de l'atmosphère et de la surface de la Terre, en calculant d'énormes quantités d'équations de dynamique des fluides. C'est incroyablement difficile.

Avec une approche de ML, nous fournirions à un modèle de ML d'énormes quantités de données météorologiques jusqu'à ce qu'il apprenne la relation mathématique entre les modèles météorologiques qui produisent différentes quantités de pluie. Nous lui fournirions ensuite les données météorologiques actuelles, et il prédirait la quantité de pluie.

Testez vos connaissances

Qu'est-ce qu'un "modèle" dans le machine learning ?
Un modèle est une relation mathématique dérivée des données qu'un système de ML utilise pour effectuer des prédictions.
Un modèle est un élément matériel
Un modèle est une représentation réduite de l'objet que vous étudiez.

Types de systèmes de ML

Les systèmes de ML appartiennent à une ou plusieurs des catégories suivantes en fonction de la façon dont ils apprennent à effectuer des prédictions ou à générer du contenu:

  • Apprentissage supervisé
  • Apprentissage non supervisé
  • Apprentissage par renforcement
  • IA générative

Apprentissage supervisé

Les modèles d'apprentissage supervisé peuvent effectuer des prédictions après avoir vu de nombreuses données contenant les bonnes réponses, puis découvert les liens entre les éléments des données qui produisent les bonnes réponses. C'est comme si un élève apprenait de nouveaux contenus en étudiant d'anciens examens qui contiennent à la fois des questions et des réponses. Une fois que l'élève s'est entraîné sur suffisamment d'anciens examens, il est bien préparé à passer un nouvel examen. Ces systèmes de ML sont "supervisés" dans le sens où un humain fournit au système de ML des données avec les résultats corrects connus.

La régression et la classification sont deux des cas d'utilisation les plus courants de l'apprentissage supervisé.

Régression

Un modèle de régression prédit une valeur numérique. Par exemple, un modèle météorologique qui prédit la quantité de pluie, en pouces ou en millimètres, est un modèle de régression.

Pour en savoir plus, consultez le tableau ci-dessous:

Scénario Données d'entrée possibles Prédiction numérique
Prix futur de la maison Surface, code postal, nombre de chambres et de salles de bains, taille du terrain, taux d'intérêt hypothécaire, taux de taxe foncière, coûts de construction et nombre de maisons à vendre dans la région. Prix de la maison.
Heure du trajet à venir Conditions de circulation historiques (recueillies à partir de smartphones, de capteurs de trafic, d'applications de covoiturage et d'autres applications de navigation), distance de la destination et conditions météorologiques Durée d'arrivée à destination, en minutes et secondes.

Classification

Les modèles de classification prédisent la probabilité qu'un élément appartienne à une catégorie. Contrairement aux modèles de régression, dont la sortie est un nombre, les modèles de classification génèrent une valeur indiquant si un élément appartient ou non à une catégorie particulière. Par exemple, les modèles de classification permettent de prédire si un e-mail est un spam ou si une photo contient un chat.

Les modèles de classification sont divisés en deux groupes: la classification binaire et la classification multiclasse. Les modèles de classification binaire génèrent une valeur à partir d'une classe qui ne contient que deux valeurs, par exemple, un modèle qui génère rain ou no rain. Les modèles de classification multiclasses génèrent une valeur à partir d'une classe contenant plus de deux valeurs, par exemple un modèle pouvant générer rain, hail, snow ou sleet.

Testez vos connaissances

Si vous souhaitiez utiliser un modèle de ML pour prédire la consommation d'énergie des bâtiments commerciaux, quel type de modèle utiliseriez-vous ?
Régression
La consommation d'énergie est mesurée en kilowattheures (kWh), qui est un nombre. Vous devez donc utiliser un modèle de régression.
Classification
Les modèles de classification prédisent si un élément appartient ou non à une catégorie, tandis que les modèles de régression prédisent un nombre. Étant donné que la consommation d'énergie est mesurée en kilowattheures (kWh), qui est un nombre, vous devez utiliser un modèle de régression.

Apprentissage non supervisé

Les modèles d'apprentissage non supervisé effectuent des prédictions à partir de données qui ne contiennent aucune réponse correcte. L'objectif d'un modèle d'apprentissage non supervisé est d'identifier des tendances significatives parmi les données. En d'autres termes, le modèle n'a aucune indication sur la façon de catégoriser chaque élément de données, mais doit inférer ses propres règles.

Un modèle d'apprentissage non supervisé couramment utilisé utilise une technique appelée clustering. Le modèle trouve les points de données qui délimitent les regroupements naturels.

Image montrant des points colorés en grappes.

Figure 1 : Modèle de ML regroupant des points de données similaires

Image montrant des points colorés en groupes, enfermés dans une forme et se touchant les uns aux autres.

Figure 2 : Groupes de clusters avec des démarcations naturelles.

Le clustering diffère de la classification, car les catégories ne sont pas définies par vous. Par exemple, un modèle non supervisé peut regrouper un ensemble de données météorologiques en fonction de la température, révélant ainsi des segmentations qui définissent les saisons. Vous pouvez ensuite essayer de nommer ces clusters en fonction de votre compréhension de l'ensemble de données.

Image montrant des points de couleur en grappes, avec les libellés "neige", "pluie", "grêle" et "pas de pluie".

Figure 3. Modèle de ML regroupant des conditions météo similaires

Image montrant des points de couleur en grappes, libellés "neige", "pluie", "grêle" et "pas de pluie", enfermés dans une forme et bordés les uns par les autres.

Figure 4. Regroupements de conditions météorologiques classées comme neige, grésil, pluie et pas de pluie.

Testez vos connaissances

Quelle est la différence entre une approche supervisée et une approche non supervisée ?
Une approche supervisée reçoit des données contenant la bonne réponse.
Une approche supervisée reçoit des données contenant la bonne réponse. Le rôle du modèle est de trouver des connexions dans les données qui produisent la bonne réponse. Une approche non supervisée reçoit des données sans la bonne réponse. Son rôle est de trouver des regroupements dans les données.
Une approche supervisée utilise généralement le clustering.
Une approche non supervisée utilise le clustering.
Une approche non supervisée sait comment étiqueter des groupes de données.
Une approche non supervisée ne sait pas ce que signifient les clusters de données. C'est à vous de les définir en fonction de votre compréhension des données.

Apprentissage par renforcement

Les modèles d'apprentissage par renforcement effectuent des prédictions en recevant des récompenses ou des pénalités en fonction des actions effectuées dans un environnement. Un système d'apprentissage par renforcement génère une règle qui définit la meilleure stratégie pour obtenir le plus de récompenses.

L'apprentissage par renforcement est utilisé pour entraîner des robots à effectuer des tâches, comme marcher dans une pièce, et des programmes logiciels tels que AlphaGo à jouer au jeu de Go.

IA générative

L'IA générative est une classe de modèles qui crée du contenu à partir des entrées utilisateur. Par exemple, l'IA générative peut créer des images, des compositions musicales et des blagues uniques. Elle peut résumer des articles, expliquer comment effectuer une tâche ou modifier une photo.

L'IA générative peut prendre en charge diverses entrées et créer diverses sorties, comme du texte, des images, de l'audio et des vidéos. Il peut également prendre et créer des combinaisons de ces éléments. Par exemple, un modèle peut prendre une image en entrée et créer une image et du texte en sortie, ou prendre une image et du texte en entrée et créer une vidéo en sortie.

Nous pouvons discuter des modèles génératifs en fonction de leurs entrées et de leurs sorties, généralement écrites sous la forme "type d'entrée"-à-"type de sortie". Par exemple, voici une liste partielle d'entrées et de sorties pour les modèles génératifs:

  • Texte-vers-texte
  • Texte-vers-image
  • Texte-vers-vidéo
  • Texte-vers-code
  • Synthèse vocale
  • Image et texte-vers-image

Le tableau suivant présente des exemples de modèles génératifs, leur entrée et un exemple de leur sortie possible:

Modèle Entrée Exemple de résultat :
Texte-vers-texte Qui a inventé la course des 24 Heures du Mans ? Les 24 Heures du Mans ont été créées par l'Automobile Club de l'Ouest (ACO), une organisation automobile fondée en 1906. La première course a eu lieu les 26 et 27 mai 1923 sur le circuit de la Sarthe, un circuit routier de 13,426 km situé près de la ville du Mans, en France. La course a été conçue à l'origine pour promouvoir l'ACO et la région de la Sarthe.
Source: Bard
Texte-vers-image Une pieuvre extraterrestre flotte à travers un portail en lisant un journal. Image d'un poulpe de dessin animé.
Source: Imagen
Texte-vers-vidéo Un ours en peluche photoréaliste nage dans l'océan à San Francisco. Le nounours est immergé. L'ours en peluche continue de nager sous l'eau avec des poissons colorés. Un ours panda nage sous l'eau. Vidéo d'un ours en peluche nageant sous l'eau.
Source: Phenaki
Texte-vers-code Écrivez une boucle Python qui parcourt une liste de nombres et affiche les nombres premiers.
for number in numbers:
  # Check if the number is prime.
  is_prime = True
  for i in range(2, number):
    if number % i == 0:
        is_prime = False
        break
  # If the number is prime, print it.
  if is_prime:
    print(number)

Source: Bard
Image en texte Image d'un flamant rose. Il s'agit d'un flamant rose. On les trouve dans les Caraïbes.
Source: Google DeepMind

Comment fonctionne l'IA générative ? De manière générale, les modèles génératifs apprennent les tendances dans les données dans le but de produire de nouvelles données, mais similaires. Les modèles génératifs sont les suivants:

  • Les humoristes qui apprennent à imiter les autres en observant leur comportement et leur façon de parler
  • Artistes qui apprennent à peindre dans un style particulier en étudiant de nombreuses peintures de ce style
  • Les groupes de reprises qui apprennent à sonner comme un groupe de musique spécifique en écoutant beaucoup de musique de ce groupe

Pour produire des résultats uniques et créatifs, les modèles génératifs sont initialement entraînés à l'aide d'une approche non supervisée, où le modèle apprend à imiter les données sur lesquelles il est entraîné. Le modèle est parfois entraîné plus en détail à l'aide d'un apprentissage supervisé ou par renforcement sur des données spécifiques liées aux tâches que le modèle peut être invité à effectuer, par exemple résumer un article ou modifier une photo.

L'IA générative est une technologie qui évolue rapidement, et de nouveaux cas d'utilisation sont constamment découverts. Par exemple, les modèles génératifs aident les entreprises à affiner leurs images de produits d'e-commerce en supprimant automatiquement les arrière-plans gênants ou en améliorant la qualité des images basse résolution.