apprentissage de modèles probabilistes - ... · • réseau de neurones w ... • notes de cours...

21
1 Apprentissage de modèles probabilistes DEA Génomique Informatique F. Coste, 2002-2003 Exemple Apprendre concept « gens aisés » (revenu > moyenne) Objets à classer O : population française Description D : {répondeur, répondeur} Classes : {aisé, aisé} • Echantillon représentatif 40% pop. est aisée 80% pop aisée a un répondeur, sinon seulement 45% Classe k aisé aisé P(k) 0,4 0,6 P(répondeur/k) 0,8 0,45

Upload: ngonhan

Post on 15-Sep-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

1

Apprentissage de modèles probabilistes

DEA Génomique InformatiqueF. Coste, 2002-2003

Exemple

Apprendre concept « gens aisés » (revenu > moyenne)

• Objets à classer O : population française • Description D : {répondeur, répondeur}• Classes : {aisé, aisé}• Echantillon représentatif

40% pop. est aisée80% pop aisée a un répondeur, sinon seulement 45%

Classe k aisé aisé

P(k) 0,4 0,6

P(répondeur/k) 0,8 0,45

Page 2: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

2

Rappels de probas…

• Probabilité• Probabilité conjointe• Probabilité conditionnelle• Probabilité marginale• Indépendance• Règle de Bayes

Règles de classification

• Majoritaire∀o, hmaj(o) = aisé

• Maximum de vraisemblancechoix de la classe pour laquelle la description est la plus probableargmax k∈[1,C] P(d/k)

hmaxv (répondeur) = aisé ; hmaxv (répondeur) = aisé

Pb : classification en {Télécom, Médecin, Ouvrier} avec P(répondeur/Télécom) = 1

⇒ hmaxv (répondeur) = Télécom

Classe k aisé aisé

P(k) 0,4 0,6

P(répondeur/k) 0,8 0,45

Page 3: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

3

Règles de classification

• Bayesclasse de probabilité maximale pour la description

argmax k∈[1,C] P(k/d) = argmax k∈[1,C] P(d/k) × P(k)

Rappel formule de Bayes P(k/d) =

P(répondeur/aisé) × P(aisé) = 0,8×0,4 = 0,32P(répondeur/aisé) × P(aisé) = 0,45×0,6 = 0,27P(répondeur/aisé) × P(aisé) = 0,2×0,4 = 0,08P(répondeur/aisé) × P(aisé) = 0,55×0,6 = 0,33

Nécessite connaissance de P(d/k) et P(k) !...

Classe k aisé aisé

P(k) 0,4 0,6

P(répondeur/k) 0,8 0,45

P(d/k) P(k)P(d) indépendant de k

hBayes (répondeur) = aisé

hBayes (répondeur) = aisé

Propriétés du classificateur de BayesCBayes(d) = argmax k∈[1,C] P(k/d)

= argmax k∈[1,C] P(d/k) × P(k)

• Si E(CBayes) = 0 alors c(o1) ≠ c(o2) ⇒ d(o1) ≠ d(o2)(le problème est dit déterministe)

• Classification d’erreur minimale

∀h, E(CBayes) ≤ E(h) ≤ E(Majoritaire)

Mais nécessite connaissance de P(d/k) et P(k) !

Page 4: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

4

Classificateur naïf de BayesApproximation de P(d/k) et P(k) inconnus

si D = A1 × A2 × ... × AmCBayes(d) = argmax k∈[1,C] P(<a1, ... , am>/k) × P(k)

si valeurs des attributs indépendantes sachant k (!) P(<a1, ... , am>/k) = ∏i∈[1,m] P(ai/k)

alors en notant P(ai/k) l'estimation de P(ai/k)(proportion d'objets de classe k, ayant comme ième attribut ai)

Hypothèses « fausses », mais bons résultats en pratique...

CNaiveBayes(d) = argmax k∈[1,C] ∏i∈[1,m] P(ai/k) × P(k)^ ^

^

Application à la classification automatique de textes

Page 5: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

5

Le corpus(François Denis : www.cmi.univ-mrs.fr/~fdenis/)

• Corpus : 100 premiers mots des fables de la Fontaine et d’Esope

• Ai : mot figurant à la ième positionLa cigale ayant chanté tout l’été...

A1 = la, A2 = cigale, ...

• Possibilité d’utiliser à la place des mots le résultat de l’analyse lexicale et morphologique (prétraitement)

