Chapitre 1

Les concepts fondamentaux de l'apprentissage automatique

Présentation du machine learning, ses ingrédients, ses grands types de problèmes et ses ressources pratiques.

I Introduction

L'apprentissage automatique (machine learning) est un domaine captivant, issu de nombreuses disciplines comme la statistique, l'optimisation, l'algorithmique ou le traitement du signal. C'est un champ d'études en mutation constante qui s'est imposé dans notre société. Déjà utilisé depuis des décennies dans la reconnaissance automatique de caractères ou les filtres anti-spam, il sert maintenant à protéger contre la fraude bancaire, recommander des livres, films ou autres produits adaptés à nos goûts, identifier les visages dans le viseur de notre appareil photo, ou traduire automatiquement des textes d'une langue vers une autre.

Dans les années à venir, le machine learning nous permettra vraisemblablement d'améliorer la sécurité routière (y compris grâce aux véhicules autonomes), la réponse d'urgence aux catastrophes naturelles, le développement de nouveaux médicaments, ou l'efficacité énergétique de nos bâtiments et industries. Ce chapitre établit plus clairement ce qui relève ou non du machine learning, ainsi que des branches de ce domaine dont ce cours traitera.

II Objectifs du chapitre

Objectif 1

Définir le machine learning.

Objectif 2

Identifier si un problème relève ou non du machine learning.

Objectif 3

Donner des exemples de cas concrets relevant de grandes classes de problèmes de machine learning.

1 Qu'est-ce que le machine learning ?

🎯 Objectif spécifique

Comprendre la définition du machine learning, ses origines et sa distinction par rapport à la programmation classique.

Qu'est-ce qu'apprendre, comment apprend-on, et que cela signifie-t-il pour une machine ? La question de l'apprentissage fascine les spécialistes de l'informatique et des mathématiques tout autant que neurologues, pédagogues, philosophes ou artistes.

Une définition qui s'applique à un programme informatique comme à un robot, un animal de compagnie ou un être humain est celle proposée par Fabien Benureau (2015) : « L'apprentissage est une modification d'un comportement sur la base d'une expérience ».

Dans le cas d'un programme informatique, on parle d'apprentissage automatique, ou machine learning, quand ce programme a la capacité de se modifier lui-même sans que cette modification ne soit explicitement programmée. Cette définition est celle proposée par Arthur Samuel (1959).

On peut opposer un programme classique, qui utilise une procédure et les données reçues en entrée pour produire en sortie des réponses, à un programme d'apprentissage automatique, qui utilise les données et les réponses afin de produire la procédure qui permet d'obtenir les secondes à partir des premières.

Exemple

Supposons qu'une entreprise veuille connaître le montant total dépensé par un client ou une cliente à partir de ses factures. Il suffit d'appliquer un algorithme classique, à savoir une simple addition : un algorithme d'apprentissage n'est pas nécessaire.

Supposons maintenant que l'on veuille utiliser ces factures pour déterminer quels produits le client est le plus susceptible d'acheter dans un mois. Bien que cela soit vraisemblablement lié, nous ne savons pas toutes les informations nécessaires pour ce faire. Cependant, si nous disposons de l'historique d'achat d'un grand nombre d'individus, il devient possible d'utiliser un algorithme de machine learning pour qu'il en tire un modèle prédictif nous permettant d'apporter une réponse à notre question.

Ce point de vue informatique justifie que l'on considère que le machine learning est un domaine différent de la statistique. Cependant, la frontière entre informatique et apprentissage est souvent mince. Il s'agit, fondamentalement, de modéliser un phénomène à partir de données considérées comme autant d'observations de celui-ci.

📷 ZONE D'ILLUSTRATION – Schéma de l'apprentissage automatique

Ce schéma illustre la différence entre un programme classique et un programme d'apprentissage automatique :

Programme classique Données Procédure Réponses Programme ML Données + Réponses Algorithme d'apprentissage Modèle (procédure)

Figure 1.0 : Schéma comparant programme classique et programme d'apprentissage automatique.

📌 À retenir
  • Le machine learning est un programme qui se modifie lui-même à partir de données, sans programmation explicite des règles.
  • Il s'oppose à la programmation classique où la procédure est fixée par le développeur.
  • L'apprentissage est une modification du comportement basée sur l'expérience (Benureau, 2015).

