Filtre particulaire (statistique)

Filtre particulaire (statistique)

Filtre particulaire (statistique)

Page d'aide sur l'homonymie Pour les articles homonymes, voir Particule.
Résultat d'un filtrage particulaire (courbe rouge) basé sur les données observées générées depuis la courbe bleue.

Les filtres particulaires, aussi connus comme Méthodes de Monte-Carlo séquentielles, sont des techniques sophistiquées d'estimation de modèles basées sur la simulation.

Les filtres particulaires sont généralement utilisés pour estimer des modèles Bayésiens et constituent les méthodes 'en-ligne' analogues aux Méthodes de Monte-Carlo par Chaînes de Markov qui elles sont des méthodes 'hors-ligne' (donc a posteriori) et souvent similaires aux méthodes d'échantillonnage d'importance.

S'ils sont conçus correctement, les filtres particulaires peuvent être plus rapides que les Méthodes de Monte-Carlo par Chaînes de Markov. Ils constituent souvent une alternative aux filtres de Kalman étendus avec l'avantage qu'avec suffisamment d'échantillons, ils approchent l'estimé Bayésien optimal. Ils peuvent donc être rendus plus précis que les filtres de Kalman. Les approches peuvent aussi être combinées en utilisant un filtre de Kalman comme une proposition de distribution pour le filtre particulaire.

Sommaire

Objectif

Un filtre particulaire a pour but d'estimer la séquence de paramètres cachés, xk pour k = 0, 1, 2, 3, \dots en se basant seulement sur les données observées yk pour k = 0, 1, 2, 3, \dots. Tous les paramètres estimés bayésiens de xk viennent de la distribution a posteriori, mais plutôt que d'utiliser les probabilités jointes a posteriori  p(x_0, x_1, \dots, x_k  | y_0, y_1, \dots, y_k), qui résulteraient d'une MCMC usuelle ou d'un échantillonnage d'importance, les méthodes particulaires estiment la distribution de filtrage p(x_k|y_0,y_1,\dots,y_k).

Modélisation

Les filtres particulaires font l'hypothèse que les états xk et les observations yk peuvent être modélisées sous la forme suivante :

  • La suite des paramètres x_0, x_1, \dots forment une chaîne de Markov de premier ordre, telle que x_k | x_{k-1} \sim p_{x_k | x_{k-1}}(x | x_{k-1}) et avec une distribution initiale p(x0).
  • Les observations y_0, y_1, \dots sont indépendantes conditionnellement sous réserve que les x_0, x_1, \dots soient connus. En d'autres termes, chaque observation yk ne dépend que du paramètre xk : y_{k} | x_{k} \sim  p_{y | x_{}}(y | x_{k})

