始める無料で始める

2つのステップを適用する

すでに expectationmaximization 関数を作成しましたので、EM アルゴリズムをデータフレームに適用できます。

この演習の目的は、gaussian_sample データに含まれる 2 つのガウスクラスタを見つけることです。両方の sd は 10 と仮定します。

この演習はコースの一部です

R で学ぶ Mixture Models

コースを見る

演習の手順

  • まず、あるクラスタの平均が 0、もう一方が 100 であると仮定して始めます。expectationmaximization 関数を使ってリスト 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")
}
コードを編集して実行