Apprentissage de Classifieurs à Noyau sur des Données Bruitées

publicité
Apprentissage de Classifieurs à Noyau sur des
Données Bruitées
Guillaume Stempfel
Encadré par:
Liva Ralaivola
Laboratoire d’Informatique Fondamentale de Marseille
21 février 2007
Introduction
Apprentissage automatique
Plusieurs déclinaisons : classification supervisée, régression,
estimation de densité. . .
Applications pratiques : catégorisation de textes, reconnaissance de
chiffres manuscrits. . .
Types de problèmes
Classification de données linéairement séparables : problème simple
Classification de données bruitées : problème NP-dur
Algorithmes existants : Classifieurs linéaires tolérants au bruit de
classification uniforme
Et pour les données non linéairement séparables ?
Algorithme RP-learn
Sommaire
Classification supervisée
Contexte
Exemples tirés dans un espace X étiquetés dans un ensemble fini de
classes Y = {−1, 1} selon une distribution D inconnue
Espace Des Descriptions X
Espace Des Etiquettes Y
111
000
000
111
000
111
000
111
000
111
Objectif : produire un classifieur possédant de bonnes capacités de
généralisation
Minimisation du risque empirique à condition de maîtriser la complexité
de la classe de concepts
Séparateur linéaire f : f (x) = signe(w · x)
Algorithme du perceptron [Ros58]
Caractéristiques
Résolution de problèmes linéaires
Algorithme itératif glouton
Complexité en temps polynomiale [MP69] mais. . .
. . . dépendante de la marge γ
γ = minx∼D
|w·x|
kwk
Algorithme
E NTRÉES : S = {(x1 , y1 ) . . . (xm , ym )}
S ORTIES : un classifieur linéaire w
w = ~0
tantque il existe un exemple xi ∈ S mal classé faire
w ← w + yi kxxi k
i
fin tantque
Retourner w
Algorithme du perceptron [Ros58] (2)
Illustration
111111111111111111111111111111111111111
000000000000000000000000000000000000000
00
11
γ
000000000000000000000000000000000000000
111111111111111111111111111111111111111
00
11
000000000000000000000000000000000000000
111111111111111111111111111111111111111
00
w
~
000000000000000000000000000000000000000
111111111111111111111111111111111111111
w~∗11
00
11
000000000000000000000000000000000000000
111111111111111111111111111111111111111
00
11
000000000000000000000000000000000000000
111111111111111111111111111111111111111
000000000000000000000000000000000000000
111111111111111111111111111111111111111
000000000000000000000000000000000000000
111111111111111111111111111111111111111
000000000000000000000000000000000000000
111111111111111111111111111111111111111
000000000000000000000000000000000000000
111111111111111111111111111111111111111
000000000000000000000000000000000000000
111111111111111111111111111111111111111
γ
Positifs
Négatifs
Bruit de classification
Types de bruits
Attributs erronés
Attributs manquants
Etiquettes erronées. . .
Bruit de classification uniforme
Bruit de classification uniforme η <
1
2
Pour un exemple (x, y ), on observe l’exemple (x, y η ) tel que
(
y
avec probabilité 1 − η
η
y =
−y avec probabilité η
Algorithme du perceptron inutilisable sur un problème bruité
Bruit de classification (2)
Illustration
00
11
11
00
00
11
11
00
00
11
00
11
1
0
0
1
0
1
0
1
1
0
0
1
Positifs
Négatifs
Cadre PAC [Val84], [AL88]
Idée
Probablement approximativement correct
Caractériser les classes de concepts apprenables et les algorithmes
associés
Caractéristiques
Paramètre de confiance δ, précision ε
Production, avec une probabilité 1 − δ, d’un classifieur qui fait une
erreur d’au plus ε
Complexités d’échantillonnage et en temps polynomiales en fonction de
1
n, ε1 , δ1 et 1−2η
Sommaire
Travaux connexes
Algorithme du perceptron inutilisable sur un problème bruité
Travaux sur les séparateurs linéaires
LTF-noise [Byl94],[Byl98]
Mises à jour effectuées avec une moyenne pondérée des
exemples mal classés et de l’ensemble des exemples
Tolérant au bruit
Perceptron modifié / Outlier Removal [BFKV96] [Coh97]
Tolérant au bruit
Complexités dépendant logarithmiquement de la marge
Algorithmes "lourds"
Rescaling [DV04]
Basé sur une transformation de l’espace
Complexités dépendant logarithmiquement de la marge mais pas
de tolérance au bruit
Données non linéairement séparables
Kernel Trick
Utilisation d’algorithmes linéaires sur des données non linéairement
séparables
Plongement des données dans un espace de dimension
potentiellement infinie où elles sont linéairement séparables
Apprentissage dans l’espace de plongement reste possible en
contrôlant la marge
Noyaux de Mercer
Application k : X × X → R
Espace de Hilbert associé H et fonction de plongement Φ telle que
∀(u, v ) ∈ X 2 , k (u, v ) = hΦ(u), Φ(v )i
Données non linéairement séparables
Kernel Trick
Utilisation d’algorithmes linéaires sur des données non linéairement
séparables
Plongement des données dans un espace de dimension
potentiellement infinie où elles sont linéairement séparables
Apprentissage dans l’espace de plongement reste possible en
contrôlant la marge
Plongement des données
11
00
00
11
(0,1)
1
0
0 (1,1,1)
1
(1,1)
(0,1,0)
11
00
00
11
00
11
1
0
1
0
(0,0)
(1,0)
(0,0,0)
(1,0,0)
Sommaire
Projection aléatoire
Motivation
LTF-noise, peceptron modifié et rescaling ne peuvent être utilisés que dans
un espace de dimension finie
Projection aléatoire
Projection aléatoire
Projection d’une
distribution dans un espace aléatoire de dimension
1
d( γ1 , ln εδ
) finie
Avec une probabilité 1 − δ, la distribution est séparable avec une erreur
ε
Application
Pour un échantillon S de taille m, S est séparable avec une probabilité
(1 − δ)(1 − mε)
Echantillon séparable pour l’apprentissage
Distribution approximativement séparable avec une erreur
arbitrairement petite
Généralisation possible sur une fraction (1 − ε) de la distribution
Projection aléatoire
+
00000000000000000000000
11111111111111111111111
00000000000000000000000
11111111111111111111111
00000000000000000000000
11111111111111111111111
00000000000000000000000
11111111111111111111111
00000000000000000000000
11111111111111111111111
00000000000000000000000
11111111111111111111111
0000000000000000000
1111111111111111111
1111111111111111111
0000000000000000000
γ
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
Echantillon
−
Ex. Positifs
Ex. Négatifs
Distribution
Application
Pour un échantillon S de taille m, S est séparable avec une probabilité
(1 − δ)(1 − mε)
Echantillon séparable pour l’apprentissage
Distribution approximativement séparable avec une erreur
arbitrairement petite
Généralisation possible sur une fraction (1 − ε) de la distribution
Projection aléatoire
+
00000000000000000000000
11111111111111111111111
00000000000000000000000
11111111111111111111111
00000000000000000000000
11111111111111111111111
00000000000000000000000
11111111111111111111111
00000000000000000000000
11111111111111111111111
00000000000000000000000
11111111111111111111111
0000000000000000000
1111111111111111111
1111111111111111111
0000000000000000000
γ
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
0000000000000000000
1111111111111111111
Echantillon
Ex. Positifs
Ex. Négatifs
−
Distribution
Projections multiples
Génération d’un tel espace pour tout δ, ε
Projection dans un espace de dimension d1 ≥ d1 ( γ12 , ln
Génération de t(ln δ, ln
m
, d1 )
ε
m
)
ε
espaces de projection
Pour tout échantillon S de taille m, avec une probabilité 1 − δ, au moins
un des t espaces est satisfaisant
Apprendre sur les données projetées
Apprentissage
Algorithme d’apprentissage utilisé : LTF-noise [Byl98]
Borne maximale sur la dimension d2 ≤ d2 (m,
1 1 1
, , )
γ2 ε δ
Dimension d doit convenir à la fois pour la projection (borne minimale
d1 ) et l’apprentissage (borne maximale d2 )
Possible si borne minimale sur m
Apprentissage sur les données projetées dans les t espaces de
projection
Sélection d’un classifieur convenable
Sélection du classifieur
Utilisation d’un ensemble de test
Evaluation du risque empirique de chaque classifieur
Nombre d’exemples suffisant pour une approximation assez précise du
risque réel
Choix du classifieur qui fait le moins d’erreurs
Algorithme
RP-learn(δ,ε,η)
E NTRÉES : Distribution D, m = m(ε, δ, η), m2 = m2 (ε, δ, η),
S = {(x1 , y1 ) . . . (xm , ym )} et S2 = {(p1 , q1 ) . . . (pm2 , qm2 )} tirés selon D
S ORTIES : un classifieur linéaire w et un ensemble de d = d(ε, δ, η) vecteurs
(v1 . . . vd )
Choisir une dimension d’espace de projection d
Déterminer le nombre t = t(ε, δ, η) d’espaces de projection à générer
boucler
Générer d vecteurs (v1i . . . vdi ) selon D
Projeter les exemples de S dans vecthv1i . . . vdi i
Trouver un séparateur linéaire w i avec LTF-Noise
fin boucle
Sélectionner le meilleur couple ((v1i . . . vdi ), w i ) généré en testant sur S2
Sommaire
Double cercle
Taux de bruit η = 0.30
Ensemble d’apprentissage
Ensemble d’apprentissage bruite
10
5
5
0
0
-5
-5
-10
-10
-5
0
5
-10
-5
0
5
Double cercle
Taux de bruit η = 0.30
Ensemble d’apprentissage
Ensemble de test
5
5
0
0
-5
-5
-10
-10
-5
0
5
-10
-10
-5
0
5
Anneau
Taux de bruit η = 0.30
Ensemble d’apprentissage
Ensemble d’apprentissage bruite
10
5
5
0
0
-5
-5
-10
-10
-10
-5
0
5
-5
0
5
10
Anneau
Taux de bruit η = 0.30
Ensemble d’apprentissage
Ensemble de test
5
5
0
0
-5
-5
-10
-10
-5
0
5
-10
-10
-5
0
5
Sommaire
Conclusion
En théorie
RP-learn est un algorithme PAC
Séparation de données non linéairement séparables
Complexités élevées en échantillonnage et en temps
En pratique
Bons résultats avec des espaces de projection de tailles raisonnables
Tolérance au bruit satisfaisante même avec un échantillon de taille
réduite
Ouvertures
Perspectives
Choix d’un noyau adapté au problème
Dimension de l’espace dépendante de la marge
Estimation du taux de bruit
Autres types de bruit
Recherche d’un séparateur optimal : kernel-adatron [FCC98]
D. Angluin and P. Laird.
Learning from Noisy Examples.
Machine Learning, 2, 1988.
A. Blum, A. M. Frieze, R. Kannan, and S. Vempala.
A Polynomial-Time Algorithm for Learning Noisy Linear Threshold
Functions.
In Proc. of 37th IEEE Symposium on Foundations of Computer Science,
pages 330–338, 1996.
T. Bylander.
Learning Linear Threshold Functions in the Presence of Classification
Noise.
In Proc. of 7th Annual Workshop on Computational Learning Theory,
pages 340–347. ACM Press, New York, NY, 1994, 1994.
T. Bylander.
Learning Noisy Linear Threshold Functions.
1998.
E. Cohen.
Learning Noisy Perceptrons by a Perceptron in Polynomial Time.
In Proc. of 38th IEEE Symposium on Foundations of Computer Science,
pages 514–523, 1997.
J. Dunagan and S. Vempala.
Polynomial-time rescaling algorithm for solving linear programs.
In Proc. of the ACM Symposium on Theory of Computing (STOC), 2004.
T. Friess, N. Cristianini, and N. Campbell.
The Kernel-Adatron Algorithm : a Fast and Simple Learning Procedure
for Support Vector Machines.
In J. Shavlik, editor, Machine Learning : Proc. of the 15th Int. Conf.
Morgan Kaufmann Publishers, 1998.
M. Minsky and S. Papert.
Perceptrons : an Introduction to Computational Geometry.
MIT Press, 1969.
F. Rosenblatt.
The Perceptron : A probabilistic model for information storage and
organization in the brain.
65 :386–407, 1958.
L. Valiant.
A theory of the learnable.
Communications of the ACM, 27 :1134–1142, 1984.
Téléchargement