Un exemple de ce scénario est \{\begin{matrix} x_k=f(x_{k-1}) + v_k \\ y_k = h(x_k) + w_k\end{matrix}

où à la fois vk et wk sont des séquences mutuellement indépendantes et distribuées à l'identique avec des fonctions de densité de probabilité connues et où f() et h() sont des fonctions connues. Ces deux équations peuvent être vues comme des équations de l'espace d'état et ressemblent à celles du filtre de Kalman.

Si les fonctions f(\cdot) et h(\cdot) étaient linéaires, et si à la fois vk et wk étaient des gaussiennes, alors le filtre de Kalman trouve la distribution de filtrage bayésien exacte. Dans le cas contraire, les méthodes à base de filtre de Kalman donnent une estimation de premier ordre. Les filtres particulaires donnent également des approximations, mais avec suffisamment de particules, les résultats peuvent être encore plus précis.

Approximation de Monte-Carlo

Les méthodes à particules, comme toutes les méthodes à base d'échantillonnages (telles que les MCMC), génèrent un ensemble d'échantillons qui approximent la distribution de filtrage p(x_k|y_0,\dots,y_k). Ainsi, avec P échantillons, les valeurs espérées vis-à-vis de la distribution de filtrage sont approximées par : \int f(x_k)p(x_k|y_0,\dots,y_k)dx_k\approx\frac1P\sum_{L=1}^Pf(x_k^{(L)})x_k^{(L)} est la (L)-ième particule à l'instant k; et f(\cdot), de la façon habituelle des méthodes Monte-Carlo, peut donner tous les données de la distribution (moments, etc.) jusqu'à un certain degré d'approximation.

En général, l'algorithme est répété itérativement pour un nombre donné de valeurs k (que nous noterons N).

Initialiser xk = 0 | k = 0 pour toutes les particules fournit une position de départ pour générer x1, qui peut être utilisé pour générer x2, qui peut être utilisé pour générer x3, et ainsi de suite jusqu'à k = N.

Une fois ceci effectué, la moyenne des xk sur toutes les particules (ou \frac{1}{P}\sum_{L=1}^P x_k^{(L)}) est approximativement la véritable valeur de xk.

Echantillonnage avec rééchantillonnage par importance (SIR)

L'échantillonnage avec rééchantillonnage par importance (Sampling Importance Resampling ou SIR) est un algorithme de filtrage utilisé très couramment. Il approxime la distribution de filtrage p(x_k|y_0,\ldots,y_k) par un ensemble de particules pondérées : \{(w^{(L)}_k,x^{(L)}_k)~:~L=1,\ldots,P\}.

Les poids d'importance w^{(L)}_k sont des approximations des probabilités (ou des densités) a posteriori relatives des particules telles que \sum_{L=1}^P w^{(L)}_k = 1.

L'algorithme SIR est une version récursive de l'échantillonnage par importance. Comme en échantillonnage par importance, l'espérée de la fonction f(\cdot) peut être approximé comme une moyenne pondérée : 
\int f(x_k) p(x_k|y_0,\dots,y_k) dx_k \approx
\sum_{L=1}^P w^{(L)} f(x_k^{(L)}).

La performance de l'algorithme est dépendante du choix des distributions d'importances : π(xk | x0:k − 1,y0:k).

La distribution d'importance optimale est donnée comme : π(xk | x0:k − 1,y0:k) = p(xk | xk − 1,yk).

Cependant, la probabilité de transition est souvent utilisée comme fonction d'importance, comme elle est plus aisée de calculer, et cela simplifie également les calculs des poids d'importance subséquents : π(xk | x0:k − 1,y0:k) = p(xk | xk − 1).

Les filtres à rééchantillonnage par importance (SIR) avec des probabilités de transitions comme fonction d'importance sont connues communément comme filtres à amorçage (bootstrap filters) ou algorithme de condensation.

Le rééchantillonnage permet d'éviter le problème de la dégénérescence de l'algorithme. On évite ainsi les situations où tous les poids d'importance sauf un sont proches de zéro. La performance de l'algorithme peut aussi être affectée par le choix de la méthode de rééchantillonnage appropriée. Le rééchantillonnage stratifié proposé par Kitagawa (1996) est optimal en termes de variance.

Un seul pas de rééchantillonnage d'importance séquentiel se déroule de la façon suivante :

  1. Pour L=1, \ldots, P, on tire les échantillons des distributions d'importances : x^{(L)}_k \sim \pi(x_k|x^{(L)}_{0:k-1},y_{0:k})
  2. Pour L=1, \ldots, P, on évalue les poids d'importance avec une constante de normalisation: 
\hat{w}^{(L)}_k = w^{(L)}_{k-1}
\frac{p(y_k|x^{(L)}_k) p(x^{(L)}_k|x^{(L)}_{k-1})}
{\pi(x_k^{(L)}|x^{(L)}_{0:k-1},y_{0:k})}.
  3. Pour L=1, \ldots, P on calcule les poids d'importance normalisés: 
w^{(L)}_k = \frac{\hat{w}^{(L)}_k}{\sum_{J=1}^P \hat{w}^{(J)}_k}
  4. On calcule une estimation du nombre effectif de particules comme 
\hat{N}_\mathit{eff} = \frac{1}{\sum_{L=1}^P\left(w^{(L)}_k\right)^2}
  5. Si le nombre effectif de particules est plus petit qu'un seuil donné \hat{N}_\mathit{eff} < N_{thr}, alors on effectue le rééchantillonnage:
    1. Tirer P particules de l'ensemble de particules courant avec les probabilités proportionnelles à leur poids puis remplacer l'ensemble des particules courantes avec ce nouvel ensemble.
    2. Pour L=1, \ldots, P l'ensemble w^{(L)}_k = 1/P.

Le terme Rééchantillonnage d'importance séquentiel (Sequential Importance Resampling) est aussi utilisé parfois pour se référer aux filtres SIR.

Echantillonnage séquentiel par importance (SIS)

L'Echantillonnage séquentiel par importance (ou SIS pour Sequential Importance Sampling) est similaire à l'Echantillonnage avec rééchantillonage par importance (SIR) mais sans l'étape de rééchantillonnage.

Version directe de l'algorithme

La version directe de l'algorithme est relativement simple en comparaison des autres algorithmes de filtrage particulaire et utilise la composition et le rejet. Pour générer un simple échantillon x à k de p_{x_k|y_{1:k}}(x|y_{1:k}):

(1) Fixer p=1
(2) Générer uniformémént L depuis {1,...,P}
(3) Générer un test \hat{x} depuis sa distribution p_{x_k|x_{k-1}}(x|x_{k-1|k-1}^{(L)})
(4) Générer les probabilités de \hat{y} en utilisant \hat{x} depuis p_{y|x}(y_k|\hat{x})yk est la valeur mesurée
(5) Générer une autre uniformémént u depuis [0,mk]
(6) Comparer u et \hat{y}
(a) Si u est plus grand alors répéter depuis l'étape (2)
(b) Si u est plus petite alors sauver \hat{x} comme xk | k(p) et incrémenter p
(c) Si p > P alors arrêter

L'objectif est de générer P particules au pas k en n'utilisant seulement que les particules du pas k − 1. Cela requiert qu'une équation markovienne puisse être écrite (et calculée) pour générer un xk en se basant seulement sur xk − 1. Cet algorithme utilise la composition de P particules depuis k − 1 pour générer à k.

Cela peut être plus facilement visualisé si x est vu comme un tableau à deux dimensions. Une dimension est k et l'autre dimension correspond au nombre de particules. Par exemple, x(k,L) serait la Lème particule à l'étape k et peut être donc écrite x_k^{(L)} (comme effectué plus haut dans l'algorithme).

L'étape (3) génère un potentiel xk basé sur une particule choisie aléatoirement (x_{k-1}^{(L)}) a temps k − 1 et rejette ou accepte cette particule à l'étape (6). En d'autres termes, les xk valeurs sont générées en utilisant les xk − 1 générées précédemment.

Voir aussi

  • filtre de Kalman, un estimateur analytique pour les distributions Gaussiennes
  • estimation récursive bayésienne

Références

  • Sequential Monte Carlo Methods in Practice, par A Doucet, N de Freitas et N Gordon. Publié par Springer.
  • On Sequential Monte Carlo Sampling Methods for Bayesian Filtering, par A Doucet, C Andrieu et S. Godsill, Statistics and Computing, vol. 10, no. 3, pp. 197-208, 2000 CiteSeer link
  • Tutorial on Particle Filters for On-line Nonlinear/Non-Gaussian Bayesian Tracking (2001); S. Arulampalam, S. Maskell, N. Gordon et T. Clapp; CiteSeer link
  • F. Dellaert, D. Fox, W. Burgard, et S. Thrun, "Monte Carlo Localization for Mobile Robots, " IEEE International Conference on Robotics and Automation (ICRA99), mai 1999.
  • Inference in Hidden Markov Models, par O. Cappe, E. Moulines, T. Ryden. Publié par Springer.

Liens externes

Ce document provient de « Filtre particulaire (statistique) ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Filtre particulaire (statistique) de Wikipédia en français (auteurs)

Regardez d'autres dictionnaires:

  • Filtre Particulaire (Statistique) — Pour les articles homonymes, voir Particule. Résultat d un filtrage particulaire (courbe rouge) basé sur les données observées génér …   Wikipédia en Français

  • Filtre Particulaire (statistique) — Pour les articles homonymes, voir Particule. Résultat d un filtrage particulaire (courbe rouge) basé sur les données observées génér …   Wikipédia en Français

  • Méthode de Monte-Carlo — Pour les articles homonymes, voir Monte Carlo (homonymie). Le terme méthode de Monte Carlo, ou méthode Monte Carlo, désigne toute méthode visant à calculer une valeur numérique en utilisant des procédés aléatoires, c est à dire des techniques… …   Wikipédia en Français

  • Methode de Monte-Carlo — Méthode de Monte Carlo Pour les articles homonymes, voir Monte Carlo (homonymie). On appelle méthode de Monte Carlo toute méthode visant à calculer une valeur numérique, et utilisant des procédés aléatoires, c est à dire des techniques… …   Wikipédia en Français

  • Méthode De Monte-Carlo — Pour les articles homonymes, voir Monte Carlo (homonymie). On appelle méthode de Monte Carlo toute méthode visant à calculer une valeur numérique, et utilisant des procédés aléatoires, c est à dire des techniques probabilistes. Le nom de ces… …   Wikipédia en Français

  • Méthode de Monte Carlo — Pour les articles homonymes, voir Monte Carlo (homonymie). On appelle méthode de Monte Carlo toute méthode visant à calculer une valeur numérique, et utilisant des procédés aléatoires, c est à dire des techniques probabilistes. Le nom de ces… …   Wikipédia en Français

  • Méthode de monte-carlo — Pour les articles homonymes, voir Monte Carlo (homonymie). On appelle méthode de Monte Carlo toute méthode visant à calculer une valeur numérique, et utilisant des procédés aléatoires, c est à dire des techniques probabilistes. Le nom de ces… …   Wikipédia en Français

  • Simulation de Monte Carlo — Méthode de Monte Carlo Pour les articles homonymes, voir Monte Carlo (homonymie). On appelle méthode de Monte Carlo toute méthode visant à calculer une valeur numérique, et utilisant des procédés aléatoires, c est à dire des techniques… …   Wikipédia en Français

  • Soleil — Pour les articles homonymes, voir soleil (homonymie). Soleil …   Wikipédia en Français

  • BRUIT DE FOND — En matière de transmission, on appelle bruit l’ensemble des signaux nuisibles qui se superposent au signal utile en un point quelconque d’une chaîne de mesure ou d’un système de transmission. Le signal utile représente l’information désirée alors …   Encyclopédie Universelle

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”