我正在研究各种语义相似性方法,例如word2vec,word mover distance(WMD)和fastText。 fastText并不比Word2Vec更好,因为语义相似性也是如此。 WMD和Word2Vec的结果几乎相似。
我想知道是否有一种替代方案在语义准确性方面优于Word2Vec模型?
我的用例: 为两个句子找到单词嵌入,然后使用余弦相似度找到它们的相似性。
答案 0 :(得分:4)
任何技术是否“优于”另一种技术都将在很大程度上取决于您的训练数据,您选择的特定元参数选项以及您的确切最终任务。 (甚至“语义相似性”可能有许多替代方面,具体取决于应用程序。)
没有一种方法可以从word2vec单词向量转到句子/段落向量。您可以添加原始矢量。您可以平均单位标准化向量。您可以根据其他单词重要度量来执行其他类型的加权平均。所以你隐含的基线不清楚。
基本上,您必须使用自定义评估为您的数据和目标尝试各种方法和参数。
Word Mover的距离不会将每个文本缩减为单个向量,并且两个文本之间的成对计算可能很昂贵,但它已经报告了一些语义相似性任务的非常好的性能。
FastText本质上是word2vec,带有一些额外的增强功能和新模式。关闭附加功能的一些模式与word2vec完全相同,因此在某些wordvecs-to-textvecs方案中使用FastText字向量应该在相同的方案中使用word2vec字向量进行近似近似。某些模式可能有助于字矢量质量用于某些目的,但在wordvecs-to-textvecs方案中使字矢量效率降低。有些模式可能会使单词 - 向量更好地用于总和/平均构图方案 - 你应该特别注意'分类器'模式,它可以在分类任务中训练单词vecs时的平均值。 (在某种程度上,您可能拥有数据的任何语义标签,这可能会使word-vecs更易于组合用于语义相似性任务。)
您可能还想查看“段落向量”技术(在gensim中可用作Doc2Vec
),或其他通过速记名称“fastSent”或“sent2vec”进行的研究结果。