IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de...

28
IFT 616 IFT 616 Intelligence Artificielle Intelligence Artificielle Jean-François Landry Département d’informatique Université de Sherbrooke Réseaux bayésiens dynamiques

Transcript of IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de...

Page 1: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

IFT 616IFT 616Intelligence ArtificielleIntelligence Artificielle

Jean-François Landry

Département d’informatique

Université de Sherbrooke

Réseaux bayésiens dynamiques

Page 2: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Sujets couvertsSujets couverts

C’est quoi un réseau bayésien dynamique (RBD)?

Exemple d’inférence simple dans un RBD.

Cas particuliers des chaînes cachées de Markov.

IFT615 2

Page 3: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Réseaux bayésiens dynamiques (RBD) Comment modéliser des situations dynamiques?

Les changements dynamiques peuvent être vues comme une séquence d’états, chaque état représentant la situation à un instant donné.

Xt : Ensemble des variables non observables décrivant l’état au temps t.

Et : Ensembles de variables observées (évidence) au temps t.

Le terme dynamique réfère au dynamisme du système qu’on veut modéliser et la structure du réseau.

IFT615 3

Page 4: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Problème: Il faudrait spécifier un nombre infini de tables de probabilité

conditionnelle: une pour chaque variable, dans chaque état. Chaque table pourrait impliquer un nombre infini de parents.

Solution:

1. Supposer que les changements dynamiques sont causées par un processus stationnaire - les probabilités ne changent pas dans le temps: P(Xt | Parent(Xt)) est la même pour tous les t.

2. Supposer que les changements dynamiques sont causées par un processus markovien – l’état courant dépend seulement d’un nombre fini d’états précédents. Processus markoviens du premier ordre:

• P(Xt | X0:t-1) = P(Xt | Xt-1) modèle pour les transitions

3. Supposer que l’évidence dépend uniquement de l’état courant.

• P(Et | X0:t ,E0:t-1) = P(Et | Xt) modèle pour les

• observations/capteurs

RBD - Représentation

IFT615 4

Page 5: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

RBD - Illustrations

2tX 1tX 2tX1tXtX

2tX 1tX 2tX1tXtX

RBD du second ordre

Réseau bayesien dynamique (RBD) du premier ordre avec une seule variable X, répliquées dans les différents états pour modéliser la

dynamique du système.

IFT615 5

Page 6: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

RBD - Exemple Contexte: Un gardien de sécurité passe un mois dans un édifice sous-terrain,

sans sortir. Chaque jour, son directeur arrive avec ou sans parapluie. Le gardien veut inférer la possibilité qu’il ait plu ou non en fonction des séquences d’observation du parapluie.

Modélisation: Variables: Xt = {Rt} (pour « Rain ») et Et={Ut} (pour « Umbrella »).

Dépendances entre les variables (c-.à-d., le RBD):

1tRaintRain1tRain

1tUmbrellatUmbrella1tUmbrella

Modèle des transitions: P(Rt | Rt-1). Modèle d’observation: P(Et | Rt).

IFT615 6

Page 7: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

RBD Comment rendre un RBD plus précis?

1. Augmenter l’ordre du modèle markovien. Par exemple, Raint aurait comme parents, non seulement Raint-1 mais aussi Raint-2 pour un processus markovien du second ordre. Ceci donnerait des prédictions plus précises.

2. Augmenter le nombre de variables d’états. Par exemple, on pourrait ajouter:

» Une variable Seasont pour tenir compte des statistiques historiques sur les temps de pluie selon les saisons.

» Des variables Temperaturet , Humidityt and Pressuret pour tenir compte de la physique des conditions de pluie.

IFT615 7

Page 8: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Types d’inférence dans un RBD

Filtrage (filtering) ou monitorage/surveillance (monitoring) Prédiction, lissage Explication la plus plausible (séquence d’états)

Des algorithmes pour des RBD générales existent pour chaque type

d’inférence.

Des algorithmes plus efficaces existent pour des cas particuliers de RBD:

Chaînes cachées de Markov Filtres de Kalman Filtres de particules

IFT615 8

Page 9: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

RBD – Filtrage ou monitorage

