1

我正在尝试创建一个计算 2 个字符串之间的相似性的应用程序。琴弦不长。3 句子最长。我做了一些研究,发现了一些可能的解决方案。

第一个使用词袋:计算词并比较生成的 2 个向量(余弦相似度)

第二个使用 TF-IDF 并比较生成的向量。

第三个是使用 word2vec 和比较向量。

现在回答问题。

性能方面,word2vec 的短句性能是否优于 TF-IDF?

训练 word2vec 模型的最佳方法是什么?我应该使用大量文本(例如维基百科转储)还是只使用正在比较的句子来训练它。

如何从 word2vec 中获取句子相似度。我应该平均每个句子中的单词还是有更好的解决方案?

4

1 回答 1

2
  • 有了好的训练数据,word2vec 必须有更好的性能。(我从中得到了很好的结果)

  • 您必须拥有大量数据才能获得良好的模型。如果您正在研究英语,最好的方法是使用预先训练的数据。您可以使用此链接中的好模型。据我所知,谷歌新闻预训练模型运行良好。

  • 在像句子这样的部分文本中使用平均单词是很常见的。更好的方法可以是加权平均,如 tf-idf 加权平均。还有一个关于语义文本相似性的热门研究,您可以从它的Wiki Page关注它

于 2017-06-17T07:08:12.693 回答