1 Propagation de messages dans les mod`eles gaus

publicité
Mastere M2 MVA 2010 - Modèles graphiques
Exercices à rendre pour le 15 décembre 2010.
Ces exercices doivent s’effectuer seul.
1
Propagation de messages dans les modèles gaussiens
Soit un modèle graphique Gaussien non-orienté de paramètres canoniques η ∈ Rn
(le vecteur potentiel) et Λ ∈ Rn×n (la matrice de précision). On considère le cas
où la variable aléatoire correspondant à chaque noeud est une variable Gaussienne
scalaire et où le modèle graphique est un arbre G = (V, E). On s’intéresse au calcul
des lois marginales par l’algorithme de propagation de messages (PM). L’algorithme
de propagation des messages tel que vu en cours échange des messages qui sont des
fonctions-potentiels de R dans R.
1. Montrer qu’en pratique, la PM peut s’implémenter en échangeant des messages ms→t qui sont des exponentielles de fonctions quadratiques. Calculer les
équations de propagation des messages pour ces fonctions quadratiques.
2. Montrer qu’au terme de l’algorithme, le calcul des marginales sur les noeuds et
les arêtes permet de calculer µ = E[X] et (E[Xs Xt ]){s,t}∈E .
3. Quelle est la complexité de l’algorithme PM ? Quelle est la complexité du calcul
de µ à partir de Λ et η dans le cas général du modèle Gaussien ? Dans le cas ou
le modèle graphique est un arbre ? Commentez.
2
Apprentissage de la structure d’un arbre
Dans cet exercice, un algorithme pour apprendre la structure d’un modèle graphique
à partir de données i.i.d sera dérivé pour les arbres.
1. Préliminaire I (entropie marginale) : Soit une variable aléatoire discrète X à
valeurs dans un ensemble fini X . Soit η(x) = p(X = x) le vecteur de paramètres.
Soit un échantillon i.i.d (xn ), n = 1, . . . , N de taille
variable. On note
P N de cette
n
δ(x
=
x).
Montrer que la
p̂(x) la densité empirique, définie par p̂(x) = N1 N
n=1
P
N
n
log-vraisemblance conditionnelle maximale maxη n=1 log p(x |η) est égale à :
max
η
N
X
log p(xn |η) = −NH(X),
n=1
où H(X) est l’entropie empirique de X, définie par H(X) = −
X
x∈X
1
p̂(x) log p̂(x).
2. Préliminaire II (entropies jointe et conditionnelle) : Soient deux variables aléatoires
discrètes X, Y à valeurs dans des ensembles finis X et Y. Soit η(x, y) = p(Y =
x|X = x) la matrice de paramètres de la loi conditionnelle. Soit un échantillon
i.i.d (xn , y n), n = 1, . . . , N de taille N de ces
variables. On note p̂(x, y) la
Pdeux
N
1
densité empirique, définie par p̂(x, y) = N n=1 δ(xn = x)δ(y n = y). Montrer
P
n n
que la log-vraisemblance conditionnelle maximale maxη N
n=1 log p(y |x , η) est
égale à :
N
X
log p(y n |xn , η) = N(H(X) − H(X, Y ))
max
η
n=1
où H(X, Y ) l’entropie (jointe) empirique de (X, Y ) est définie par
H(X, Y ) = −
XX
p̂(x, y) log p̂(x, y).
y∈Y x∈X
3. On considère maintenant P variables aléatoires X1 , . . . , XP à supports finis
X1 , . . . , XP . On considère N observations i.i.d. de ces P variables, (xnp ), p =
1, . . . , P , n = 1, . . . , N. On note p̂(x1 , . . . , xP ) la densité empirique, définie
comme suit :
N
1 X
δ(xn1 = x1 ) · · · δ(xnP = xP ).
p̂(x1 , . . . , xP ) =
N n=1
Cette densité jointe permet de définir des densités marginales p̂(xp , xq ) et p̂(xq )
par marginalisation.
Soit un arbre couvrant orienté T à P sommets (i.e., un DAG connexe avec
au plus un parent par sommet). Quelle est la paramétrisation la plus générale
pour une loi p(x1 , . . . , xP ) se factorisant dans un tel DAG ? Montrer qu’une fois
maximisée par rapport à ces paramètres, la log-vraisemblance des données est
égale à :
P
X
H(Xπp (T ) ) − H(Xp , Xπp (T ) )
ℓ(T ) = N
p=1
(avec les conventions H(Xp , X∅ ) = H(Xp ) et H(X∅ ) = 0)
4. Pour tout p, q, on appelle information mutuelle empirique la quantité I(Xp , Xq ) =
−H(Xp , Xq ) + H(Xp) + H(Xq ). Exprimer cette quantité comme une divergence
de Kullback-Leibler et montrer qu’elle est positive ou nulle.
5. Exprimer ℓ(T ) à l’aide des informations mutuelles. Comment maximiser ℓ(T )
par rapport à l’arbre T ? Retrouver un problème classique de théorie des graphes,
et décrire un algorithme permettant d’apprendre la structure de l’arbre ayant
le maximum de vraisemblance. Quelle est sa complexité ?
2
3
Implémentation - HMM
On considère les mêmes données d’apprentissage que le devoir précédent, dans le
fichier “EMGaussienne.dat”, mais cette fois-ci en considérant la structure temporelle,
i.e., les données sont de la forme ut = (xt , yt ) où ut = (xt , yt ) ∈ R2 , pour t =
1, . . . , T . Le but de cet exercice est d’implémenter l’inférence dans les HMM ainsi que
l’algorithme EM pour l’apprentissage des paramètres. Il est conseillé d’utiliser le code
du devoir précédent.
On considère le modèle HMM suivant avec une chaı̂ne (qt ) à K=4 états et matrice
de transition a ∈ R4×4 , et des “probabilités d’émission” Gaussiennes : ut |qt = i ∼
N (µi , Σi ).
1. Implémenter les récursions α et β vues en cours et dans le polycopié pour estimer
p(qt |u1, . . . , uT ) et p(qt , qt+1 |u1 , . . . , uT ).
2. Calculer les équations d’estimation de EM.
3. Implémenter l’algorithme EM pour l’apprentissage (on pourra initialiser les
moyennes et les covariances avec celles trouvées dans le devoir précédent).
4. Implémenter l’inférence pour estimer la séquence d’états la plus probables,
i.e. arg maxq p(q1 , . . . , qT |y1, . . . , yT ), et représenter le résultat obtenu avec les
données (pour le jeu de paramètres appris par EM).
5. Commenter les différents résultats obtenus avec ceux du devoir précédent. En
particulier, comparer les log-vraisemblances, sur les données d’apprentissage,
ainsi que sur les données de test (dans “EMGaussienne.test”).
3
Téléchargement