Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Nlp 语义文本比较API是如何工作的_Nlp - Fatal编程技术网

Nlp 语义文本比较API是如何工作的

Nlp 语义文本比较API是如何工作的,nlp,Nlp,我目前正在做一个项目,我们试图衡量用户提交的解释性答案与正确答案之间的差异。我遇到过像和这样的API,它们都能够检查两个文本在语义上的接近程度 这些API为我回答了以下问题: 债务人和债权人的区别是什么 回答1:债务人是指欠他人钱的个人或企业 聚会。债权人是指拥有以下权利的个人、银行或其他企业: 向另一方借钱或提供信贷 回答2:债务人有债务或法律义务向债务人支付一定金额 向其购买商品或服务的另一个人或实体 已获得。债权人可以是银行、供应商或个人 蒲公英给了我81%的分数,平行点给了我4.8/5的

我目前正在做一个项目,我们试图衡量用户提交的解释性答案与正确答案之间的差异。我遇到过像和这样的API,它们都能够检查两个文本在语义上的接近程度

这些API为我回答了以下问题:

债务人和债权人的区别是什么

回答1:债务人是指欠他人钱的个人或企业 聚会。债权人是指拥有以下权利的个人、银行或其他企业: 向另一方借钱或提供信贷

回答2:债务人有债务或法律义务向债务人支付一定金额 向其购买商品或服务的另一个人或实体 已获得。债权人可以是银行、供应商或个人

蒲公英给了我81%的分数,平行点给了我4.8/5的相同答案。这是意料之中的事

然而,在我准备演示并计划最终在生产中使用它们之前,我有兴趣在一定程度上了解这些API是如何产生这些分数的

它是一个基于tf idf的带梗负鼠向量积吗


PS:不是NLP方面的专家这一问题非常广泛:语义句子相似性在NLP中是一个开放的问题,执行这项任务的方法多种多样,但在现阶段还远远不够完美。作为一个例子,只需考虑:

特朗普是美国总统

特朗普从未当过美国总统

根据平行点,语义相似度为5。现在,根据你对相似性的定义,这可能是可以的,也可能不是,但问题是,根据你对相似性的处理,如果你有特定的要求,它可能并不完全合适


无论如何,对于实现来说,没有单一的“标准”方法来实现这一点,可以使用一系列的功能:tf idf(或等效功能)、句子的语法结构(即选区或依赖项解析树)、从文本中提取的实体的提述等。。。或者,按照最新的趋势,一个不需要任何显式功能的深层神经网络。

感谢您的响应!我自己瞎混,这些API上看似不连贯的语句也让我获得了很高的一致性分数。我观察了我的答案是否有足够的关键字(出现在示例答案中),但不同的意思是API失败。根据您的经验,您是否遇到过可以进行更有效的语义文本比较的API?我的用例与问题中给出的示例非常相似。通过简短的描述性回答问题检查金融、技术、销售等领域的概念的简单问题。我不知道有比这更可靠的API(但我一般不知道有多少类似的API);我想这是最先进的。最好的解决方案可能是尝试不同的API,看看哪一个最适合您的数据,或者自己开发一些东西(但这很难,很耗时,而且不能保证带来更好的结果)