1

我的表中有大约 5000 个术语,我想将它们分组到有意义的类别中。

例如,一些术语是:

日产

福特

被捕

吉普车

法庭

结果应该是 Nissan、Ford、Jeep 归为一类,而 Arrested 和 Court 归为另一类。我查看了斯坦福分类器 NLP。我是否正确地认为这是选择为我做这件事的正确人?

4

2 回答 2

2

如果专有名词不多,我建议您使用NLTK 。您可以使用 WordNet 中的语义相似性作为特征并尝试对单词进行聚类。这是关于如何做到这一点的讨论。

要使用斯坦福分类器,你需要知道你想要多少个词桶(类)。此外,我认为这是针对文件而不是文字。

于 2014-01-30T22:42:43.517 回答
0

这是一个有趣的问题,Google 发布的word2vec模型可能会有所帮助。

简而言之,一个词由模型生成的 N 维向量表示。谷歌提供了一个很棒的模型,它从一个模型中返回一个 300 维的向量,该模型在其新闻部门的超过 1000 亿个单词上进行了训练。

有趣的是,这些向量中编码了语义。假设您有单词 King、Man 和 Woman 的向量。一个简单的表达式 (King - Man) + Woman 将产生一个非常接近 Queen 的向量。

这是通过距离计算完成的(余弦距离是它们的默认值,但您可以在向量上使用自己的距离)来确定单词之间的相似性。

对于您的示例,Jeep 和 Ford 之间的距离将远小于 Jeep 和 Arrested 之间的距离。通过这个,您可以“逻辑地”对术语进行分组。

于 2014-04-02T20:46:21.770 回答