Autoévaluation – Qu'est-ce que le machine learning ?

Question 1. D'après la définition d'Arthur Samuel (1959), qu'est-ce qui caractérise un programme d'apprentissage automatique ?

☐ A. Il utilise une procédure fixe pour traiter les données.

☐ B. Il a la capacité de se modifier lui-même sans programmation explicite.

☐ C. Il est capable de résoudre tous les problèmes mathématiques.

☐ D. Il repose uniquement sur des bases de données relationnelles.

Réponse correcte : B
Explication : Arthur Samuel a défini le machine learning comme la capacité d'un programme à se modifier lui-même sans que cette modification soit explicitement programmée.

Question 2. Dans l'exemple des factures pour prédire les futurs achats, pourquoi utilise-t-on un algorithme de machine learning ?

☐ A. Parce que la somme des factures est trop difficile à calculer.

☐ B. Parce que nous ne savons pas formuler explicitement les règles de prédiction.

☐ C. Parce que les factures sont trop nombreuses.

☐ D. Parce que le client demande une prédiction précise.

Réponse correcte : B
Explication : On utilise le machine learning lorsque l'on ne sait pas formaliser algorithmiquement la solution, même si l'on dispose de données historiques.

Question 3. Quelle est la définition de l'apprentissage proposée par Fabien Benureau ?

☐ A. L'apprentissage est l'acquisition de connaissances par la lecture.

☐ B. L'apprentissage est une modification d'un comportement sur la base d'une expérience.

☐ C. L'apprentissage est l'optimisation d'une fonction mathématique.

☐ D. L'apprentissage est la reproduction d'exemples par un algorithme.

Réponse correcte : B
Explication : Fabien Benureau (2015) définit l'apprentissage comme une modification du comportement basée sur l'expérience, une définition valable aussi bien pour les machines que pour les humains.

1.1.1 Pourquoi utiliser le machine learning ?

Le machine learning peut servir à résoudre des problèmes :

  • que l'on ne sait pas résoudre (comme dans l'exemple de la prédiction d'achats) ;
  • que l'on sait résoudre, mais dont on ne sait pas formaliser en termes algorithmiques comment nous les résolvons (reconnaissance d'images, compréhension du langage naturel) ;
  • que l'on sait résoudre, mais avec des procédures trop gourmandes en ressources informatiques (prédiction d'interactions entre molécules, simulations lourdes).

Le machine learning est donc utilisé quand les données sont abondantes (relativement), mais les connaissances peu accessibles ou peu développées.

Ainsi, le machine learning peut aussi aider les humains à apprendre : les modèles créés peuvent révéler l'importance relative de certaines informations ou la façon dont elles interagissent pour résoudre un problème particulier. Cet aspect est très utilisé dans la recherche scientifique : quels gènes sont impliqués dans le développement d'un certain type de tumeur, et comment ? Quelles régions d'une image cérébrale permettent de prédire un comportement ? Quels aspects d'une molécule en font un bon médicament ?

📌 À retenir
  • Le machine learning est utile quand les données sont abondantes mais les connaissances explicites manquent.
  • Il permet également d'extraire des informations interprétables pour les chercheurs.

Autoévaluation – Pourquoi utiliser le machine learning ?

Question 1. Dans quel cas le machine learning est-il particulièrement indiqué ?

☐ A. Lorsque les données sont rares et les connaissances exhaustives.

☐ B. Lorsque les données sont abondantes mais les connaissances peu accessibles.

☐ C. Lorsque le problème est très simple et peut être résolu par une addition.

☐ D. Lorsque la procédure algorithmique est connue et facile à coder.

Réponse correcte : B
Explication : Le machine learning est utilisé quand les données sont abondantes mais les connaissances explicites sont insuffisantes pour formaliser la solution.

Question 2. Le machine learning peut aider les humains à apprendre en :

☐ A. Remplaçant complètement l'intuition humaine.

☐ B. Révélant l'importance relative de certaines informations ou leurs interactions.

☐ C. Automatisant toutes les tâches de recherche.

☐ D. Fournissant des prédictions sans explication.

Réponse correcte : B
Explication : Les modèles appris peuvent aider les chercheurs à comprendre quelles variables sont importantes et comment elles interagissent.

Question 3. Le machine learning est particulièrement adapté pour :

