0% ont trouvé ce document utile (0 vote)
4 vues5 pages

Apprentissage Semi-Supervisé en ML

Le document présente différents types de systèmes d'apprentissage automatique, notamment l'apprentissage semi-supervisé, l'apprentissage par renforcement, l'apprentissage groupé et l'apprentissage en ligne. Chaque type a ses propres caractéristiques et applications, comme l'utilisation d'algorithmes pour reconnaître des images ou pour apprendre à partir de données en temps réel. L'apprentissage en ligne est particulièrement adapté aux systèmes nécessitant une adaptation rapide et efficace à des flux de données continus.

Transféré par

Monday ABDOUL
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
4 vues5 pages

Apprentissage Semi-Supervisé en ML

Le document présente différents types de systèmes d'apprentissage automatique, notamment l'apprentissage semi-supervisé, l'apprentissage par renforcement, l'apprentissage groupé et l'apprentissage en ligne. Chaque type a ses propres caractéristiques et applications, comme l'utilisation d'algorithmes pour reconnaître des images ou pour apprendre à partir de données en temps réel. L'apprentissage en ligne est particulièrement adapté aux systèmes nécessitant une adaptation rapide et efficace à des flux de données continus.

Transféré par

Monday ABDOUL
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

1.

3 Types de systèmes d’apprentissage automatique 11

Figure 1.10 – Détection d’anomalies

que vous gériez un supermarché, exécuter une règle d’association sur vos journaux de
vente vous permettrait peut-être de découvrir que les personnes achetant de la sauce
barbecue et des chips ont aussi tendance à acheter des grillades. Cela pourrait vous
inciter à présenter ces articles à proximité les uns des autres.

Apprentissage semi-supervisé
Certains algorithmes peuvent s’accommoder de données d’apprentissage partiellement
étiquetées, comportant en général beaucoup de données sans étiquette et quelques-unes
avec. C’est ce qu’on appelle l’apprentissage semi-supervisé (voir gure 1.11).
Certains services d’hébergement d’images tels que Google Photos en constituent
de bons exemples : une fois que vous avez téléchargé toutes vos photos de famille vers
ce service, ce dernier reconnaît automatiquement que la personne A apparaît sur les
photos 1, 5 et 11, tandis qu’une personne B apparaît sur les photos 2, 5 et 7. C’est la
partie non supervisée de l’algorithme (partitionnement). Maintenant, le système a
seulement besoin que vous lui disiez qui sont ces personnes : juste une étiquette par
personne4 et il est capable de nommer les personnes gurant sur chaque photo, ce qui
est utile pour les recherches ultérieures.
© Dunod – Toute reproduction non autorisée est un délit.

Figure 1.11 – Apprentissage semi-supervisé

4. Ceci dans le cas idéal où le système fonctionne parfaitement. En pratique, il crée souvent plusieurs
classes par personne et mélange parfois des personnes qui se ressemblent, c’est pourquoi vous devez fournir
quelques étiquettes par personne et nettoyer manuellement quelques classes.
12 Chapitre 1. Vue d’ensemble du Machine Learning

La plupart des algorithmes d’apprentissage semi-supervisé sont des combinaisons


d’algorithmes non supervisés et supervisés. Ainsi, les réseaux de conviction profonde
(Deep Belief Networks ou DBN) s’appuient sur des composants non supervisés
appelés machines de Boltzmann restreintes (Restricted Boltzmann Machines ou RBM)
et empilés les uns sur les autres : Ces RBM sont entraînés séquentiellement en mode
non supervisé, puis l’ensemble complet est réglé précisément en utilisant des tech-
niques d’apprentissage supervisé.

Apprentissage par renforcement


L’apprentissage par renforcement est quelque chose de très différent : le système d’ap-
prentissage, appelé agent dans ce contexte, peut observer l’environnement, sélec-
tionner et accomplir des actions, et obtenir en retour des récompenses (ou des pénalités
sous la forme de récompenses négatives, comme le montre la gure 1.12). Il doit alors
apprendre par lui-même quelle est la meilleure stratégie, ou politique, pour obtenir au
nal autant de récompenses que possible. Une politique dé nit quelle action l’agent
doit choisir face à une situation donnée.

