使用Kmeans对Word2vec的输出做聚类

Word2vec会产出每个词语的权重向量

使用这个向量,可以直接对所有的词语聚类

以下代码,以word2vec的model作为输入,进行kmeans训练,同时进行K的迭代计算,选出WSSSE最小的K值

这里使用的是mllib的库

算出来的K值和WSSSE的对应关系为:

使用如下代码进行绘图:

图片如下:

并不是完美的手肘,不过拐点大概在8、9的位置,以8或者9来聚类比较合适

也可以打印距离每个中心的10个数据

然而,查看数据,并不能得到为啥这么分类,聚类的结果不好分析~~

参考文章:

用手肘法选出最佳的kmeans的K值:https://blog.csdn.net/qq_15738501/article/details/79036255

K-MEANS-SPARK文档:https://spark.apache.org/docs/2.2.0/mllib-clustering.html#k-means

发布了242 篇原创文章 · 获赞 13 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/peishuai1987/article/details/89882573