☐ A. Résoudre des problèmes que l'on sait déjà formaliser en algorithmes simples.

☐ B. Résoudre des problèmes que l'on ne sait pas résoudre ou formaliser.

☐ C. Effectuer des calculs arithmétiques de base.

☐ D. Remplacer tous les programmes classiques.

Réponse correcte : B
Explication : Le machine learning est utilisé quand on ne sait pas résoudre ou formaliser le problème, ou quand les procédures sont trop lourdes.

Ingrédients du machine learning

Le machine learning repose sur deux piliers fondamentaux :

  • les données : les exemples à partir desquels l'algorithme va apprendre ;
  • l'algorithme d'apprentissage : le procédé que l'on fait tourner sur ces données pour produire un modèle.

Ces deux piliers sont aussi importants l'un que l'autre. D'une part, aucun algorithme d'apprentissage ne pourra créer un bon modèle à partir de données non pertinentes (concept garbage in, garbage out). D'autre part, un modèle appris avec un algorithme inadapté sur des données pertinentes ne pourra pas non plus être de bonne qualité.

Ce cours est consacré au deuxième pilier – les algorithmes d'apprentissage. Néanmoins, une part importante du travail de data scientist consiste à préparer les données : éliminer les aberrantes, gérer les manquantes, choisir une représentation pertinente, etc.

Attention : Il faut distinguer l'algorithme d'apprentissage du modèle appris : le premier utilise les données pour produire le second, qui peut ensuite être appliqué comme un programme classique.

📌 À retenir
  • Les deux ingrédients indispensables sont les données et l'algorithme d'apprentissage.
  • La qualité des données est cruciale : garbage in, garbage out.
  • L'algorithme produit un modèle, qui est utilisé pour faire des prédictions.

Autoévaluation – Ingrédients du machine learning

Question 1. Quels sont les deux piliers fondamentaux du machine learning ?

☐ A. Les données et l'algorithme d'apprentissage.

☐ B. Le matériel et le logiciel.

☐ C. Les modèles et les prédictions.

☐ D. Les étiquettes et les observations.

Réponse correcte : A
Explication : Les deux piliers sont les données (exemples) et l'algorithme d'apprentissage (procédé pour produire un modèle).

Question 2. Que signifie l'expression garbage in, garbage out dans le contexte du machine learning ?

☐ A. Un algorithme performant peut corriger des données de mauvaise qualité.

☐ B. Des données de mauvaise qualité conduisent à des prédictions de mauvaise qualité.

☐ C. Les données doivent être triées avant d'être utilisées.

☐ D. Les algorithmes d'apprentissage sont insensibles à la qualité des données.

Réponse correcte : B
Explication : « Garbage in, garbage out » signifie que si l'on fournit des données de mauvaise qualité, les prédictions seront également de mauvaise qualité.

Question 3. Quelle est la différence entre un algorithme d'apprentissage et un modèle appris ?

☐ A. L'algorithme est le résultat, le modèle est le processus.

☐ B. L'algorithme utilise les données pour produire le modèle.

☐ C. Ils sont synonymes et interchangeables.

☐ D. Le modèle est utilisé pour apprendre, l'algorithme pour prédire.

Réponse correcte : B
Explication : L'algorithme d'apprentissage est le procédé qui, à partir des données, produit un modèle. Le modèle est ensuite utilisé pour faire des prédictions.

Et l'intelligence artificielle, dans tout ça ?

Le machine learning peut être vu comme une branche de l'intelligence artificielle. En effet, un système incapable d'apprendre peut difficilement être considéré comme intelligent. La capacité à apprendre et à tirer parti de ses expériences est essentielle à un système conçu pour s'adapter à un environnement changeant.

L'intelligence artificielle, définie comme l'ensemble des techniques mises en œuvre afin de construire des machines capables de faire preuve d'un comportement intelligent, fait aussi appel aux sciences cognitives, à la neurobiologie, à la logique, à l'électronique, à l'ingénierie et bien plus encore.

Probablement parce que le terme « intelligence artificielle » stimule plus l'imagination, il est cependant de plus en plus souvent employé en lieu et place de celui d'apprentissage automatique.

Questions de société

