应用两个步骤
既然您已经创建了 expectation 和 maximization 两个函数,现在可以将 EM 算法应用到一个数据框上。
本练习的目标是在数据 gaussian_sample 中找到两个高斯簇。假设两个 sd 都等于 10。
本练习是课程的一部分
R 中的混合模型
练习说明
- 先猜测其中一个簇的均值为
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")
}