• Aucun résultat trouvé

Illustration de la création et de l’utilisation de générateurs GSA

Le dernier générateur que nous avons créé génère des entrées identiques à la séquenceseq0. En repartant de l’idée que tout modèle à entrées multiples dépend un minimum d’une séquence d’observations sans entrée, nous avons décidé de tester un apprentissage où les entrées des modèles atomiques sont fournies par la séquenceseq0. Ce générateur porte le nom de générateur par

La validation de ces générateurs, notamment en ce qui concerne leur impact sur la qualité de l’apprentissage, est présentée en section3.4. Mais avant d’étudier cette validation, il est important de bien récapituler les différentes phases de l’apprentissage des dynamiques à l’aide des chaînes de Markov cachées.

3.3.2 Récapitulatif de l’apprentissage des dynamiques à l’aide des HMM

L’apprentissage de la dynamique d’un modèle atomique nécessite la création d’une base d’ap-prentissage. Celle-ci correspond aux différentes duréesdi d’émission entre deux envois de mes-sages. Cette séquence d’apprentissage est obtenue par simulation d’un modèle atomique indépen-dant. Pour les modèles atomiques sans entrée, une simple simulation durant un certain laps de temps suffit à générer cette séquence d’apprentissage, nommée seq0 dans ce cas. Les modèles atomiques avec entrées nécessitent l’utilisation de générateur d’entrées, présentés dans la sous-section précédente, pour simuler les entrées nécessaires à l’exécution du modèle. Ces simulations indépendantes donnent naissance à des séquences d’apprentissage de la forme

d1d4d7d7d2d1d1d2∞d3d4d1d6d5d3d2d6 · · ·

Rappelons qu’un modèle atomique peut se trouver dans un état "infini", c’est à dire queta=∞

et que le modèle reste en sommeil tant qu’aucun événement extérieur ne vient le perturber. Il se peut donc qu’undi prenne la valeur∞dans ce cas. Or, la valeur∞n’est pas à considérer en tant que durée, mais plutôt comme un indicateur sur l’état courant du modèle atomique. Ce symbole, exclusivement lié à la dynamique DEVS, est indispensable au bon déroulement des algorithmes de génération de séquences présentés en section3.3.3. La simulation individuelle des modèles ato-miques donne des séquences d’observations déterministes, c’est à dire que deux simulations indé-pendantes fournissent systématiquement le même résultat. Or, l’apprentissage nécessite plusieurs séquences d’observations pour garantir sa convergence. Il serait parfaitement inutile de simulern

fois un même modèle, cela fourniraitn fois la même séquence. Nous proposons de réaliser une "longue" simulation d’un modèle atomique dans le but d’obtenir une séquence d’apprentissage de grande taille. Ainsi cette séquence peut être subdivisée et utilisée comme base d’apprentissage. Nous avons opté pour une subdivision en 20 sous-séquences de tailles différentes.

Pour chaque type de modèle (en fonction du nombre d’entrées), on initialise un HMMλ = (π, A,B)dont le nombre d’états est fixé àN+1, comprenant un unique état final. La littérature offre des moyens permettant de déterminer le nombre optimal d’étatsN garantissant un appren-tissage optimal, comme par exemple [BSVdB97]. Cependant, ces méthodes sont souvent gour-mandes en temps de calculs et risqueraient de pénaliser le temps de simulation. Nous proposons une approche simple et à moindre de frais pour déterminer ce nombre d’état. Celle-ci consiste à apprendreN HMM à partir d’une séquence obtenue sur un modèle sans entrée, où le nombre d’états qui les composent varient entre 2 etN. La séquence sans entrée étant la plus fiable pour réaliser une comparaison, cela nous permet de déterminer le nombre d’états optimal pour garantir un HMM offrant une erreur minimale. L’alphabetV des symboles correspond aux différentes du-réesdi observées dans la séquence d’apprentissage, incluant le symbole∞. À chaque symbole est

associé une probabilité d’émission par étatbi,j, supposée initialement équiprobable. Dans le cas de l’apprentissage des modèles sans entrée, la probabilitébi,est nulle et le restera tout au long de l’apprentissage. Chaque étatSi∀i<6 différent de l’état final peut être choisi comme état initial du système, ce qui implique une probabilitéπi i<6 équiprobable etπ6=0. De plus, le HMM étant supposé ergodique, il est possible de passer d’un étatSi à n’importe quel autre étatSj avec une certaine probabilitéai,j. Or à l’initialisation ces transitions sont supposées équiprobables. Pour favoriser une convergence rapide de l’algorithme d’apprentissage, il est préférable d’initialiser les différentes probabilités de manière "quasi-équiprobable". Cette perturbation peut être vue comme un moyen de s’extraire d’un éventuel maximum local.