L'essor récent de l'intelligence artificielle, en particulier à travers les progrès du machine learning, suscite de vifs débats philosophiques, éthiques et moraux. Les biais algorithmiques, et en particulier les biais de l'intelligence artificielle, sont le sujet d'inquiétudes profondes, certaines bien fondées, d'autres plutôt fantasmées.

Autoévaluation – IA et enjeux sociétaux

Question 1. Le machine learning est considéré comme :

☐ A. Une discipline indépendante de l'intelligence artificielle.

☐ B. Une branche de l'intelligence artificielle.

☐ C. Un synonyme parfait de l'intelligence artificielle.

☐ D. Un domaine réservé aux jeux.

Réponse correcte : B
Explication : Le machine learning est une branche de l'intelligence artificielle, car apprendre est essentiel pour un système intelligent.

Question 2. Pourquoi le terme « intelligence artificielle » est-il souvent utilisé à la place de « machine learning » ?

☐ A. Parce qu'il est plus précis scientifiquement.

☐ B. Parce qu'il stimule davantage l'imagination.

☐ C. Parce qu'il est plus ancien.

☐ D. Parce qu'il désigne exclusivement les réseaux de neurones.

Réponse correcte : B
Explication : Le terme « intelligence artificielle » est plus imagé et souvent employé pour désigner le machine learning, bien qu'il soit plus large.

Question 3. Quels sont les sujets d'inquiétude soulevés par l'essor du machine learning ?

☐ A. Les biais algorithmiques.

☐ B. La vitesse de calcul.

☐ C. Le coût des équipements.

☐ D. La complexité des mathématiques.

Réponse correcte : A
Explication : Les biais algorithmiques, notamment ceux de l'intelligence artificielle, sont une préoccupation éthique majeure.

2 Types de problèmes de machine learning

🎯 Objectif spécifique

Distinguer les grandes classes de problèmes : supervisé, non supervisé, semi-supervisé et par renforcement, et identifier leurs sous-catégories.

1.2.1 Apprentissage supervisé

L'apprentissage supervisé est peut-être le type de problèmes de machine learning le plus facile à appréhender : son but est d'apprendre à faire des prédictions, à partir d'une liste d'exemples étiquetés, c'est-à-dire accompagnés de la valeur à prédire. Les étiquettes servent de « professeur » et supervisent l'apprentissage de l'algorithme.

Définition 1.1 (Apprentissage supervisé) On appelle apprentissage supervisé la branche du machine learning qui s'intéresse aux problèmes pouvant être formalisés de la façon suivante : étant données n observations {xi}i=1..n décrites dans un espace 𝒳, et leurs étiquettes {yi}i=1..n décrites dans un espace 𝒴, on suppose que les étiquettes peuvent être obtenues à partir des observations grâce à une fonction φ: 𝒳𝒴 fixe et inconnue : yi = φ(xi) + εi, où εi est un bruit aléatoire. Il s'agit alors d'utiliser les données pour déterminer une fonction f: 𝒳𝒴 telle que, pour tout couple (xi, yi), f(xi) ≈ φ(xi).

D'un point de vue probabiliste, on suppose que les données étiquetées (xi, yi) sont des réalisations d'un même couple de variables aléatoires (X,Y) qui vérifie Y = φ(X) + ε, avec ε un bruit.

L'espace sur lequel sont définies les données est le plus souvent 𝒳 = ℝp. Cependant, d'autres types de représentations sont possibles : variables binaires, discrètes, catégoriques, chaînes de caractères ou graphes.

📊 Figure 1.1 – Schéma de l'apprentissage supervisé Observations (x) + Étiquettes (y) Algorithme supervisé Modèle f (prédictions) Figure 1.1 : Principe de l'apprentissage supervisé : à partir d'observations étiquetées, l'algorithme apprend un modèle de prédiction.

Classification binaire

Définition 1.2 (Classification binaire) Un problème d'apprentissage supervisé dans lequel l'espace des étiquettes est binaire, autrement dit 𝒴 = {0,1}, est appelé un problème de classification binaire.

Exemples :

  • Identifier si un email est un spam ou non ;
  • Identifier si un tableau a été peint par Picasso ou non ;
  • Identifier si une image contient ou non une girafe ;
  • Identifier si une molécule peut ou non traiter la dépression ;
  • Identifier si une transaction financière est frauduleuse ou non.

Classification multi-classe