La pianiste donne le la à la cantatrice.A1 = article(la, féminin, singulier), A2 = nom(pianiste, féminin, singulier)...

Indépendance des attributs ?

Probabilité d’observer une phrase d’une classe donnéene dépend que de la probabilité d’observer les mots enleur position.

Soit, pour l’exemple, il faudrait supposer que :p(La cigale ayant... / Esope)

= p(A1 = La / Esope) × p(A2 = cigale / Esope) × ... !!!

Page 6: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

6

Pourquoi ça marche ?

• Hypothèse nécessaire :

Supposer l’indépendance des attributsne doit pas être plus pénalisant dansune classe que dans une autre

Représentation par sac de mots

Hyp. : probabilité de trouver un mot à une position donnée est indépendante de la position

p(La cigale ayant... / Esope)

= p(La / Esope) × p(cigale / Esope) ...

→ Représentation par sac de mots (bag of words)La pianiste donne le la à la cantatrice.

{à, cantatrice, donne, la, la, la, le, pianiste}La France bat l’Italie en finaleL’Italie bat la France en finale

{bat, en, France,Italie, finale, l, la,}

Page 7: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

7

Règle de classification « Bayes naïf sur sac de mots »

• Choisir pour une suite de mots m1..mlla classe ck qui maximise :

où p(mi|ck) estimation de la probabilité de trouver mot mi dans la classe ck

Une première estimation

Term Frequency : nombre d'occurrences du mot m dans la classe c

Nombre de documentsNombre de documents de classe c

Page 8: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

8

Estimateur de Laplace(Mitchell, Vapnik ?)

• Probabilité non nulle pour les mots inconnus

On a bien pour toute classe c :

Bayes naïf sur sac de mots• Difficile de faire mieux ?

An ongoing surprise and disapointment is that structurally simple representation produced without linguistic or domain knowledge have been as effective as any others [Lewis 98]

• Variantes :– Binary independence model (BIM)– Sélection d’un sous ensemble de mots pertinents– ...

• Voir aussi : Classifieurs TFIDF« plus proches voisins sur une sélection de mots »

Page 9: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

9

Sélection d’un bon sous ensemble du vocabulaire

• Bayes Naïf Sac de mots : environ 50000probabiblités à évaluer par auteur...

• Idées :– supprimer les mots les plus rares– supprimer les mots les plus courants (et, le, ...)– sélectionner les mots les plus discriminants :

choisir le sous-ensemble de mots induisant les gains en information les plus importants.

Apprentissage de HMM• Cette partie du cours fait de larges emprunts aux transparents suivants :

– Hidden Markov Model and multiple sequence alignment, S. C. Schmidler :http://scpd.stanford.edu/SOL/courses/proEd/RACMB/downloads/april13part2_4_13_99_Sc2.pdf

– Modèles de Markov cachés et application à la bioinformatique, L. Bréhélin, équipe MAAS,LIRMM http://www.lirmm.fr/~~rivals/DEA/Plan.html#secmateriaux (voir aussi « document » )

– Profile Hidden Markov Models, W. Zhang

• Références :– An introduction to HMM for biological sequences , Anders Kroghhttp://linkage.rockefeller.edu/wli/gene/krogh98.pdf

– Profile hidden Markov models , Bioinformatics Review 1998, Sean Eddy (PFAM) http://www.genetics.wustl.edu/eddy/people/eddy

• Autres liens :– Page tutoriel HMM de ISMB99 : http://www.cse.ucsc.edu/research/compbio/ismb99.tutorial.hml

– Introduction aux HMM « interactive » :

http://www.comp.leeds.ac.uk/scs-only/teaching-materials/HiddenMarkovModels /html_dev/main.html

– Prédiction d’hélice transmembranaire sur le Web par HMM :http://www.cbs.dtu.dk/services/TMHMM1.0/TMHMM1.0.guide.html

Page 10: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

10

HMM

Modèles de Markov Cachés (Hidden Markov Models)

• Introduits par Baum dans les années 60.• Utilisés à partir des années 80 en reconnaissance

de la parole où ils se sont rapidement imposéscomme un modèle de référence.

• Appliqués ensuite à la reconnaissance de textes manuscripts, au traitement d’images…

…et à la Bioinformatique.

Chaînes de Markov• Chaîne de Markov

P(X0,X1,…,Xt) = P(X0)P(X1/X0)…P(Xt/Xt-1)• Formellement

– Epace d’états– Matrice de transition– Distribution initiale

