语言|NLP≠NLU,机器学习无法理解人类语言( 三 )

虽然 NLP(自然语言处理)和 NLU(自然语言理解)经常互换使用,但两者之间存在巨大差异。事实上,认识到它们之间的技术差异将使我们认识到数据驱动的机器学习方法。虽然机器学习可能适合某些 NLP 任务,但它们几乎与 NLU 无关。
考虑最常见的"下游 NLP"任务:
综述--主题提取--命名实体识别(NER)--(语义)搜索--自动标记--聚类
上述所有任务都符合所有机器学习方法的基础可能大致正确(PAC) 范式。具体来说,评估一些NLP系统在上述任务的性能是相对主观的,没有客观标准来判断某些系统提取的主题是否优于另一个主题。
然而,语言理解不承认任何程度的误差,它们要充分理解一个话语或一个问题。
语言|NLP≠NLU,机器学习无法理解人类语言
文章插图

举个例子,针对这句话,自然语言理解就需要考虑多种可能:我们有一个退休的BBC采访人员,曾在冷战期间驻扎在一个东欧国家吗?
某些数据库对上述查询将只有一个正确的答案。因此,将上述内容转换为正式的结构化查询语言查询是巨大的挑战,因为我们不能搞错任何错误。
这个问题背后的"确切"思想涉及:

  • 正确解释"退休的BBC采访人员"——即作为所有在BBC工作的采访人员,现在退休了。
  • 通过保留那些在某个"东欧国家"工作的"退休BBC采访人员",进一步过滤上述内容。
除了地理限制之外,还有一个时间限制,即这些"退休的BBC采访人员"的工作时间必须是"冷战期间"。
  • 以上意味着将介词短语为"在冷战期间",而不是"一个东欧国家"(如果"冷战期间"被替换为"具有华沙成员资格",就要考虑不同的介词短语')
  • 做正确的量化范围:我们正在寻找的不是在 "一些" 东欧国家工作的采访人员, 而是“任何”在“任何”东欧国家工作的采访人员。
上述具有挑战性的语义理解功能都不能"大致"或"可能"正确——而是应该绝对正确。换言之,我们必须从对上述问题的多种可能解释中得到一个唯一的含义
总而言之,对普通口语的真正理解与单纯的文本(或语言)处理是完全不同的问题。在文本(或语言)处理中,我们可以接受近似正确的结果。
这时候,我们应该可以清楚地明白:为什么NLP与NLU不同,为什么NLU对机器来说是困难的。但是NLU 的困难根源究竟 什么?
3

为什么 NLU 很困难:文本容易丢失
首先是"缺失文本现象"(MTP),我们认为它是自然语言理解中所有挑战的核心。语言交流如下图所示:
演讲者将思想“编码”为某种自然语言中的话语,然后听众将话语“解码”为演讲者打算/希望传达的思想。"解码"过程是NLU中的"U"--即理解话语背后的思想。
语言|NLP≠NLU,机器学习无法理解人类语言
文章插图

说话者和听者的思想语言交流
此外,"解码"过程中需要没有任何误差,才能从说话者的话语中,找出唯一一种意在传达的含义。这正是NLU困难的原因。
在这种复杂的通信中,有两种优化通信的方案:
1.说话者可以压缩(和最小化)在思想编码中发送的信息量,并且听者做一些额外的工作解码(解压缩)话语;
2.演讲者多做一部分工作,把所有想要传达的思想信息告诉听者,减少听者的工作量;