Définition 1.3 (Classification multi-classe) Un problème d'apprentissage supervisé dans lequel l'espace des étiquettes est discret et fini, autrement dit 𝒴 = {1,2,…,C}, est appelé un problème de classification multi-classe. C est le nombre de classes.

Exemples :

  • Identifier en quelle langue un texte est écrit ;
  • Identifier lequel des 10 chiffres arabes est un chiffre manuscrit ;
  • Identifier l'expression d'un visage parmi une liste prédéfinie (colère, tristesse, joie, etc.) ;
  • Identifier à quelle espèce appartient une plante ;
  • Identifier les objets présents sur une photographie.

Régression

Définition 1.4 (Régression) Un problème d'apprentissage supervisé dans lequel l'espace des étiquettes est 𝒴 = ℝ est appelé un problème de régression.

Exemples :

  • Prédire le nombre de clics sur un lien ;
  • Prédire le nombre d'utilisateurs d'un service en ligne à un moment donné ;
  • Prédire le prix d'une action en bourse ;
  • Prédire l'affinité de liaison entre deux molécules ;
  • Prédire le rendement d'un plant de maïs.

Régression structurée

Dans le cas où l'espace des étiquettes est un espace structuré plus complexe (vecteurs, images, graphes, séquences), on parle de régression structurée. Cela permet de formaliser des problèmes comme la traduction automatique ou la reconnaissance vocale. Ce cas dépasse le cadre de l'ouvrage, qui se concentre sur les problèmes de classification binaire, multi-classe et de régression classique.

L'apprentissage supervisé est le sujet principal de cet ouvrage, traité du chapitre 2 au chapitre 9.

📌 À retenir – Apprentissage supervisé
  • Utilise des exemples étiquetés pour apprendre une fonction de prédiction.
  • Sous-types : classification binaire, classification multi-classe, régression.
  • L'objectif est de généraliser à de nouvelles observations.

Autoévaluation – Apprentissage supervisé

Question 1. Qu'est-ce qui caractérise l'apprentissage supervisé ?

☐ A. Les données ne sont pas étiquetées.

☐ B. Les données sont accompagnées d'étiquettes (valeurs à prédire).

☐ C. L'algorithme interagit avec un environnement.

☐ D. Les données sont triées en clusters.

Réponse correcte : B
Explication : L'apprentissage supervisé utilise des exemples étiquetés, les étiquettes servant de « professeur ».

Question 2. Parmi les problèmes suivants, lequel est un problème de classification binaire ?

☐ A. Prédire le prix d'une action en bourse.

☐ B. Identifier si un email est un spam ou non.

☐ C. Identifier en quelle langue un texte est écrit.

☐ D. Prédire le nombre de clics sur un lien.

Réponse correcte : B
Explication : La classification binaire a deux classes (spam / non-spam), contrairement à la régression (valeur réelle) ou multi-classe (plus de deux classes).

Question 3. La régression structurée concerne :

☐ A. Des étiquettes à valeurs réelles.

☐ B. Des étiquettes binaires.

☐ C. Des étiquettes dans un espace structuré (images, graphes, séquences).

☐ D. Des données non étiquetées.

Réponse correcte : C
Explication : La régression structurée traite des espaces d'étiquettes complexes comme les séquences ou les graphes, au-delà des scalaires ou classes simples.

1.2.2 Apprentissage non supervisé

Dans le cadre de l'apprentissage non supervisé, les données ne sont pas étiquetées. Il s'agit alors de modéliser les observations pour mieux les comprendre.

Définition 1.5 (Apprentissage non supervisé) On appelle apprentissage non supervisé la branche du machine learning qui s'intéresse aux problèmes pouvant être formalisés de la façon suivante : étant données n observations {xi}i=1..n décrites dans un espace 𝒳, il s'agit d'apprendre une nouvelle représentation de ces observations, considérée comme plus informative.

📊 Figure 1.2 – Apprentissage non supervisé Observations (x) sans étiquettes Algorithme non supervisé Nouvelle représentation Figure 1.2 : L'apprentissage non supervisé cherche une représentation informative des données sans étiquettes.

Clustering (partitionnement)

Le clustering consiste à identifier des groupes dans les données (voir figure 1.3). Cela permet de comprendre leurs caractéristiques générales, et éventuellement d'inférer les propriétés d'une observation en fonction du groupe auquel elle appartient.