Figure 1.12 – Apprentissage par renforcement

Ainsi, de nombreux robots mettent en œuvre des algorithmes d’apprentissage par


renforcement pour apprendre à marcher. Le programme AlphaGo de DeepMind est
lui aussi un bon exemple d’apprentissage par renforcement : il a fait la une des jour-
naux en mars 2016 lorsqu’il a battu Lee Sedol, l’un des meilleurs joueurs de go au
niveau mondial. Il a mis au point sa tactique gagnante en analysant des millions de
parties, puis en jouant de nombreuses parties contre lui-même. Notez que l’apprentis-
sage était interrompu durant les parties contre le champion, AlphaGo se contentant
alors d’appliquer la politique qu’il avait apprise.
1.3 Types de systèmes d’apprentissage automatique 13

1.3.2 Apprentissage groupé et en ligne


Un autre critère utilisé pour classer les systèmes d’apprentissage automatique consiste
à savoir s’ils peuvent ou non apprendre progressivement, à partir d’un ux de données
entrantes.

Apprentissage groupé (ou « batch »)


Dans l’apprentissage groupé (en anglais, batch learning), le système est incapable
d’apprendre progressivement : il doit être entraîné avec toutes les données dispo-
nibles. Ceci nécessite en général beaucoup de temps et de ressources informatiques,
c’est pourquoi cette tâche s’effectue d’ordinaire en différé : le système est d’abord
entraîné, puis il est placé en production et s’exécute sans apprentissage ultérieur,
se contentant d’appliquer ce qu’il a appris. C’est ce qu’on appelle l’apprentissage
hors-ligne.
Si vous voulez qu’un système d’apprentissage groupé prenne connaissance de
nouvelles données (comme par exemple de nouveaux types de spam), vous devez
entraîner une nouvelle version du système sur l’ensemble du jeu de données (non
seulement les nouvelles données, mais aussi les anciennes), puis arrêter l’ancien sys-
tème et le remplacer par le nouveau.
Heureusement, l’ensemble du processus d’entraînement, d’évaluation et de lance-
ment d’un tel système peut être automatisé relativement aisément (comme le montre
la gure 1.3), ce qui fait que même un système d’apprentissage groupé peut s’adapter
aux évolutions : il vous suf t, aussi souvent que nécessaire, de mettre à jour les don-
nées et d’entraîner entièrement une nouvelle version du système.
Cette solution est simple et fonctionne souvent fort bien, mais l’entraînement
sur le jeu de données complet peut prendre de nombreuses heures, ce qui fait qu’en
général vous n’entraînerez un nouveau système que toutes les 24 heures, ou même
seulement une fois par semaine. Si votre système a besoin de s’adapter à des données
évoluant rapidement (par ex. pour prédire des cours boursiers), il vous faut une solu-
tion plus réactive.
Par ailleurs, l’entraînement sur la totalité du jeu de données requiert beaucoup
© Dunod – Toute reproduction non autorisée est un délit.

de ressources informatiques (CPU, espace mémoire, espace disque, entrées-sorties


disque et réseau…). Si vous avez beaucoup de données et si vous automatisez votre
système de façon à reprendre entièrement l’entraînement chaque jour, cela nira par
vous coûter très cher. Si le volume des données est considérable, il peut même être
impossible d’utiliser un algorithme d’apprentissage groupé.
En n, si votre système doit pouvoir apprendre de manière autonome et s’il dispose
de ressources limitées (comme par exemple dans le cas d’une application sur smart-
phone ou d’un engin spatial sur Mars), alors le fait de transporter de gros volumes
de données et de mobiliser plusieurs heures par jour des ressources importantes pour
l’entraînement peut constituer un obstacle rédhibitoire.
Heureusement, il existe une meilleure solution dans ce genre de cas, solution qui
consiste à utiliser des algorithmes capables d’apprendre progressivement.
14 Chapitre 1. Vue d’ensemble du Machine Learning

Apprentissage en ligne
Dans l’apprentissage en ligne, le système est entraîné progressivement en l’alimen-
tant peu à peu avec des observations, soit une à une, soit par petits groupes appelés
mini-lots (en anglais, mini-batches). Chaque étape d’apprentissage est rapide et écono-
mique, ce qui permet au système d’apprendre à partir de nouvelles données au fur et
à mesure de leur arrivée (voir gure 1.13).