→ un automate stochastique :

,…,

Page 11: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

11

Séquences générées

• = séquences d’étatspar exple :

• Graphiquement :

• C’est bien une chaîne de Markov :

S0 S1 S1 S1 S0 S1 …

Exemple

• Génération d’une chaîne de markov « d’ADN » :

• Probabilité de la séquence :

Fréquence des dinucléotides (« base stacking »)

Page 12: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

12

• Séquence observé est une fonction probabiliste sur une chaîne de markov sous-jacente

Exemple : HMM « ADN bruitée »

Séquence d’états « cachée »,seulement séquence observée

Chaînes de Markov Cachées

Exemples sur protéines

• Prédiction de structure secondaireEtats = structure secondaire(Asai et al, Stultz et al)

• Reconnaissance de repliements(Moult, Hubbard et. al.)

P(aa/H)P(aa/H) P(aa/H) P(aa/L) P(aa/L)

Page 13: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

13

HMM

• Used for fold-recognition (Hubbard et. al.)

Différents types de HMM…• Observable :

– discret P(ok|s) – continu ps (o)

• gaussienne µ,σ• mélange de gaussiennes {µn,σ n}• réseau de neurones W• ...

• Matrice de transition :– « entière » : HMM ergodique (complètement connecté)– diagonale : modèle gauche-droite– ...

Page 14: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

14

HMMGénération de abcccb :

Visuellement

Page 15: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

15

Les 3 problèmes classiques

Problème 1

Page 16: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

16

Approche directe

2T multiplications par séquences d’états possiblesDans le pire cas, NT séquences d’états possibles

⇒ O(T NT) opérationsExple : N = 5, T = 100 ⇒ ≈1072 opérations !

On parcourt toutes les séquences d’états

possibles :

La procédure forward

S

Tt+1t1α

S1

S2

SN

Page 17: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

17

La procédure backward

S

Tt+1t1β

S1

S2

SN

Forward-Backward

→ probabilité de générer Ot en Sj =

S

Tt+1t1α,β

S1

S2

SN

Page 18: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

18

Problème 2

Algorithme de Viterbi

S

Tt+1t1δ

S1

S2

SN

Chaînage arrière

Page 19: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

19

Problème 3

Facilement généralisable à un ensemble de séquences

Principe du maximum de vraisemblance

• Initialisation du modèle λ• Répéter

– [E] : calcul de αt(s) et βt(s) pour tout t(Forward/Backward)

– [M] : P(s→s’) = P(s→s’)P(o|s) = P(o|s)

• jusqu’à « stabilité » de la vraisemblance

On peut montrer que P(O|λ’) > P(O|λ)Convergence vers un optimum local !

(détails des estimateurs dans transparents de Laurent Bréhélin)

Algorithme de Baum Welch(Expectation-Maximization)

Page 20: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

20

Apprentissage paramétrique…• HMM, (PA)

• Stochastic CFG Inside Outside, O(n3) [Lari et al 90]Tree Grammar EM à partir d’exemples structurés, O(n) pour la modélisation de familles d’ARN [Skakibara et al 94]

• Stochastic Ranked Node Rewriting GrammarPredicting Protein secondary structure using Stochastic Tree Grammars [Abe & H. Mamitsuka 97]

En guise de conclusion

• Apprentissage de modèles• Apprentissage de paramètres (« entraînement »)

• Mixer les deux...Travaux récents sur l’apprentissage de la structure et des paramètre de HMM (ou l’inférence d’automates stochastiques)Alergia [Oncina et al 93], [Stolcke et al 94],MDI [Dupont,Thollard 00]…

Page 21: Apprentissage de modèles probabilistes - ... · • réseau de neurones W ... • Notes de cours d'apprentissage automatique et exercices de F. Denis et ... (en particulier la partie

21

Cours d’apprentissage…

• Notes de cours d'apprentissage automatique et exercicesde F. Denis et R. Gilleron, GRAPPA, Univ. Lille

(Problématique, arbres de décision, réseaux de neurones)http://www.grappa.univ- lille3.fr/grappa/index.php3?info=apprentissage

• Cours d’apprentissage de Y. Bengio, IRO, Univ. Montréal(en particulier la partie sur les réseaux de neurones)

http://www.iro.umontreal.ca/~bengioy/ift6266/

• Ron Rivest ’s Machine Learning Coursehttp://theory.lcs.mit.edu/~mona/6858-F94.html