Définition 1.6 (Partitionnement) On appelle partitionnement ou clustering un problème d'apprentissage non supervisé pouvant être formalisé comme la recherche d'une partition {Ck}k=1..K des n observations {xi}i=1..n. Cette partition doit être pertinente au vu d'un ou plusieurs critères à préciser. Chaque observation est maintenant représentée par le cluster auquel elle appartient.

📊 Figure 1.3 – Exemple de clustering Cluster 1 Cluster 2 Cluster 3 Figure 1.3 : Partitionnement des données en trois groupes homogènes.

Exemples de problèmes de partitionnement :

  • Segmentation de marché : identifier des groupes d'usagers ayant un comportement similaire pour cibler des campagnes.
  • Identifier des groupes de documents ayant un sujet similaire sans étiquetage préalable.
  • Compression d'image : regrouper des pixels similaires pour les représenter plus efficacement.
  • Segmentation d'image : identifier les pixels appartenant à la même région.
  • Identifier des groupes de patients présentant les mêmes symptômes pour définir des sous-types de maladie.

Ce sujet est traité en détail au chapitre 12.

Réduction de dimension

La réduction de dimension consiste à trouver une représentation des données dans un espace de dimension plus faible que l'espace original. Cela réduit le temps de calcul et l'espace mémoire, et améliore souvent les performances d'un algorithme supervisé entraîné ensuite sur ces données.

Définition 1.7 (Réduction de dimension) On appelle réduction de dimension un problème d'apprentissage non supervisé pouvant être formalisé comme la recherche d'un espace 𝒵 de dimension plus faible que l'espace 𝒳 dans lequel sont représentées n observations {xi}i=1..n. Les projections {zi}i=1..n des données sur 𝒵 doivent vérifier certaines propriétés. Chaque observation est maintenant représentée par sa projection sur 𝒵.

📊 Figure 1.4 – Réduction de dimension Espace original (3D) Projection Espace réduit (2D) Figure 1.4 : Réduction de dimension d'un espace 3D vers un espace 2D.

Certaines méthodes de réduction de dimension sont supervisées : il s'agit alors de trouver la représentation la plus pertinente pour prédire une étiquette donnée. La réduction de dimension est traitée au chapitre 11.

Estimation de densité

Enfin, une grande famille de problèmes d'apprentissage non supervisé est l'estimation de densité : on suppose que le jeu de données est un échantillon d'une variable aléatoire X, et on cherche à estimer sa loi de probabilité. Les observations sont alors représentées par cette loi. L'appendice B aborde ce sujet.

📌 À retenir – Apprentissage non supervisé
  • Les données ne sont pas étiquetées ; on cherche à découvrir des structures ou des représentations.
  • Trois grandes familles : clustering (partitionnement), réduction de dimension, estimation de densité.

Autoévaluation – Apprentissage non supervisé

Question 1. Dans l'apprentissage non supervisé, les données :

☐ A. Sont accompagnées d'étiquettes.

☐ B. Ne sont pas étiquetées.

☐ C. Sont toujours des images.

☐ D. Sont générées par un environnement.

Réponse correcte : B
Explication : L'apprentissage non supervisé travaille avec des données non étiquetées pour en extraire des structures.

Question 2. Le clustering (partitionnement) a pour objectif de :

☐ A. Prédire une valeur continue.

☐ B. Regrouper les observations en groupes homogènes.

☐ C. Réduire le nombre de variables.

☐ D. Estimer une densité de probabilité.

Réponse correcte : B
Explication : Le clustering cherche à partitionner les données en clusters (groupes) pertinents.

Question 3. La réduction de dimension permet de :

☐ A. Augmenter le nombre de variables.

☐ B. Trouver une représentation dans un espace de plus faible dimension.

☐ C. Classer les données en plusieurs classes.

☐ D. Apprendre une fonction de prédiction.

Réponse correcte : B
Explication : La réduction de dimension projette les données dans un espace de dimension inférieure tout en préservant l'information utile.

1.2.3 Apprentissage semi-supervisé

L'apprentissage semi-supervisé consiste à apprendre des étiquettes à partir d'un jeu de données partiellement étiqueté. L'avantage est d'éviter d'avoir à étiqueter l'intégralité des exemples, ce qui est pertinent quand il est facile d'accumuler des données mais que leur étiquetage requiert un travail humain important.