Figure 1.13 – Apprentissage en ligne

L’apprentissage en ligne convient bien aux systèmes recevant des données en ux


continu (par exemple des cours boursiers) et devant pouvoir s’adapter et évoluer
rapidement et de manière autonome. Ils sont également appropriés si vous disposez
de ressources informatiques limitées : une fois qu’un système d’apprentissage en ligne
a effectué son entraînement sur un nouveau jeu de données, il n’en a plus besoin
et vous pouvez le supprimer (à moins que vous souhaitiez pouvoir revenir à un état
antérieur et soumettre à nouveau ces données). Ceci peut permettre d’économiser
beaucoup de place.
Les algorithmes d’apprentissage en ligne permettent aussi d’entraîner des systèmes sur
des jeux de données extrêmement volumineux ne pouvant tenir en mémoire principale :
c’est ce qu’on appelle l’apprentissage hors-mémoire (en anglais, out-of-core). L’algorithme
charge une partie des données, effectue une étape de l’apprentissage sur celles-ci, puis
répète le processus jusqu’à ce qu’il ait analysé toutes les données (voir gure 1.14).

L’ensemble du processus s’effectue en général hors-ligne (c’est-à-dire sur


un système qui n’est pas en production), c’est pourquoi le terme d’appren-
tissage en ligne peut prêter à confusion. Considérez ceci plutôt comme un
apprentissage progressif.

Un paramètre important des systèmes d’apprentissage en ligne est le rythme


auquel ils doivent s’adapter à l’évolution des données : C’est ce qu’on appelle le
taux d’apprentissage (en anglais, learning rate). Si vous choisissez un taux d’apprentis-
sage élevé, votre système s’adaptera rapidement aux nouvelles données, mais il aura
1.3 Types de systèmes d’apprentissage automatique 15

Figure 1.14 – Utilisation de l’apprentissage en ligne pour traiter de gros volumes de données

tendance à oublier tout aussi rapidement les anciennes (mais vous ne souhaitez pas
qu’un ltre anti-spam ne repère que les tout derniers modèles de spam qu’on lui a
montrés). Inversement, si le taux d’apprentissage est lent, le système aura une plus
grande inertie : il apprendra plus lentement, mais il sera aussi moins sensible aux
parasites dans les nouvelles données ou aux suites de données non représentatives.
Une des grosses dif cultés de l’apprentissage en ligne est que si l’on introduit de
mauvaises données dans le système, ses résultats vont se dégrader progressivement.
S’il s’agit d’un système en production, vos clients vont le remarquer. De mauvaises
données peuvent provenir par exemple d’un capteur défectueux sur un robot. Mais
il peut s’agir aussi d’une personne submergeant de données un moteur de recherche
a n d’améliorer son classement. Pour réduire ce risque, vous devez surveiller soi-
gneusement votre système et interrompre rapidement l’apprentissage (en revenant
éventuellement à un état de fonctionnement antérieur) si vous détectez une dégra-
dation des résultats. Vous pouvez aussi surveiller les données d’entrée (par exemple
grâce à un algorithme de détection des anomalies) et réagir en cas de données
anormales.
© Dunod – Toute reproduction non autorisée est un délit.

1.3.3 Apprentissage à partir d’observations


ou apprentissage à partir d’un modèle
On peut aussi catégoriser les systèmes de Machine Learning selon leur mode de géné-
ralisation. La plupart des tâches d’apprentissage automatique consistent à effectuer
des prédictions. Ceci signi e qu’à partir d’un certain nombre d’exemples d’appren-
tissage, le système doit être capable de généraliser à des exemples qu’il n’a jamais
vus auparavant. Obtenir de bons résultats sur le jeu d’entraînement c’est bien, mais
c’est insuf sant : le véritable objectif est d’obtenir de bons résultats sur de nouvelles
observations.
Il existe deux approches principales de la généralisation : l’apprentissage à partir
d’observations et l’apprentissage à partir d’un modèle.

Vous aimerez peut-être aussi