本文介绍了空间相似函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试使用Spacy库进行句子相似性,我想了解它是如何工作的!?
他们的文档不清楚:
默认情况下,Spacy使用向量平均算法,使用 预先训练的向量(如果可用)(例如en_core_web_lg模型)。如果 不是,则使用doc.tensor属性,该属性由 标记器、解析器和实体识别器。这就是en_core_web_sm 模型提供了相似之处。通常,基于张量的相似性 将更具结构性,而单词向量的相似性将是 更具话题性。您还可以自定义.sisimily()方法,以 提供您自己的相似度函数,可以使用 有监督的技术。
我发现了这个问题:How does the .similiarity method works?它说它使用单词嵌入,但在我的实现中,我没有"en_core_web_lg模型",但我有en_core_web_sm,那么如何通过"标签、解析器和实体识别器"来计算相似度?
推荐答案
仔细查看文档,我认为您可以找到您要搜索的内容。
首先,一个文档对象包含很多令牌。DOC的向量是令牌向量的平均值。 现在,记号的向量是多少?如果您使用md
或lg
模型,这意味着token.vec
为您提供了令牌向量,这实际上是一个手套向量。如果您使用的是sm
模型,则文档说明该向量包含结构信息。这意味着具有相同pos标签和相似DEP行为的令牌将具有比其他令牌更高的相似性分数,即使它们的语义非常不同。
一般备注是,如果您不打算对sm
模型使用相似性方法,则不要使用该方法,因为很可能会得到不准确的结果。
这篇关于空间相似函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!