Par exemple, pour la classification d'images, il est facile d'obtenir des centaines de milliers d'images, mais l'étiquetage de chacune est très coûteux. De plus, les étiquettes humaines peuvent reproduire des biais, qu'un algorithme supervisé reproduirait. L'apprentissage semi-supervisé permet parfois d'éviter cet écueil. Ce sujet plus avancé n'est pas traité dans l'ouvrage.

1.2.4 Apprentissage par renforcement

Dans l'apprentissage par renforcement, le système peut interagir avec son environnement et accomplir des actions. En retour, il obtient une récompense (positive ou négative). La récompense peut parfois venir après une longue suite d'actions (jeux de go, échecs). L'apprentissage consiste à définir une politique, c'est-à-dire une stratégie pour obtenir systématiquement la meilleure récompense possible.

Les applications principales se trouvent dans les jeux et la robotique.

Autoévaluation – Semi-supervisé et renforcement

Question 1. L'apprentissage semi-supervisé est utile quand :

☐ A. Toutes les données sont étiquetées.

☐ B. Seule une partie des données est étiquetée.

☐ C. Aucune donnée n'est étiquetée.

☐ D. Les données sont générées par un environnement.

Réponse correcte : B
Explication : L'apprentissage semi-supervisé utilise un mélange de données étiquetées et non étiquetées pour réduire le coût d'étiquetage.

Question 2. Dans l'apprentissage par renforcement, l'algorithme apprend :

☐ A. À partir d'exemples étiquetés.

☐ B. En interagissant avec un environnement et en recevant des récompenses.

☐ C. En réduisant la dimension des données.

☐ D. En partitionnant les données en clusters.

Réponse correcte : B
Explication : L'apprentissage par renforcement repose sur l'interaction avec l'environnement et l'optimisation d'une récompense.

Question 3. Parmi les applications suivantes, laquelle relève principalement de l'apprentissage par renforcement ?

☐ A. Classification d'emails en spam.

☐ B. Jeu de go contre un adversaire.

☐ C. Segmentation de clients.

☐ D. Réduction de dimension d'images.

Réponse correcte : B
Explication : Les jeux comme le go sont des exemples classiques d'apprentissage par renforcement, où l'agent apprend par essais-erreurs et récompenses.

3 Ressources pratiques

🎯 Objectif spécifique

Connaître les principales implémentations logicielles et jeux de données disponibles pour mettre en pratique le machine learning.

1.3.1 Implémentations logicielles

De nombreux logiciels et librairies open source permettent de mettre en œuvre des algorithmes de machine learning. En voici quelques-uns :

1.3.2 Jeux de données

De nombreux jeux de données sont disponibles publiquement pour s'entraîner ou tester de nouveaux algorithmes :

Autoévaluation – Ressources pratiques

Question 1. Quelle librairie Python est spécifiquement dédiée au machine learning et citée dans le cours ?

☐ A. NumPy

☐ B. scikit-learn

☐ C. TensorFlow

☐ D. Shogun

Réponse correcte : B
Explication : scikit-learn est la librairie Python de machine learning la plus utilisée, citée dans le cours.

Question 2. La plateforme Kaggle est connue pour :

☐ A. Fournir des données uniquement médicales.

☐ B. Organiser des compétitions en sciences des données.

☐ C. Être un logiciel de machine learning.

☐ D. Être une librairie Python.

Réponse correcte : B
Explication : Kaggle est une plateforme de compétitions en data science, où l'on peut trouver des jeux de données et des challenges.

Question 3. Lequel de ces outils est une suite d'outils de machine learning écrite en Java ?

☐ A. scikit-learn

☐ B. Weka

☐ C. Shogun

☐ D. TensorFlow

Réponse correcte : B
Explication : Weka est une suite d'outils de machine learning écrite en Java, développée depuis 1993.

4 Notations

