有没有一种算法或技术能够根据词义对单词进行聚类?

2024-05-11 10:31:00 发布

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

我需要根据单词的意思为相似的单词建立聚类。例如,我想把“苹果”和“水果”、“香蕉”、“蜜饯”放在同一个簇中

有没有一些词典包中有这样的东西,或者由我自己创建集群


Tags: 苹果集群聚类单词词典香蕉水果蜜饯
2条回答

有许多预先训练好的模型供您下载,它们是词干的向量表示。一个流行的选择是谷歌的预训练300维Word2Vec模型,可从以下网站下载:

https://drive.google.com/file/d/0B7XkCwpI5KDYNlNUTTlSS21pQmM/edit

并加载(解压后):

import gensim
model = gensim.models.Word2Vec.load_word2vec_format('GoogleNews-vectors-negative300.bin', binary=True)  

这个型号相当大,但正是你想要的。如果您只对单词的一个子集感兴趣,我建议您只从模型中提取那些单词,并将它们的坐标存储在数据帧中,以供以后(更快)使用

其他型号见下表:

  1. https://fasttext.cc/docs/en/crawl-vectors.html
  2. https://nlp.stanford.edu/projects/glove/
  3. https://fasttext.cc/

谷歌的自然语言处理api可能会有所帮助。这里有一个链接:https://cloud.google.com/natural-language/。有一个选项,演示它的权利在网站上,所以你可以看看,如果这是你正在寻找的

相关问题 更多 >