1 Introduction
En m´edecine, un diagnostique a pour but de trouver la maladie associ´ee aux symptˆomes d’un
patient. Par exemple, un m´edecin observe que son patient souffre de naus´ees. Il suppose alors que
ce dernier a soit une gastro-ent´erite, soit une insolation, soit une appendicite avec une certaine
(( certitude ))(que l’on mod´elisera par des lois de probabilit´e par la suite) pour chacune de ces
maladies. Supposons maintenant que le m´edecin vient d’ˆetre inform´e que le patient a assist´e `a
un match de tennis `a l’air libre, en plein soleil et sans protections. Cette derni`ere information
l’oblige `a r´eviser son diagnostique, et `a penser plutˆot que le patient souffre d’une insolation. On
peut dire ´egalement que le m´edecin est en train d’inf´erer la maladie en connaissance de certaines
donn´ees (naus´ees, exposition au soleil). C’est dans le but de formaliser cette approche que les
r´eseaux bay´esiens ont vu le jour.
Un r´eseau bay´esien permet de mod´eliser les interactions entre les diff´erents ´etats d’un syst`eme
`a l’aide de variables al´eatoires et d’un graphe orient´e, qui repr´esente la mani`ere dont s’influence
les variables [5], [6]. L’inf´erence dans un r´eseau bay´esien consiste alors `a calculer les probabilit´es
marginales de toutes les variables sachant que certaines ont pris une valeur fixe. Dans notre
exemple du diagnostique m´edical, pour chaque symptˆome et maladie, on a une variable al´eatoire
binaire qui nous indique si oui ou non la maladie ou le symtˆome est pr´esent. Comme on sait que
le patient a des naus´ees et a subi une exposition au soleil, on instancie les variables associ´ees
`a la valeur vrai. L’inf´erence nous donnerait alors une certaine distribution de probabilit´e (ou
marginale) sur la variable associ´ee `a l’insolation, avec une valeur de probabilit´e ´elev´ee pour la
valeur vrai.
Le premier algorithme permettant de r´ealiser des inf´erences a ´et´e propos´e par Pearl [6]
dans les ann´ees 80 : il s’agissait de l’algorithme belief propagation ou BP, et il ´etait limit´e aux
r´eseaux bay´esiens sans boucles. Cet algorithme a depuis ´et´e ´etendu aux r´eseaux quelconques
pour donner naissance `a l’algorithme de conditionnement, et d’autres ont vu le jour, comme
l’algorithme de l’arbre de jonction. Toutefois, il se peut que ces algorithmes d´epassent un temps
de calcul raisonnable en raison de la nature NP-difficile du probl`eme d’inf´erence. On pr´ef`ere
alors se tourner vers un algorithme approch´e (Gibbs, MCMC, etc...). Un tel algorithme peut
ˆetre d´eduit de l’algorithme BP en relaxant la contrainte de r´eseaux sans cycles. On obtient alors
l’algorithme d’approximation it´eratif : loopy belief propagation ou LBP qui sera l’objet de notre
´etude. En effet, cet algorithme permet d’obtenir, le plus souvent, de tr`es bonnes approximations
des marginales sans r´eelles justifications th´eoriques [4]. Plus pr´ecis`ement, on ne sait pas pr´edire
s’il convergera, ni dire, dans le cas o`u il convergerait, si les marginales approxim´ees sont correctes.
Un exemple d’application de l’algorithme LBP se trouve en th´eorie des codes. Plus pr´ecis`ement,
et comme on le verra plus tard, l’algorithme de Turbo-d´ecodage consiste `a inf´erer le con-
tenu original d’un message connaissant une version parasit´ee de celui-ci. Il est alors possible
de mod´eliser ce probl`eme sous la forme d’un r´eseau bay´esien, dont on constate l’existence de
cycles. Si on applique l’algorithme LBP sur ce r´eseau, alors on montre [3] que l’on obtient un
algorithme ´equivalent `a l’algorithme de Turbo-d´ecodage. Cet algorithme est d’ailleurs consid´er´e
par les acteurs du domaine, comme une v´eritable r´evolution dans les codes correcteurs d’erreurs
`a cause de ses excellentes performances. Cet exemple met donc en ´evidence l’efficacit´e que peut
avoir l’algorithme LBP.
Dans ce travail, on s’interesse `a l’article fondateur de Kschishang et al. (2000) [2] sur les
3