À partir des sous-séquences d’apprentissage et du HMM initialλ0= (π0, A0,B0), les para-mètresπ,AetBsont ré-estimés par application de l’algorithme de Baum-Welsh. Cet algorithme détermine les meilleursπ,AetBsusceptibles de favoriser la génération d’une séquence d’obser-vations statistiquement proche de celles fournies par la base d’apprentissage. D’où l’importance d’avoir des séquences d’apprentissage très proches de la réalité du modèle atomique. Une fois chaque HMM appris, il est possible de remplacer le graphe de modèles par un graphe de HMM afin d’en faire une simulation. La simulation de celui-ci permet de générer des séquences d’obser-vations sans être soumis aux calculs liés aux modèles atomiques. Pour chaque modèle atomique, on détermine la durée moyenne d’émissiondmoyà partir de ces séquences d’observations. Lors de son calcul, le symbole∞est ignoré car il n’est pas une durée mais plutôt un indicateur de l’état courant du modèle ("en attente" sidi=∞, "actif" sinon). La pondération du graphe de modèles s’effectue à partir de la fréquence moyenne d’émission de message correspondant à d1

moy. En effet chaque arc sortant d’un modèle atomique est pondéré par la fréquence d’émission moyenne de celui-ci.

Une simulation peut se composer de modèles atomiques possédantKdynamiques différentes. Chacun de ces modèles atomiques peut comporter entre 0 etnentrées, ce qui implique au maxi-mumK×napprentissages pour déterminer toutes les dynamiques d’un modèle DEVS. Une fois ces dynamiques apprises, chaque modèle atomique du graphe de modèle est remplacé par son re-présentant HMM, dans le but de réaliser une simulation sans être pénalisé par le temps de calcul des modèles atomiques. Dans le cadre de notre expérimentation, lesK dynamiques de base sont supposées connues et sont donc une information inclue dans chacune des "boîtes grises". Plus précisément, nous nous autorisons à connaître une pseudo classification des modèles suivant leur dynamique, par le biais d’un paramètre de typage. La pertinence de cette approche repose sur l’hy-pothèse que le temps de calcul des modèles atomiques est nettement plus important que le temps d’apprentissage des dynamiques.

3.3.3 Génération de séquences d’observations à partir du graphe de HMM

La simulation du graphe de HMM repose sur l’application d’un algorithme de génération de séquence d’observations sur chaque HMM qui compose le graphe. L’algorithme de génération de séquences standards des HMM est initialement conçu pour générer des séquences d’observations en se basant exclusivement sur l’alphabet de symboleV ainsi que sur la matrice de probabilité d’émission de symboleB. En effet, cet algorithme est en réalité une procédure itérative gérée par

des tirages aléatoires. Il peut être utilisé pour la génération de séquences de HMM de type 0, c’est à dire dont le HMM provient d’un modèle sans entrée. Il est vrai que dans ce cas, l’algorithme de génération de séquences standards des HMM suffit.

Algorithme 23Algorithme de génération de séquences d’observations pour un HMM représentant

un modèle sans entrée

PROCÉDURE: Générateur standard ENTRÉES: λ = (π,A,B)

Tirage d’un état initialSi suivant les probabilitésπ Scourant←Si devient l’état courant

Tirage d’un symbolevk∈V suivant les probabilitésbi,k

seq←vkajout du symbole tiré à la séquence d’observations

TantqueScourant6=Sf inal faire

Tirage d’un état futurSj suivant les probabilitésai j

Scourant ←Sjdevient l’état courant

Tirage d’un symbolevk suivant les probabilitésbi j

seq←seq∪ {vk}ajout du symbole tiré à la séquence d’observations

Fin Tantque

Sorties: seq

La création du graphe de HMM génère l’apparition de connexions entre les HMM qui le com-pose. Pour l’algorithme23, les séquences peuvent être générées sans problème car il ne dépend pas d’informations extérieures. Lors de la simulation d’un modèle DEVS, les modèles à entrées multiples reçoivent des événements de la part de modèles émetteurs. Certains modèles à entrées multiples restent dans un état "infini" tant qu’aucun événement ne vient les perturber. Ces parti-cularités liées au formalisme DEVS doivent être prises en compte lors de la simulation du graphe de HMM. Dans notre cas, les événements correspondent aux séquences de durées{di}. Lorsqu’un symbole∞est émis par un état du HMM, celui-ci reste en attente d’un événement à l’image d’un modèle atomique DEVS. Si un événement apparaît, il est traité et le HMM sort de son état "infini". Au contraire si un événement apparaît alors qu’aucun symbole∞n’a été émis, celui-ci est ignoré. La prise en compte de ces informations a nécessité la modification de l’algorithme de génération de séquences. Contrairement au générateur de séquences d’un HMM conventionnel, celui-ci est piloté par la présence du symbole∞et l’apparition d’événements. L’algorithme 24présente les modifications apportées au générateur de séquences d’observations pour tendre vers un modèle DEVS classique.