2つのステップを適用する
すでに expectation と maximization 関数を作成しましたので、EM アルゴリズムをデータフレームに適用できます。
この演習の目的は、gaussian_sample データに含まれる 2 つのガウスクラスタを見つけることです。両方の sd は 10 と仮定します。
この演習はコースの一部です
R で学ぶ Mixture Models
演習の手順
- まず、あるクラスタの平均が
0、もう一方が100であると仮定して始めます。expectationとmaximization関数を使ってリストnew_valuesを作成してください。 - これらの値をベクトル
means_initに保存します。比率は等しいと仮定し、ベクトルprops_initに設定します。 - 10 回繰り返します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
means_init <- c(0, 100)
___ <- c(0.5, 0.5)
# Iterative process
for(i in 1:___){
___ <- maximization(___(gaussian_sample, means_init, props_init, c(10, 10)))
means_init <- new_values[[1]]
props_init <- ___[[2]]
cat(c(i, means_init, props_init), "\n")
}