自然语言处理算法是什么样的?
0 471
1
该提问暂无详细描述
收藏
2021-01-21 09:39 更新 阿托 •  17067
共 1 个回答
高赞 时间
0

“Adam刺伤了Bob,He流血而亡!”

弄清楚以上句子中的“He”是指Adam还是Bob,是自然语言处理中的一个很大的问题,这个问题也叫“共指解析”。

从较高的层次上讲,该算法将任何给定的候选单词对归类为“同指”、“共指”(意思是指同一事物)或“非核心”。例如,在上述句子中,**<Bob,He>是同指的,而<Adam,He>**不是,此提议的分类器是决策树,它为每个候选对使用以下功能:

  • 距离:两个单词之间的句子数。 (直观上:两个词越远,它们成为核心词的可能性就越小)

  • 代词:两者都是代词,其中之一是代词,还是没有代词。

  • 字符串匹配:两个单词之间的重叠。 (直观上:“特朗普总统”和“总统”很可能同指的。)

  • 数字协议:两者都是单数,都是复数还是都不是。

  • 语义类别协议:如果有语义,两者是否属于相同的语义类别。 (“人员”,“组织”等)

  • 性别协议:如果有性别,两者是否具有相同的性别。 (“男”,“女”)

  • 同位语:两者是否都是赞成的(直观解释:如果句子开头是“美国总统,唐纳德·特朗普说……”,那么“总统”和“唐纳德·特朗普”是同位语关系,则两者可能是同指的)。

  • 等等其他功能

又一个例子如下,这对于孩子来说也很直观,但是对于机器来说却很难理解。

人类:我们想要什么!? 机器:共指解析! 人类:我们什么时候想要它? 机器:我们什么时候想要什么?

收藏
2021-01-21 10:21 更新 正直的烤面包 •  4004