我在研究论文中回顾了期望最大化(EM)算法,例如这篇论文:
http://pdf.aminer.org/000/221/588/fuzzy_k_means_clustering_with_crisp_regions.pdf
我有一些疑问尚未解决。例如,如果每个数据点有多个维度,会发生什么情况?
例如,我有一个包含6个数据点和4个维度的数据集:
>D1 D2 D3 D4 5, 19, 72, 5 6, 18, 14, 1 7, 22, 29, 4 3, 22, 51, 1 2, 21, 89, 2 1, 12, 28, 1
这意味着在计算期望步骤时,我是否需要计算4个标准差(每个维度一个)?
假设k=3,我是否还需要计算每个聚类的方差(根据论文中的公式,不知道是否必要)还是只计算每个维度的方差(4个属性)?
回答:
通常,你会使用协方差矩阵,它也包括方差。
但这真的取决于你选择的模型。最简单的模型根本不使用方差。更复杂的模型有一个单一的方差值,即所有维度的平均方差。接下来,你可以为每个维度独立设置一个方差;最后但同样重要的是一个完整的协方差矩阵。这可能是最常用的最灵活的高斯混合模型(GMM)。
根据你的实现方式,可能还有更多选择。
来自R的mclust文档:
单变量混合
“E” = 相等方差(一维)
“V” = 可变方差(一维)
多变量混合
“EII” = 球形,等体积
“VII” = 球形,不等体积
“EEI” = 对角线,等体积和形状
“VEI” = 对角线,可变体积,等形状
“EVI” = 对角线,等体积,可变形状
“VVI” = 对角线,可变体积和形状
“EEE” = 椭圆形,等体积,形状和方向
“EEV” = 椭圆形,等体积和等形状
“VEV” = 椭圆形,等形状
“VVV” = 椭圆形,可变体积,形状和方向
单成分
“X” = 单变量正态分布
“XII” = 球形多变量正态分布
“XXI” = 对角线多变量正态分布
“XXX” = 椭圆形多变量正态分布