σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyFeuilles de routeParcours
Ctrl K
AO
+1,2 k apprenants
ConnexionRejoindre ↗
Feuilles de routeParcours
AO
+1,2 k apprenants
Connexion
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyFeuilles de routeParcours
Ctrl K
AO
+1,2 k apprenants
ConnexionRejoindre ↗
Feuilles de routeParcours
AO
+1,2 k apprenants
Connexion
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
Parcours Hidden Markov Models›Module 2 · Les algorithmes de base›Sujet 2.2·~55 minAvancé

Décodage de Viterbi

Position dans le parcoursModule 2 sur 3 · Sujet 2 sur 4
2.2 Décodage de Viterbi
—Score du lab— / 100XP total—Série—

L'histoire unique la plus probable

L'algorithme forward additionne tous les chemins cachés pour dire quelle est la probabilité des données. On veut souvent autre chose : la meilleure histoire unique, la suite d'états qui explique les données avec la plus forte probabilité. Le décodage de Viterbi la trouve. L'idée est celle de l'algorithme forward avec un seul changement : au lieu de sommer sur les états précédents, prendre le meilleur. On garde un score δt(j)\delta_t(j)δt​(j), la probabilité du meilleur chemin qui finit dans l'état jjj le jour ttt, et on retient quel état précédent l'a donné, le pointeur arrière.

δ1(j)=πjBj(o1),δt(j)=[max⁡iδt−1(i)Aij]Bj(ot),ψt(j)=arg⁡max⁡iδt−1(i)Aij\delta_1(j)=\pi_jB_j(o_1),\qquad \delta_t(j)=\Big[\max_i\delta_{t-1}(i)A_{ij}\Big]B_j(o_t),\qquad \psi_t(j)=\arg\max_i\delta_{t-1}(i)A_{ij}δ1​(j)=πj​Bj​(o1​),δt​(j)=[imax​δt−1​(i)Aij​]Bj​(ot​),ψt​(j)=argimax​δt−1​(i)Aij​(1)

Après le dernier jour, choisissez l'état de plus grand δT\delta_TδT​ et remontez les pointeurs ψ\psiψ pour lire tout le chemin. Deux points pratiques. D'abord, travaillez avec des logs : les produits de nombreuses probabilités tendent vers zéro, mais les logs en font des sommes, et comme le log est croissant, le meilleur chemin est le même. Ensuite, le meilleur chemin n'est pas le même que choisir l'état le plus probable chaque jour séparément. Le chemin peut être imposé par ce qui vient après, comme le montre l'exemple.

Petit, Grand, Grand encoreJour 1 : δ1=(0,54, 0,12)\delta_1=(0{,}54,\ 0{,}12)δ1​=(0,54, 0,12). Jour 2 (grand) : Calme vient au mieux de Calme, 0,54⋅0,9⋅0,1=0,04860{,}54\cdot0{,}9\cdot0{,}1=0{,}04860,54⋅0,9⋅0,1=0,0486. Orageux vient au mieux d'Orageux, 0,12⋅0,8⋅0,7=0,06720{,}12\cdot0{,}8\cdot0{,}7=0{,}06720,12⋅0,8⋅0,7=0,0672, et non de Calme (0,54⋅0,1⋅0,7=0,03780{,}54\cdot0{,}1\cdot0{,}7=0{,}03780,54⋅0,1⋅0,7=0,0378). Jour 3 : Orageux vient d'Orageux, 0,0672⋅0,8⋅0,7=0,03760{,}0672\cdot0{,}8\cdot0{,}7=0{,}03760,0672⋅0,8⋅0,7=0,0376, et Calme seulement 0,00440{,}00440,0044. Le meilleur chemin est Orageux, Orageux, Orageux avec la probabilité 0,03760{,}03760,0376. Pourtant le premier jour seul semblait calme avec la probabilité 0,820{,}820,82. Les grands mouvements suivants tirent toute l'histoire vers Orageux. Ce chemin est 1,781{,}781,78 fois plus probable que Calme, Orageux, Orageux (0,02120{,}02120,0212).
  • Viterbi remplace la somme de l'algorithme forward par un maximum et garde des pointeurs arrière.
  • Le meilleur chemin peut différer de l'état le plus probable de chaque jour pris séparément.
  • Utilisez des logs : les sommes de logs évitent le soupassement et gardent le même meilleur chemin.

