apprend par cœur. - Département d`informatique et de recherche

publicité
Apprentissage « machine »
Qu’est-ce que l’apprentissage ?
Allons voir ce que le grand dictionnaire
terminologique de l’office québécois de la
langue française en dit…
Apprentissage machine
Pour nos besoins, nous exclurons de
l’apprentissage machine des tâches telles
que l’acquisition et la recherche
d’information, l’expression des
connaissances (représentation et
organisation) et le raisonnement automatisé
(déduction et inférence logique), au profit de
la tâche de reconnaissance de formes.
Reconnaissance de formes
• La reconnaissance de formes est une caractéristique importante de
l’intelligence humaine, elle nous est familier, facile, naturel, automatique.
• Facilement, nous reconnaissons un visage, comprenons des mots et des
phrases parlés, l’écriture manuscrite, nous identifions nos clés parmi
d’autres, détectons un fruit trop mûr par sa texture ou son odeur ainsi que
plusieurs autres tâches de reconnaissance de formes – action de saisir des
données brutes et de poser une action en fonction de la catégorie ou classe
de la forme.
• Depuis notre existence, notre système cognitif a évolué de manière à
effectuer ces tâches cruciales à notre survie.
• Il est donc naturel de vouloir inventer des machines qui peuvent effectuer le
même genre de tâches : la reconnaissance de la parole et de caractères
optiques, et même certaines tâches du même type mais qui sont difficiles,
voir impossibles pour l’humain : la reconnaissance d’empreintes digitales, de
séquences d’ADN, de profils d’expression génétique, etc.
• L’apprentissage machine est donc une approche applicable à un grand
nombre de problèmes, et en particulier de bioinformatique.
Quand peut-on utiliser l’apprentissage machine ?
•
Les algorithmes d’apprentissage s’appliquent lorsqu’il n’y a pas
suffisamment de connaissances pour développer un algorithme qui résout
le problème mais qu’on dispose de plusieurs exemples de la tâche à
accomplir (cf. base de données = exemples).
•
Applications :
– Filtrage (pattern matching; reconnaissance d’images, de sons, etc)
• Cas classiques : visages, caractères, voix, etc
• Cas bioinformatiques : séquences, structures moléculaires, m-arrays, spectrométrie de
masses, etc
– Prise de décision
• Cas classiques : finance, marketing
• Cas bioinformatiques : traitements thérapeutiques
– Estimation
• Cas classiques : risque de crédit, probabilité de fraude, primes d’assurances
• Cas bioinformatiques : drug design
Un exemple : l’apprentissage supervisé
• Supervision (entraînement)
– Le système « apprend » à partir d’exemples qu’on lui
présente
– Le système modifie graduellement les paramètres pour
que ses réponses soient de plus en plus « exactes »
• Utilisation
– On interroge le système sur de nouveaux exemples
jamais vus auparavant
En fait, on demande au système de GÉNÉRALISER
Reconnaissance d’images
Entraînement avec plusieurs images d’individus
Anita
Éric
Utilisation,
Qui est-ce?
Ratiba
(
Marc
Paul
Exemples d’entraînement : { (image, prénom) }
: { (donnée, étiquette) }
: { ( X, Y ) }
, prénom? )
Solution avec l’algorithme du plus
proche voisin (nearest neighbor)
Choisir parmi les
exemples d’apprentissage
le ‘profil’ (image)
le plus proche du
nouvel exemple.
Qui est-ce ?
C’est Paul !
plus proche voisin
Types de problèmes
• Classification
– Reconnaître l’appartenance d’un exemple donné à
une CLASSE.
• Est-ce un visage?
• Si oui, de qui s’agit-il ? (choisir parmi un ensemble fini et
connu d’exemples)
• Régression
– Prédire à partir d’exemples (cf. prédire la valeur en
bourse de demain étant donné les valeurs du passé).
• Estimation de densité
– A-t-on déjà vu cet exemple ou un exemple similaire ?
– Quelles sont les K catégories principales des
données ?
Types d’apprentissage
• Supervisé
– On donne “la bonne réponse” pendant
l’entraînement
– Efficace car on fournit de l’information
– Utile pour classification, régression,
estimation de probabilité conditionnelle
(quelle
est la probabilité qu’un client avec tel profil achète tel produit ?)
• Non supervisé
– Établir quelles sont les catégories principales
des données/exemples
Généraliser est difficile
• On ne veut pas « apprendre par cœur »
– Ce qui impliquerait de trouver la bonne réponse
seulement sur les exemples d’entraînement.
• Facile et rapide pour un ordinateur (revient à chercher)
• Difficile pour les humains (cf. on force les enfants !)
• Apprendre pour « généraliser »
– Plus intéressant !
– FONDAMENTALEMENT plus difficile et peut se
faire de plusieurs façons différentes.
– On doit extraire l’essentiel dans les données.
Exemple: Les données
a. Underlying
La ligne pointillée
représente la meilleure
« réponse » possible
étant donné les
exemples mais elle est
inconnue de
l’apprenant.
Function
3
2.5
Exemples = { (x, y) }
2
1.5
1
0.5
2
4
6
8
10
Par cœur (overfitting)
On apprend par
cœur. Aucune
généralisation.
Erreur faible sur
les exemples
d’apprentissage
mais élevée pour
les nouveaux
exemples.
b. Overfitting
3
2.5
2
1.5
1
0.5
2
4
6
8
10
« Underfitting »
On choisi un
modèle trop
simple, linéaire.
Erreur élevée sur
les exemples
d’apprentissage
ET sur les
nouveaux
exemples.
c. Underfitting
3
2.5
2
1.5
1
0.5
2
4
6
8
10
Un « bon modèle »
d. Good
Le modèle est
suffisamment
flexible pour
capturer la forme
courbe mais pas
trop pour éviter
l’apprentissage par
cœur (overfitting).
Fit
3
2.5
2
1.5
1
0.5
2
4
6
8
10
Apprentissage machine
• Se situe à l’intersection des sciences de
l’informatique, des probabilités et
statistiques et du domaine de l’application.
Informatique
Probabilités et
statistiques
Domaine d’application
Types d’apprentissage machine
•
Non supervisé et groupage
–
–
–
–
–
•
Supervisé
–
–
–
–
–
–
–
•
Analyse des composantes principales
Analyse des composantes indépendantes
Échelonnement multidimensionnel
Groupage linéaire (« flat » clustering; méthode k-means)
Groupage hiérarchique
Problèmes de classification et de régression
Plus proches voisins
Perceptrons
Arbres de décision et de régression
Régression linéaire et logique
Réseaux de neurones artificiels
Machines à vecteurs de support
Modélisation probabiliste
–
–
–
–
–
Vraisemblance maximum
Modèles discrets
Chaînes de Markov
Estimation paramétriques
Réseaux Bayesiens
Téléchargement