apprentissage de règles à partir de données multi-instances soutenance de thèse de yann...
TRANSCRIPT
ApprentissageApprentissage
de règles à partir dede règles à partir de
données données multi-instancesmulti-instances
Soutenance de thèse de Yann Chevaleyre
sous la direction de Jean-Daniel Zucker Université de Paris VI – LIP6 - équipe ACASA
Cadre et motivation
ReprésentationReprésentationintermédiaire ?intermédiaire ?
Une image contientun extincteur ssiR > 110 et B < 180Contient un
extincteur+Ne contient pasd ’extincteur
-
R V B128 55 182
R V B47 75 200
mutagène+ non mutagène-
Une molécule M est mutagène ssiatom(M,A1,X),charge(A1,0.17), atom(M,A2,c),bond(A1,A2),...
atom(m1,a1,c), charge(a1,0.21),atom(m1,a2,h), charge(a2,-0.1),bond(a1,a2), atom(m1,a3,c), ...
Représentationrelationelle
ReprésentationAtt/Val
multi-instancesmulti-instances
La représentation multi-instances
est représenté par Vecteur A/V xi
exemple iest représenté par
Vecteur A/V xi,1
Vecteur A/V xi,2
Vecteur A/V xi,r
exemplei
instancessac
Représentation Att/Val classique:
Représentation multi-instance:
R V B128 55 182
R V B101 129 45
25 190 194 1 20
Sources de données multi-instances
Données « naturellement » multi-instances, i.e. ayant Données « naturellement » multi-instances, i.e. ayant plusieurs configurationsplusieurs configurations
Reformulation de représentations plus complexes (Reformulation de représentations plus complexes (clauses clauses prolog, BD relationelles …) prolog, BD relationelles …) [Zucker et Ganascia 96], [Zucker et Ganascia 96], [Alphonse et Rouveirol 2000],[Lavrac01][Alphonse et Rouveirol 2000],[Lavrac01]
x1
x245°
x1
x245° x1 x2
3.1 1.32.5 1.2
atom(m1,a1,c), charge(a1,0.21),atom(m1,a2,h), charge(a2,-0.1),bond(a1,a2), atom(m1,a3,c), ...
ProblématiquProblématiquee
Concevoir des Concevoir des algorithmes efficacesalgorithmes efficacestraiter des données traiter des données symboliques et numériquessymboliques et numériquesgénérer des générer des hypothèses compréhensibleshypothèses compréhensibles
IteratedDiscrimAPR [Dietterich97]* hyper-rectangles
DiverseDensity [Maron98]* point dans l ’espace des inst.
citation-kNN [Zucker et Wang 00]* k-ppv
Les algorithmes existants
Numériques Symboliques & numériques
Enigme+ [Zucker et Ganascia94]* ensembles de règles
Relic [Ruffo00]* arbres de décision
Plan
• 1) L ’apprentissage multi-instances linéaire
• 2) Extension d ’un algorithme top-down
- principe, extension de RIPPER, complexité
• 3) Analyse et amélioration de l ’extension multi-instances de Ripper
– les littéraux indiscernables, les modèles génératifs, mesure de
couverture probabiliste
• 4) Prise en compte du bruit multi-instances
• 5) Expérimentations
• Conclusion et perspectives
Le problème d ’apprentissage
A partir de B+,B- ensembles desacs positifs (resp. négatifs),
trouver une hypothèse correcte
Problème d ’apprentissageProblème d ’apprentissagemulti-instancesmulti-instances
langage langage k-linéairek-linéaire un sac est classé + ssiil possède une instance ayant la propriété P1et une instance ayant la propriété P2,etc...
langage langage multi-linéairemulti-linéaire
Le problème d ’apprentissage
A partir de B+,B- ensembles desacs positifs (resp. négatifs),
trouver une hypothèse correcte
un sac est classé + ssiil possède k instances ayant la propriété P
Problème d ’apprentissageProblème d ’apprentissagemulti-instancesmulti-instances
langage langage k-linéairek-linéaire
Le problème d ’apprentissage MI linéaire
A partir de B+,B- ensembles desacs positifs (resp. négatifs),
trouver une hypothèse correcte
Problème d ’apprentissageProblème d ’apprentissagemulti-instancesmulti-instances
Problème Problème multi-instancesmulti-instances[Dietterich 97][Dietterich 97]
Trouver une fonction h qui couvreau moins une instances de chaque sac positifet aucune instance des sacs négatifs
un sac est classé + ssiil possède une instance ayant la propriété Plangage langage linéairelinéaire
Avec le langage linéaire, on cherche un concept Avec le langage linéaire, on cherche un concept hh propositionnel. propositionnel.
Algorithmes propositionnels efficaces et précisAlgorithmes propositionnels efficaces et précisRipper (Cohen 95), C4.5 (Quinlan 93)Ripper (Cohen 95), C4.5 (Quinlan 93)
adapter un algorithme propositionnel au cas multi-instancesadapter un algorithme propositionnel au cas multi-instances
Approche: Approche: Extension d ’un algorithme d apprentissage top-down
Représenter Représenter l ’ensemble des sacs l ’ensemble des sacs sous la forme sous la forme d ’un d ’un ensemble de vecteursensemble de vecteurs..
att1 att21.2 c-33 a
att1 att27.9 a
b1+b1+
b2-b2-ajout de bag-id et du
label à chaque instance
att1 att2 bag-id lab1.2 c 1 +-33 a 1 +
7.9 a 2 -
Mesurer la couverture Mesurer la couverture au sens multi-instances au sens multi-instances de l ’hypothèse en de l ’hypothèse en cours de raffinementcours de raffinement
Extension de l ’algorithme Ripper (Cohen 95)
• Naive-RipperMi Naive-RipperMi [Chevaleyre, Zucker 00] est l ’extension de Ripper[Chevaleyre, Zucker 00] est l ’extension de Ripper au cas multi-instances au cas multi-instances
Algorithme Accuracy Type d'hypothèseIterated Discrimin 92.4 APRDiverse Density 88.9 point dans l'espace des instRipper-MI 88 ens. de règles (avg 7 litterals)Tilde 87 arbre de décision d'ordre 1All positive APR 80.4 APR
Multi-Inst 76.7 APR
Naive-Ripper-MINaive-Ripper-MI a été testé sur les bases multi-instances a été testé sur les bases multi-instances musk musk (Dietterich 97)(Dietterich 97)
Sur Sur musk1 musk1 (5,2 inst. par sac en moyenne), bonnes performances.(5,2 inst. par sac en moyenne), bonnes performances.Sur Sur musk2musk2 (65 instances par sac), performances moyennes (77%). (65 instances par sac), performances moyennes (77%).
Complexité et précision de NaiveRipperMi
• Validation de NaiveRipperMi sur des BD artificielles• Temps CPU : linéaire en fonction du nb de sacs et d ’instances (50000 sacs, 10 inst / sac, 12 attributs : 1 min)
5 10 15 20 250
10
20
30
40
50
Nombre d ’instances par sac
Tau
x d
’err
eur
(%)
TILDE [blockheel98]
FOIL [quinlan90]
NaiveRipperMI
90 s700 s3 s
Chausses trappes de l ’apprentissage multi-instances
3 chausses trappes survenant lors de l ’apprentissage3 chausses trappes survenant lors de l ’apprentissage
Les Les littéraux erronés littéraux erronés modification de l ’élagage modification de l ’élagage
Les Les littéraux contradictoires littéraux contradictoires partitionnement de l ’espace partitionnement de l ’espace des instances des instances
Les Les littéraux indiscernableslittéraux indiscernables
5 sacs +5 sacs +• sac de triangles blancs• sac de carrés blancs...
• sac de triangles noirs• sac de carrés noirs• ...
5 sacs -5 sacs -
Y
X2 4 6 8 10 12
2
4
6
8
X
Y
2 4 6 8 10 12
2
4
6
Chausses trappes: les littéraux indiscernables
Quand le nombre d ’instances par sac augmente, les littéraux Quand le nombre d ’instances par sac augmente, les littéraux initiaux couvrent tous les sacs. initiaux couvrent tous les sacs.
Concept cible
Y > 5
X
Y
2 4 6 8 10 12
2
4
6
Chausses trappes: les littéraux indiscernables
Quand le nombre d ’instances par sac augmente, les littéraux Quand le nombre d ’instances par sac augmente, les littéraux initiaux couvrent tous les sacs. initiaux couvrent tous les sacs.
Concept cible
X > 7
Important lorsque nb d ’instances >> nb d ’attributsImportant lorsque nb d ’instances >> nb d ’attributs
Remèdes en PLIRemèdes en PLI lookahead lookahead FoilFoil [Quinlan90], [Quinlan90], TildeTilde [Blockheel98] [Blockheel98]
top-down / bottom-up top-down / bottom-up ProgolProgol [Muggleton 95] [Muggleton 95]
relational clichés relational clichés [Morin, Matwin 00][Morin, Matwin 00]
Accroissement de la complexitéAccroissement de la complexité
Prendre en compte le nombre d ’instances couvertesPrendre en compte le nombre d ’instances couvertes
Chausses trappes: les littéraux indiscernables
Modèles génératifs multi-instances
Modèle < Modèle < DD,,ff> > (d ’après (d ’après [Blum 98][Blum 98]))• r instances sont tirées i.i.d. d ’une distribution D• le sac résultant est étiqueté selon un concept f
Limitations•Nb instance/sac Proba(sac- ) •Une seule distribution pour les + et les -Les données réelles respectent rarement ce modèle
il modélise la façon dont les données ont été construites
Un nouveau modèle génératif multi-instances
Modèle < Modèle < DD++, , DD--, , f,qf,qnegneg>>
Caractéristiques• Pr(sac- ) = qneg
• Deux distributions pour les + et les -• Facilement extensible à un nombre variable d’instances• Ne subsume pas < < DD,,ff>>
+ r-1 instances tirées de D+
1 instance tirée du concept f
- r instances tirées de
D-
Une heuristique basée sur le nouveau modèle
Calculer pour chaque sac positif:Calculer pour chaque sac positif: Pr(l’une des instances couvertes Pr(l’une des instances couvertes concept cible) concept cible)
X
Y
2 4 6 8 10 12
2
4
6
Concept cible
Y > 5
Calcul Analytique de la Probabilité
k= nb d ’instances de b+ couvertesk= nb d ’instances de b+ couvertes r= nb d ’inst. total de b+ r= nb d ’inst. total de b+
Pr(l ’une des instances couvertes de b+ Pr(l ’une des instances couvertes de b+ concept cible) = concept cible) =
1− 1−kr
⎛ ⎝ ⎜
⎞ ⎠ ⎟ ×PD+ ¬f( )
k
• Nombre d’ instance variable• 0 instances couvertes Pr = 0• r instances couvertes Pr = 1
• Si les données ne respectent pas ce modèle, cela n ’a pastrop d ’impact négatif
k
Propriétés
Analyse de RipperMi: expérimentations
Sur le problème de la mutagénèseSur le problème de la mutagénèse représenté sous forme représenté sous forme multi-instances, multi-instances, NaiveRipperMi: 78% RipperMi-refined-cov: NaiveRipperMi: 78% RipperMi-refined-cov: 82%82%
5 10 15 20 250
10
20
30
40
50
Nombre d ’instances par sac
Tau
x d
’err
eur
(%) TILDE
FOILNaiveRipperMIRipperMI-refined-cov
Le bruit multi-instances
Modèles usuels de bruit:bruit de classification, d’attribut, bruit malicieux
Modèles de bruit typiquement multi-instances Instances de sac + remplacée par
des instances de sac -
Instances manquantes
Sources de bruit d ’instances manquantes Propositionalisation stochastique [Sebag 97] occlusion d ’une partie de l ’objet
• Soit b, un sac positif, et h une hypothèse• On suppose que q instances par sac ont été retirées
• Si h ne couvre aucune instance de b :
P(hcouvrel'unedesqinst.)≥1−r
r−1PINST+(¬h)
⎛ ⎝ ⎜
⎞ ⎠ ⎟ q
Le bruit multi-instances: q instances retirées
• connaissance de q• exponentiellement imprécis en q
• Alternative à la mesure de couverture probabiliste• Même si le nombre « q réel » est grand, utiliser q petit plutot que rien
-
+
Prise en compte du bruit multi-instances
•BD Musk1: Seules les configurations les plus probables ont été encodées
q (1
0 -v a
l ida
tio
n c
rois
ée
)
Application : apprentissage perceptif d ’un robot
[Collaboration Bredeche]
W
IF Color = red AND size > 53 THEN Extincteur
Main color Size X/Y ratio YposRed 12 1,5 152Green 56 0,34 11Blue 176 0,2 11
Que voistu ?
Je voisun extincteur
lab = extinct
Images étiquetées350 images
160 x 120 pixels6,3 Mo
PorteHumain
PorteCendrierAscenseur
Description abstraite de l’image m x n pixels
PorteCendrierExtincteurAscenseur
Application à apprentissage perceptif d ’un robot: résultats
Application à apprentissage perceptif d ’un robot: complexité
Application à l ’apprentissage supervisé d ’un robot
Description abstraite de l ’image 8 x 6 pixels
…… …
Motif de reformulation:
PLIC [Bredeche,chevaleyre 01] : Reformulation Reformulation itérative d ’une grille de pixelsitérative d ’une grille de pixels
Conclusion
La représentation MI offre La représentation MI offre une bonne alternativeune bonne alternative à Att/val à Att/val
Analyse de la Analyse de la spécificitéspécificité de l ’apprentissage MI de l ’apprentissage MI
Nouveau modèle génératif Nouveau modèle génératif < < DD++, , DD--, , f,qf,qnegneg> > plus réaliste plus réaliste
Identification de trois chausses-trappesIdentification de trois chausses-trappes
Conception et validation d ’un modèle de bruit MI Conception et validation d ’un modèle de bruit MI
Algorithme Algorithme RipperMIRipperMI capable de gros volumes de données capable de gros volumes de données (40Mo)(40Mo)rapidement (linéaire) et générant des hyp. concicesrapidement (linéaire) et générant des hyp. concices
Les Les littéraux erronés littéraux erronés modification de l ’élagage modification de l ’élagage Les Les littéraux contradictoires littéraux contradictoires partitionnement de l ’espace partitionnement de l ’espace
des instances des instances Les Les littéraux indiscernables littéraux indiscernables couverture probabiliste couverture probabiliste
Perspectives
Développement de modèles plus réalistes, pour obtenir de Développement de modèles plus réalistes, pour obtenir de meilleurs heuristiques (éventuellement meilleurs heuristiques (éventuellement non linéairenon linéaire))
Développement de techniques de Développement de techniques de sélection d’instancessélection d’instances et et d d ’attributs’attributs lorsque le nombre d ’instances est grand, lors d ’une lorsque le nombre d ’instances est grand, lors d ’uneMI-propositionalisation par exempleMI-propositionalisation par exemple
Autres algorithmes : méthode bottom-upAutres algorithmes : méthode bottom-up
Extension des techniques d Extension des techniques d ’estimation de densité et p-concepts’estimation de densité et p-concepts au multi-instances au multi-instances
Fiabilité et rapidité de RipperMI => Nombreuses applications, en Fiabilité et rapidité de RipperMI => Nombreuses applications, en particulier particulier intégrées dans des robots mobilesintégrées dans des robots mobiles
---------------------- calling RippMi -------------------RippMi -m -R -k10 -c -a+freq -ins "/home/bredeche/Experimentations/SdgAll/w23.data" ---------------------------------------------------------Handling MIP problem option: will set random seed from clock 10-fold cross-validation data is noisy find rules for least frequent classes first allow numerical symbolic improvements Final hypothesis is: true :- valH1>=254, stdevB1<=56, stdevS1<=58, valB2<=128 (64/0). true :- ampH3>=254, y1>=3, ampV1>=250, S1<=91 (47/0). true :- ampH3>=254, V3<=110.5, ampR3<=220.5, S1<=185 (31/0). true :- ampH3>=253, ampV1>=239, ampG3<=227, H2<=50, stdevG3>=47 (12/0). true :- ampH3>=253, y1>=3, ampR1>=245, stdevV2<=37, H1>=71 (7/0). true :- B3<=1, stdevS1>=44, R1<=74 (4/0). true :- R3>=244, B1>=211, ampR1>=151 (3/0). true :- stdevV1>=89, ampH2<=23, B3<=44 (2/0). default false (178/1). =============================== summary =============================== Train error rate: 14.93% +/- 0.70% << Average time: 11.94 +/- 0.16 sec Hypothesis size: 8 rules, 40 conditions
123