最初の例
典型的なケースは、自然言語処理のコンテキストでのタグ付けです。詳細はこちらをご覧ください。基本的には、文中の単語の語彙カテゴリ(名詞、形容詞など)を判別できるようにすることです。基本的な考え方は、隠れマルコフモデル(HMM)で構成される言語のモデルがあるということです。このモデルでは、隠された状態は語彙のカテゴリに対応し、観察された状態は実際の単語に対応します。
それぞれのグラフィカルモデルには次のような形式があります。
ここで、は文中の単語のシーケンスであり、はシーケンスですタグの。y=(y1,...,yN)x=(x1,...,xN)
トレーニングが完了すると、目的は、指定された入力文に対応する語彙カテゴリの正しいシーケンスを見つけることです。これは、言語モデルによって生成された可能性が最も高い/最も互換性のあるタグのシーケンスを見つけることとして定式化されます。
f(y)=argmaxx∈Yp(x)p(y|x)
2番目の例
実際、より良い例は回帰です。理解が容易になるだけでなく、最尤(ML)と最大事後(MAP)の違いが明確になるためです。
基本的に、問題は、サンプルによって与えられたいくつかの関数を基底関数のセットの線形結合
で近似すること
ここで、は基底関数であり、は重みです。通常、サンプルはガウスノイズによって破損していると想定されます。したがって、ターゲット関数がそのような線形結合として正確に記述できると仮定すると、次のようになります。t
y(x;w)=∑iwiϕi(x)
ϕ(x)w
t=y(x;w)+ϵ
我々は持っているので
この問題のML解は最小化と等価です、p(t|w)=N(t|y(x;w))
E(w)=12∑n(tn−wTϕ(xn))2
これは、よく知られている最小二乗誤差解をもたらします。現在、MLはノイズに敏感であり、特定の状況下では安定していません。MAPを使用すると、重みに制約を課すことで、より優れたソリューションを選択できます。たとえば、典型的なケースはリッジ回帰であり、重みをできるだけ小さくするように要求します。
E(w)=12∑n(tn−wTϕ(xn))2+λ∑kw2k
これは、重み事前ガウスを設定することと同じです。概して、推定される重みはN(w|0,λ−1I)
w=argminwp(w;λ)p(t|w;ϕ)
MAPでは、重みはMLのようなパラメーターではなく、確率変数であることに注意してください。それでも、MLとMAPはどちらも点推定器です(最適な重みの分布ではなく、最適な重みのセットを返します)。