Expressivité comparée des modèles HMM et RNN
HMM, RNN et modèles génératifs unifiés (GUM)
Comme expliqué dans le chapitre 2, nous rappelons que la loi jointe des observations modélisée par un HMM est la marginale d’une loi jointe p(h0:t , x0:t) qui s’écrit à partir de la donnée des lois p(h0), p(hs+1|hs) et p(xs|hs) pour tout s, p(h0:t , x0:t) = p(h0) t Y−1 s=0 p(hs+1|hs) Y t s=0 p(xs|hs). (6.1) Par ailleurs, dans un RNN génératif, on construit directement la loi jointe des observations p(x0:t) = p(x0) t Y−1 s=0 p(xs+1|x0:s−1) = p(x0) t Y−1 s=0 p(xs+1|hs), (6.2) où hs est fonction de x0:s : hs = f(hs−1, xs) et p(xs|hs) une loi donnée. À une translation près des indices temporels utilisés pour les RNN (on considérera à présent ht ← ht−1), on remarque que les deux modèles sont caractérisés par la loi conditionnelle de xt sachant ht , mais que la construction des variables latentes ht diffère : dans le premier cas, ht est aléatoire et est caractérisé par la loi p(ht |ht−1); dans le second cas, ht est une fonction déterministe de ht−1 et xt−1. Dans les deux cas, la paire (ht , xt) est markovienne, c’est-à-dire p(ht , xt |h0:t−1, x0:t−1) = p(ht , xt |ht−1, xt−1) = p(ht |ht−1, xt−1)p(xt |ht , ht−1, xt−1). (6.3) Notamment, dans les deux modèles, p(xt |ht , ht−1, xt−1) = p(xt |ht), (6.4) 126 mais, pour un HMM : p(ht |ht−1, xt−1) = p(ht |ht−1); (6.5) pour un RNN : p(ht |ht−1, xt−1) = δf(ht−1,xt−1) (ht) × p(xt |ht), (6.6) (où δ est une fonction de Dirac). Finalement, HMM et RNN sont un cas particulier d’un même modèle qu’on appellera modèle génératif unifié (Generative Unified Model ou GUM) dans lequel p(ht , xt |ht−1, xt−1) = p(ht |ht−1, xt−1)p(xt |ht), (6.7) et dont les représentations graphiques sont données dans la figure 6.2. ht−1 ht xt−1 xt (a) HMM ht−1 ht xt−1 xt (b) RNN ht−1 ht xt−1 xt (c) GUM Figure 6.2 – Dépendances conditionnelles dans les RNN, HMM, et GUM. Les arcs en pointillés représentent les dépendances déterministes. Les arcs pleins représentent les dépendances probabilistes. Afin de comparer la loi des observations p(x0:t) induite par chacun des modèles HMM et RNN, nous nous plaçons dans le cadre général du GUM, dans lequel la loi jointe des observations est une marginale de p(h0:t , x0:t) = p(h0) Qt s=1 p(hs|hs−1, xs−1)p(xs|hs). Bien évidemment, p(x0:t) = R h0:t p(h0:t , x0:t)dh0:t n’est pas, dans la plupart des cas, calculable analytiquement. Pour pouvoir analyser p(x0:t), (et donc considérer les deux cas particuliers HMM et RNN), nous nous plaçons dans un cadre simplificateur : • dans ce chapitre, nous nous plaçons dans le cadre linéaire et gaussien afin de comprendre plus facilement l’impact sur la loi des observations de transitions déterministes par rapport à des transitions stochastiques ; • dans la section 6.2, nous nous plaçons dans le cas où les variables latentes sont scalaires ; 127 • plus tard, dans la section 6.3, nous relâchons cette hypothèse (cas multidimensionnel). Par ailleurs, il est à noter que nous ne nous intéresserons pas aux problèmes d’apprentissage correspondants aux modèles étudiés (nous avons néanmoins vu dans le chapitre 2 comment des modèles similaires étaient entraînés). 6.2 GUM linéaires et gaussiens : le cas unidimensionnel À partir de maintenant, nous considérons un GUM linéaire et gaussien, c’est-à-dire un modèle dans lequel la loi initiale, les lois de transition et celles d’émission s’écrivent pour tout t, 1 p(h0) = N (h0; 0; η), (6.8) p(ht |ht−1, xt−1) = N (ht ; aht−1 + cxt−1; α), (6.9) p(xt |ht) = N (xt ; bht ; β). (6.10) Dans le modèle GUM décrit ci-dessus, la loi jointe des observations est alors une gaussienne multivariée par extension du cas linéaire et gaussien (voir section 2.2.2) que nous nous proposons d’étudier à présent. Sans perte de généralité, nous imposons que ∀t ∈ N, p(xt) = N (xt ; 0; 1), (6.11) de manière à analyser p(x0:t) sur la base de sa matrice de covariance. Dans la suite, nous commençons par identifier tous les GUM (équations (6.8) à (6.10)) qui satisfont la contrainte (6.11). De cette identification est déduite la matrice de covariance Σt de la loi jointe p(x0:t), que nous exploitons. Plus précisément, nous allons montrer qu’il est possible de modéliser par un GUM n’importe quelle distribution normale centrée réduite dont la matrice de covariance est Toeplitz géométrique (voir section 6.2.2). Ces hypothèses ne sont pas nécessairement réalistes d’un point de vue pratique. Par exemple, un RNN fait toujours intervenir une fonction d’activation non linéaire en pratique. Toutefois, il est toujours possible de considérer des GUM intégrant des lois de probabilités plus complexes pour p(ht |ht−1, xt−1) que celles étudiées dans ce chapitre. Par exemple, 1. Pour rappel, la notation N (x; µ; σ 2 ) représente la densité de probabilité de la loi normale de moyenne µ et de variance σ 2 considérée comme fonction de la variable x. 1cela pourrait être une transition de la forme p(ht |ht−1, xt−1) ex. = N (ht ; f(ht−1, xt−1); σ 2 ), avec f : (h, x) 7→ max(ah + cx, 0) (un ReLu) et a et c deux poids. En ce sens, nous comparons, à hypothèses égales, nos différents modèles. Alors, l’analyse des sous-cas (c = 0) et (α = 0 ∧ c 2 = η) nous permet de dresser une comparaison des HMM et RNN, pour la modélisation d’observation dans le cas linéaire et gaussien. 6.2.1 Calculs préliminaires Avant toute chose, rappelons une relation classique : Lemme 5 Pour tout m, n ∈ N, soient a ∈ R m×n , b ∈ R n , c ∈ R m, α ∈ R m×m, β ∈ R n×n . Alors, pour tout y ∈ R m, Z x∈Rn N (y; ax + c; α)N (x; b; β)dx = N (y; ab + c; α + aβaT ) où a T est la matrice transposée de a. De plus, ce résultat s’étend aisément au cas déterministe (α et/ou β nuls). Modèle GUM contraint Nous cherchons un GUM vérifiant la contrainte (6.11), c’est-à-dire un jeu de paramètres θ = {a, b, c, η, α, β} ∈ R 3 × R +3 tel que la loi jointe pθ(x0:t) satisfasse (6.11). Partant de p(h0) = N (h0; 0; η), nous avons p(x0) = Z h0∈R p(x0|h0)p(h0)dh0 = N (x0; 0; β + b 2 η) d’après le corollaire 5, (6.12) et donc, d’après la contrainte (6.11), β = 1 − b 2η. De même, p(x1) = ZZZ p(x1|h1)p(h1|h0, x0)p(x0|h0)p(h0)dh1dh0dx0 = Z h1∈R N (x1; bh1; β) Z h0∈R N (h0; 0; η) Z x0∈R N (x0; bh0; β)N (h1; ah0 + cx0; α)dx0dh0dh1 = N (x1; 0; β + b 2 (α + βc2 + (a + bc) 2 η)) d’après le corollaire 5.