KMeans集群如何帮助分析word2vec嵌入?

2024-04-27 06:11:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我是NLP的新手。我有一个yelp评论数据集。我在yelp评论的文本栏中使用了word2vector嵌入。我使用K-means和PCA对数据进行可视化,得到了6个分离良好的聚类。现在我想知道,这六个星团代表什么。换句话说,我想看看哪些“单词”属于集群0,以此类推。 我用过这段代码,但输出的字很多

for i, word in enumerate(words):  
    print (word + ":" + str(labels[i]))

标签是k-means标签。我正在考虑一个新的想法 关于K-均值聚类标签的词云

请大家给我一个想法如何继续

我还提供了数据帧头部的照片

enter image description here

多谢各位


Tags: 数据nlp可视化评论代表聚类标签单词
1条回答
网友
1楼 · 发布于 2024-04-27 06:11:16

“前十名”是一个定义不清的概念。最具代表性的前十名?定义集群边界的10个单词?还有别的吗

然而,考虑到这是对您所描述的算法管道性能的定性评估(而不是定量度量),您可能只需要尝试一些事情,看看什么“有效”,例如什么让您有了洞察力……
我想到的两个明显的选择是:

  1. 靠近簇质心的词:每个k-均值簇都有一个质心(簇中点位置的平均值),靠近中心的点可能是基础类的“强”代表

  2. 更一般的-在(降维)嵌入空间本身中查看单词。要么在PCA的前两个特征向量的特征空间中,你声称这对你有用,要么使用稍微现代一点(而且线性度要低得多)的东西,比如tsne

还有许多其他选择,但这些都是常见的做法,也是一个很好的起点


关于评论:从df的外观来看,对于clusteri的单词列表,您只需要执行以下操作-

list_of_words = df[i]['clean'].split()

但是,对于数据帧的图像,我们只能做这么多,这超出了原始问题的范围

相关问题 更多 >