【发布时间】:2018-05-12 18:51:54
【问题描述】:
所以我正在尝试实施一种 EM 算法来训练用于对数据进行分类的高斯类条件模型。我现在陷入了 M 步,因为我不知道如何计算协方差矩阵。
问题是我有一个大数据集,使用 for 循环遍历每个点会很慢。我也不能使用协方差函数 cov(),因为我需要使用我使用这个公式计算的平均值(mu 符号一)
有没有办法调整 cov() 以使用我想要的平均值?或者有没有其他方法可以在没有 for 循环的情况下做到这一点?
编辑:忘记解释数据矩阵是什么样的。它是一个 nx3,其中每一行都是一个数据点。
它在技术上需要适用于一般情况 nxm 但 n 通常非常大(1000 或更大)而 m 相对较小。
【问题讨论】:
-
您能否编辑帖子以在循环中包含工作(虽然很慢)版本?这将为寻找性能优化提供一个很好的起点。
-
@mikkola 抱歉,我没有那个代码。我被明确告知我将无法循环遍历数据,因为它需要太长时间。我正在寻找的是 for 循环的替代方法。
标签: matlab classification covariance