Calculer l’état de croyance (belief state) – c-.à-d., la distribution de probabilité à priori de l’état courant, étant donné l’évidence (observation) jusque là.

)|( :1 tt eXP

Un agent intelligent a besoin du filtrage pour maintenir à jour son état courant – ceci est nécessaire pour prendre des décisions rationnelles (déterminer l’action appropriée dans l’état courant).

IFT615 9

Page 10: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

RBD – Filtrage ou monitorage

Étant donnés les résultats du monitorage jusqu’au temps t, on peut facilement calculer les résultats au temps t+1 à partir des nouvelles observations et+1.

),|()|( 1:111:11 ttttt eeXPeXP

)|()|(

)|()|(

:1111

:11:1,11

tttt

ttttt

eXPXeP

eXPeXeP

(séparer l’évidence en 2)

(Règle de Bayes)

(Hypothèse markovienne)

α : constante de normalisation.

)|()|()|( :1111 ttx

tttt exPxXPXePt

tx

ttttttt exPexXPXeP )|(),|()|( :1:1111

(Hypothèse Markovienne)

IFT615 10

Page 11: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

RBD – Filtrage Exemple de l’agent de sécurité

)()|()|( 11111 RPRuPuRP

Données: une distribution de probabilité à priori P(R0), par exemple <0.5, 0.5>. Un modèle des transition P(Rt|Rt-1) et Un modèle d’observation P(Ut|Rt).

IFT615 11

Voyons maintenant les deux premières étapes de la détermination de l’état Rt:

Jour 1, le parapluie apparait, (U1=true ou u1). La prédiction de t=0 à t=1 est:

1tRaintRain1tRain

1tUmbrellatUmbrella1tUmbrella

Page 12: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

DBN – Filtrage Exemple de l’agent de sécurité

)|()|(),|( 1222212 uRPRuPuuRP

Jour 2, le parapluie apparait de nouveau, c.-à-d., U1=true. La prédiction de t=1 à t=2 donne:

IFT615 12

1tRaintRain1tRain

1tUmbrellatUmbrella1tUmbrella

)|()|()|( 111212

1

urPrRPuRPravec

Page 13: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Exemple d’application:Projet “assisted cognition”

Henry Kautz, University of Rochester

BA

Goalswork, home, friends, restaurant, doctor’s, ...

Trip segmentsHome to Bus stop A on FootBus stop A to Bus stop B on BusBus stop B to workplace on Foot

Work

http://www.cs.rochester.edu/u/kautz/talks/converging-technology-kautz-v3.ppt

13

Page 14: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Modèle hiérarchique du RBD

Transportation mode

x=<Location, Velocity>

GPS reading

Goal

Trip segment

xk-1

zk-1 zk

xk

mk-1 mk

tk-1 tk

gk-1 gk

Kautz et al.

http://www.cs.rochester.edu/u/kautz/talks/converging-technology-kautz-v3.ppt

14

Page 15: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Reconnaître les buts d’un usager

Kautz et al.

http://www.cs.rochester.edu/u/kautz/talks/converging-technology-kautz-v3.ppt15

Page 16: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

RBD – Cas spécial:RBD – Cas spécial:Chaînes cachées de MarkovChaînes cachées de Markov

Une chaîne de Markov (de premier ordre) est définie par

Cas particulier avec une seule variable aléatoire, appelée variable

d’état.

Une distribution initiale de probabilités sur des symboles (états).

Une matrice de transitions contenant des probabilités

conditionnelles.

IFT615 16

Page 17: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Exemple de chaîne de MarkovExemple de chaîne de Markov

Symbole actuel

A B C

Prochain symbole

A .7 .3 0

.2 .7 .5

.1 0 .5

Exemple de chaîne : CCBBAAAAABAABACBABAAA

A B

C

.7.3 .7

.2

0

.5

.5

.1

0

Représentation matricielle Représentation graphique

IFT615 17

C

B

Page 18: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Probabilité de générer une chaîneProbabilité de générer une chaîne

)|()()}({ 111

2

t

T

ttt sspspsp T

Une séquence de symboles, allant du temps 1 au temps T

Distribution initiale de probabilités.

Probabilité de transition

Produit des probabilités, une pour chaque terme de la séquence

IFT615 18

Page 19: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

ExempleExemple

Chaque nœud caché a un vecteur de probabilités de transitions et un vecteur de probabilités de sorties (observations).

i

A B C k

j

A B C

A B C

.5

.5.1 .3 .6 .4 .6 0

0 .2 .8

.7.3 .7

.2

0.1

0

IFT615 21

Page 20: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Probabilité de générer une séquence Probabilité de générer une séquence cachée et une séquence visiblecachée et une séquence visible

)|()|()|()()},({ 11111

2ttt

T

tttt hsphhphsphpshp T

Séquence de nœuds cachés et de symboles de sortie.

Probabilité de sortir le symbole st au nœud ht.

IFT615 24

Page 21: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Programmation dynamique pour CCMProgrammation dynamique pour CCM

Une façon plus efficace de générer une séquence de sortie.

La probabilité jointe pour produire une séquence jusqu’au temps , en utilisant le nœud i au temps est notée:

),}({)( 1 ihsp ti

• Cela peut être calculé récursivement :

)|()()|()( 11 jhihpihspj

ji

IFT615 26

Page 22: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Application : reconnaissance vocaleApplication : reconnaissance vocale

La reconnaissance vocale est difficile :

Bruit ambiant ou introduit par la digitalisation

Variations dans la prononciation

Différents mots ayant la même prononciation.

Problème : Quelle est la séquence de mots la plus vraisemblable étant donné

un signal sonore ?

Réponse : Choisir la séquence de mots qui maximise la probabilité

P(mots | signal)

IFT615 28

Page 23: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Modèle acoustique et modèle du Modèle acoustique et modèle du langagelangage

Choisir la séquence de mots qui maximise la probabilité

P(mots | signal).

Utiliser la règle de Bayes : P(mots | signal) = α P(signal | mots) P(mots)

C’est-à-dire, décomposer le problème en modèle acoustique et modèle du

langage :

P(signal | mots) : modèle acoustique.

P(mots) : modèle du langage.

Chaîne cachée : les mots.

Chaîne observée : le signal.

IFT615 29

Page 24: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

PhonesPhones Des travaux dans le domaine de phonologie ont montré que tous les langages

naturels utilisent seulement 40 à 50 sons de base, appelés phones.

Les phones découlent de l’articulation des lèvres, des dents, de la langue, des

cordes vocales et du flux de l’air.

Intuitivement, un phone est un son qui correspond à une seule consonne ou

une seule voyelle.

Mais c’est plus subtil ! Des combinaisons de consonnes comme « th » ou

« ng » en anglais font un seul phone.

Un phonème est la plus petite unité de son distinctive que l’on puisse isoler par

segmentation dans un mot.

IFT615 30

Page 25: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Phones : exemplePhones : exemple

• Phones pour l’anglais américain :

IFT615 31

Page 26: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Modèle acoustiqueModèle acoustique Rappel :

P(mots | signal) = α P(signal | mots) P(mots)

» P(signal | mots) : modèle acoustique.

» P(mots) : modèle du langage.

L’existence des phones permet de diviser le modèle acoustique en deux

parties :

Modèle de prononciation : spécifie, pour chaque mot, une distribution de

probabilité sur une séquence de phones. Par exemple, « ceiling » est

parfois prononcé [s iy l ih ng], ou [s iy l ix ng], ou encore [s iy l en].

» Le phone est la variable cachée. Le signal est la variable observée.

Modèle phonique : Le modèle phonique P(et|xt) donne la probabilité que le

signal échantillonné soit et au temps t si le phone est xt.

IFT615 32

Page 27: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

Exemple de modèle de prononciationExemple de modèle de prononciation

P([towmeytow]| « tomato») = P([towmaatow]| « tomato») = 0.1

P([tahmeytow]| « tomato») = P([tahmaatow]| « tomato») = 0.4

Les transitions sont spécifiées manuellement. Les probabilités sont apprises.

IFT615 33

Page 28: IFT 616 Intelligence Artificielle Jean-François Landry Département dinformatique Université de Sherbrooke Réseaux bayésiens dynamiques.

ApplicationsApplications

Reconnaissance vocale

CMU Sphinx (publique) :

http://cmusphinx.sourceforge.net/html/download.php

Dragon Naturally Speaking (commercial)

IBM ViaVoice (commercial)

Reconnaissance de caractères

Observé : image.

Caché : mots.

IFT615 35