Lab : ce qui est noté

  • Un score de Viterbi au jour deux15 pts
  • La probabilité du meilleur chemin15 pts
  • Le log du meilleur chemin10 pts
  • Face à un autre chemin10 pts
  • Le premier état du meilleur chemin15 pts
  • Les étapes de Viterbi10 pts
  • Associer le vocabulaire10 pts
  • Pourquoi utiliser des logs15 pts
0/ 8 traités
Exercices
1Réponse numérique15 ptsSans réponse

Avec δ1=(0,54, 0,12)\delta_1=(0{,}54,\ 0{,}12)δ1​=(0,54, 0,12) et un grand mouvement au jour 2, que vaut δ2(O)=max⁡(0,54⋅0,1, 0,12⋅0,8)⋅0,7\delta_2(O)=\max(0{,}54\cdot0{,}1,\ 0{,}12\cdot0{,}8)\cdot0{,}7δ2​(O)=max(0,54⋅0,1, 0,12⋅0,8)⋅0,7 ? Donnez quatre décimales.

d=d =d=accepté : ± 0.0003
2Réponse numérique15 ptsSans réponse

Avec δ2=(0,0486, 0,0672)\delta_2=(0{,}0486,\ 0{,}0672)δ2​=(0,0486, 0,0672) et un grand mouvement au jour 3, que vaut δ3(O)=max⁡(0,0486⋅0,1, 0,0672⋅0,8)⋅0,7\delta_3(O)=\max(0{,}0486\cdot0{,}1,\ 0{,}0672\cdot0{,}8)\cdot0{,}7δ3​(O)=max(0,0486⋅0,1, 0,0672⋅0,8)⋅0,7, la probabilité du meilleur chemin ? Donnez quatre décimales.

d=d =d=accepté : ± 0.0003
3Réponse numérique10 ptsSans réponse

Quel est le logarithme népérien de la probabilité 0,03760{,}03760,0376 du meilleur chemin ? Donnez deux décimales.

l=l =l=accepté : ± 0.02
4Réponse numérique10 ptsSans réponse

Combien de fois le meilleur chemin (probabilité 0,03760{,}03760,0376) est-il plus probable que le chemin Calme, Orageux, Orageux (probabilité 0,02120{,}02120,0212) ? Donnez deux décimales.

r=r =r=accepté : ± 0.02
5Choix15 ptsSans réponse

Le premier jour montre un petit mouvement, ce qui rend Calme probable à 82 % à lui seul. Quel est le premier état du meilleur chemin pour Petit, Grand, Grand ?

6Remettre les étapes dans l'ordre10 ptsSans réponse

Mettez dans l'ordre les étapes du décodage de Viterbi.

Faites glisser pour réordonner, ou placez le focus sur un élément, Espace pour le soulever, les flèches pour le déplacer et Espace pour le déposer.

  1. 1Après le dernier jour, choisir l'état de plus grand score
  2. 2Commencer avec delta égal à la probabilité initiale fois la première émission
  3. 3Remonter les pointeurs pour lire le chemin
  4. 4Pour chaque jour et état, garder le meilleur prédécesseur et s'en souvenir
7Associer10 ptsSans réponse

Associez chaque terme à son sens.

Choisissez le partenaire de chaque élément de gauche.

δt(j)\delta_t(j)δt​(j)
ψt(j)\psi_t(j)ψt​(j)
Algorithme forward
Algorithme de Viterbi
8Expliquer avec des mots15 ptsSans réponse

En une ou deux phrases, expliquez pourquoi le décodage de Viterbi s'écrit en général avec les logs des probabilités et pourquoi cela ne change pas le meilleur chemin.

Mode mathsSaisie au clavier ou en LaTeXExercice 1 sur 8 · Ctrl ⏎ pour vérifier

Connectez-vous pour exécuter votre code.

Tous les cours sont gratuits à lire. Créez un compte ou connectez-vous pour exécuter du code, lancer les tests et soumettre ce lab.

  • IDE dans le navigateur avec terminal bash — rien à installer
  • Correction instantanée, XP et votre place dans le parcours
Créer un compteSe connecter
OU
Continuer avec GitHub