开始使用免费开始使用

应用两个步骤

既然您已经创建了 expectationmaximization 两个函数,现在可以将 EM 算法应用到一个数据框上。

本练习的目标是在数据 gaussian_sample 中找到两个高斯簇。假设两个 sd 都等于 10。

本练习是课程的一部分

R 中的混合模型

查看课程

练习说明

  • 先猜测其中一个簇的均值为 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")
}
编辑并运行代码