文档间语义相似度的方法

数据挖掘 nlp 相似 余弦距离 doc2vec
2022-03-10 01:46:01

我想知道人们会采取什么方法,或者在我自己设定的这个挑战上为我指明正确的方向。我对此很陌生,我已经覆盖了一些领域,但想扩展我的技能。

假设你有一篇研究论文的摘要,它是一个较大文档的信息汇总形式,你能从论文列表中计算出这个摘要属于哪篇研究论文吗?

请注意:我不是在问如何总结研究论文。另外,请注意,抽象信息不一定采用与研究论文相同的形式,但在语义上是相似的。

你会用 doc2vec 之类的东西对两个数据集进行编码,以尝试获取文本的语义含义,然后使用余弦相似度吗?

这些论文中使用的数字的语义会在矢量化中丢失吗?

在这种情况下,自定义编码器会工作得最好,还是您认为 USE 或 doc2vec 会更好?

原谅我的基本问题,我只是想在开始编码之前探索一些东西!

1个回答

如果我理解正确,您正在尝试将摘要映射到他们的研究论文。

这是一个简单的起点:

使用整个语料库(所有摘要 + 研究论文)计算 TF IDF 模型。使用此模型将您的摘要和研究论文转换为加权向量表示。在 TF IDF 加权方案下,这些文档将由指向最能区分它们的单词方向的向量表示。换句话说,这些向量指向最能告诉您文档内容的单词。因此,如果两个向量彼此接近,那么这两个文档很可能是关于同一主题的,因为它们使用了相似的词。

这就是余弦相似度的用武之地。取一个摘要,然后遍历所有研究论文向量,计算它们之间的余弦相似度。然后,将该摘要映射到具有最高余弦相似度的研究论文。对每个摘要重复此操作。

一旦你有了这个简单的基线方法,你就可以开始寻找更复杂的模型来捕获语义相似性。