我正在尝试计算不同长度的文本之间的相似性。我目前的方法如下:
- 使用 Universal Sentence Encoder,我将文本转换为一组向量。
- 我对这些向量进行平均以创建最终的特征向量。
- 我使用余弦相似度比较特征向量。
对于大小大致相同的文本,这给了我很好的结果,但我想知道如果文本长度不同,是否有更好的方法用于步骤#2。
我正在尝试计算不同长度的文本之间的相似性。我目前的方法如下:
对于大小大致相同的文本,这给了我很好的结果,但我想知道如果文本长度不同,是否有更好的方法用于步骤#2。
一种方法是使用Word Mover 的距离 (WMD)。WMD 是一种用于查找不同长度文本之间距离的算法,其中每个单词都表示为一个单词嵌入向量。
WMD 距离衡量两个文本文档之间的差异,作为一个文档的嵌入词需要“旅行”以到达另一个文档的嵌入词的最小距离量。
例如:
资料来源:“从词嵌入到文档距离”论文
WMD 可以修改为Sentence Mover's Distance,比较不同句子嵌入之间的距离。