所以我将我的语料库转换成了一个很好的word2vec矩阵。 该矩阵是具有负和&的浮点矩阵。正数。
我似乎无法获得无限的dirichlet过程给我任何有凝聚力的答案。
示例输出[2个步骤]如下所示:
original word2vec matrix:
[[-0.09597077 -0.1617426 -0.01935256 ..., 0.03843787 -0.11019679
0.02837373]
[-0.20119116 0.09759717 0.1382935 ..., -0.08172804 -0.14392921
-0.08032629]
[-0.04258473 0.03070175 0.11503845 ..., -0.10350088 -0.18130976
-0.02993774]
...,
[-0.08478324 -0.01961064 0.02305113 ..., -0.01231162 -0.10988192
0.00473828]
[ 0.13998444 0.05631495 0.00559074 ..., 0.05252389 -0.14202785
-0.03951728]
[-0.02888418 -0.0327519 -0.09636743 ..., 0.10880557 -0.08889513
-0.08584201]]
Running DGPMM for 20 clusters of shape (4480, 100)
Bound after updating z: -1935576384.727921
Bound after updating gamma: -1935354454.981427
Bound after updating mu: -1935354033.389434
Bound after updating a and b: -inf
Cluster proportions: [ 4.48098985e+03 1.00053406e+00 1.00053406e+00 1.00053406e+00
1.00053406e+00 1.00053406e+00 1.00053406e+00 1.00053406e+00
1.00053406e+00 1.00053406e+00 1.00053406e+00 1.00053406e+00
1.00053406e+00 1.00053406e+00 1.00053406e+00 1.00053406e+00
1.00053406e+00 1.00053406e+00 1.00053406e+00 1.00053406e+00]
covariance_type: full
Bound after updating z: -inf
Bound after updating gamma: -inf
Bound after updating mu: -inf
Bound after updating a and b: -inf
Cluster proportions: [ 4.48098985e+03 1.00053406e+00 1.00053406e+00 1.00053406e+00
1.00053406e+00 1.00053406e+00 1.00053406e+00 1.00053406e+00
1.00053406e+00 1.00053406e+00 1.00053406e+00 1.00053406e+00
1.00053406e+00 1.00053406e+00 1.00053406e+00 1.00053406e+00
1.00053406e+00 1.00053406e+00 1.00053406e+00 1.00053406e+00]
可观察到,它看起来像z,gamma& mu全部爆炸,最终系统收敛到只有1个群集,这个群集并不准确。我曾尝试为DPGMM摆弄alpha,但它并没有真正改变太多。
我要做的是使用自动聚类系统自动聚类更接近意义的单词。 K-Means需要'K',我不想提供。
答案 0 :(得分:3)
这里可能会发生一些隐藏的数字问题。问题是数据集的高维度。这将导致高斯混合模型的极小可能性,从而使模型非常不可能。在某些时候,您似乎获得-inf
值,然后失败。
总的来说,群集似乎严重失败。如果查看簇大小,您既可以看到数值问题,也可以看到结果已退化。
一个群集的大小为4480.98985,其他19个群集的大小为1.00053406。这应该加起来4480,我猜......但它没有。另外,20个集群中有19个由单个元素组成?所以你也可能遇到异常值问题。
K-means也不会更好。