Autant que faire se peut, l'ouvrage utilise les notations suivantes :

  • Les lettres minuscules (x) représentent un scalaire ;
  • Les lettres minuscules surmontées d'une flèche (x⃗) représentent un vecteur ;
  • Les lettres majuscules (X) représentent une matrice, un événement ou une variable aléatoire ;
  • Les lettres calligraphiées (𝒳) représentent un ensemble ou un espace ;
  • Les indices correspondent à une variable, les exposants à une observation : xij est la j-ième variable de la i-ième observation ;
  • n est le nombre d'observations, p le nombre de variables, C le nombre de classes ;
  • [a]+ représente la partie positive de a (max(0,a)) ;
  • P(A) la probabilité de l'événement A ;
  • E[X] l'espérance de X ;
  • V[X] la variance de X ;
  • 1A la fonction indicatrice (1 si A est vraie, 0 sinon) ;
  • ⟨·,·⟩ le produit scalaire sur ℝp ;
  • ⟨·,·⟩ le produit scalaire sur ℋ ;
  • M ≽ 0 signifie que M est une matrice symétrique semi-définie positive.

5 Synthèse du chapitre

🧠 L'essentiel à retenir

  • Définition : Le machine learning est un algorithme qui apprend un modèle à partir d'exemples, par le biais d'un problème d'optimisation, sans programmation explicite.
  • Utilité : On l'utilise lorsqu'il est difficile de définir des instructions explicites, mais que l'on dispose de nombreux exemples.
  • Types de problèmes :
    • Supervisé : données étiquetées (classification binaire, multi-classe, régression).
    • Non supervisé : données non étiquetées (clustering, réduction de dimension, estimation de densité).
    • Semi-supervisé : données partiellement étiquetées.
    • Par renforcement : interaction avec un environnement et récompenses.
  • Ingrédients : données (qualité cruciale) et algorithme d'apprentissage (qui produit un modèle).
  • Ressources : librairies comme scikit-learn, Weka, Shogun, TensorFlow ; jeux de données UCI, Kaggle, KD Nuggets.

6 Activité d'application

🎯 Consigne

À partir des notions étudiées dans ce chapitre, identifiez pour chacun des cas suivants s'il relève de l'apprentissage supervisé, non supervisé, semi-supervisé ou par renforcement, et précisez si possible le sous-type (classification binaire, régression, clustering, etc.). Justifiez brièvement votre réponse.

  1. Cas 1 : Un site e-commerce souhaite regrouper ses clients en segments homogènes pour personnaliser ses offres, sans connaître à l'avance ces segments.
  2. Cas 2 : Une banque veut prédire, à partir des données de transactions, si un client est solvable ou non (crédit accordé ou refusé).
  3. Cas 3 : Une entreprise dispose de 10 000 images de produits, dont seulement 1000 sont étiquetées avec leur catégorie. Elle veut classer toutes les images en catégories.
  4. Cas 4 : Un robot doit apprendre à naviguer dans un labyrinthe en recevant une récompense lorsqu'il atteint la sortie.
  5. Cas 5 : Un chercheur souhaite estimer la densité de probabilité des tailles de poissons dans un lac à partir d'un échantillon.

Réponses attendues : Cas 1 : non supervisé (clustering). Cas 2 : supervisé (classification binaire). Cas 3 : semi-supervisé. Cas 4 : par renforcement. Cas 5 : non supervisé (estimation de densité).

7 Question de réflexion

💬 Question de réflexion

Le machine learning peut-il vraiment "apprendre" au sens humain du terme ? En quoi la définition de Fabien Benureau (modification du comportement basée sur l'expérience) s'applique-t-elle aussi bien aux machines qu'aux humains ? Quelles limites voyez-vous ?

Cette question vous invite à réfléchir aux fondements philosophiques et cognitifs de l'apprentissage, au-delà des aspects techniques abordés dans ce chapitre.

Références / Sources présentes dans le cours
  • Bakır, G., Hofmann, T., Schölkopf, B., Smola, A. J., Taskar, B., et Vishwanathan, S. V. N. (2007). Predicting Structured Data. MIT Press. https://mitpress.mit.edu/books/predicting-structured-data
  • Benureau, F. (2015). Self-Exploration of Sensorimotor Spaces in Robots. Thèse de doctorat, Université de Bordeaux.
  • Samuel, A. L. (1959). Some studies in machine learning using the game of checkers. IBM Journal of Research and Development, 44(1.2):206–226.
  • Scott, D. W. (1992). Multivariate density estimation. Wiley, New York.
  • Sutton, R. S. et Barto A. G. (2018). Reinforcement Learning : An Introduction. MIT Press. http://incompleteideas.net/book/the-book-2nd.html
Modifié le: mercredi 19 août 2026, 15:34