開始使用免費開始

Expectation 函式

到目前為止,你已經學會如何用 Expectation-Maximization 演算法,來估計兩個高斯分佈在 sd 皆為 1 的情況下的參數。本練習的目標是建立 expectation 函式,把在已知 meansproportionssds 時,用來估計各機率的步驟一般化。

本練習屬於課程

R 中的混合模型

檢視課程

練習說明

請完成範例程式碼,建立 expectation 函式。注意,我們現在把各群集的標準差納入為第四個參數。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

expectation <- ___(___, means, proportions, ___){
  # Estimate the probabilities
  exp_data <- data %>% 
    mutate(prob_from_cluster1 = ___[1] * dnorm(x, mean = means[1], sd = ___[1]),
           prob_from_cluster2 = ___[2] * dnorm(x, mean = means[2], sd = ___[2]),
           prob_cluster1 = prob_from_cluster1/(prob_from_cluster1 + prob_from_cluster2),
           prob_cluster2 = prob_from_cluster2/(prob_from_cluster1 + prob_from_cluster2)) %>% 
    select(x, ___, ___)
    
  # Return data with probabilities
  return(exp_data)
}
編輯並執行程式碼