长期以来,我们一直在与机器沟通:编写代码--创建程序--执行任务。
然而,这些程序并非是用人类“自然语言“编写的,像Java、Python、C和C 语言,始终考虑的是"机器能够轻松理解和处理吗?"
“自然语言处理”(Natural Language Processing,NLP)的目的与此相反,它不是以人类顺应机器的方式学习与它们沟通,而是使机器具备智力,学习人类的交流方式。其意义更为重大,因为技术的目的本来就是让我们生活得更轻松。
人工智能与子领域
自然语言处理,实际上是人工智能和语言学的交叉领域,但多年来,仅在语音转录、语音命令执行、语音关键词提取的工作上兢兢业业,规规矩矩,应用到人机交互,就显得十分吃力。
因为在语料预处理阶段,NLP通常直接给出“断句”,比如 "订一张明天从北京到杭州的机票,国航头等舱",经过NLP模型处理后,机器给出的输出如下:
尽管准确率高,但在这背后,我们并不知道机器理解了什么。由于足够好用,人们也就不多问了。
而在更加复杂的任务中,比如机器翻译,基于深度学习的编码、解码架构会将原句子转换成我们根本不熟悉的样子,也就是在无穷维空间中的点。
一旦机器翻译出错,我们打开这个空间的时候,才发现这些点和周围其他点(其他句子)构成的形态,犹如荒芜宇宙里零落的星星那样缥缈和神秘。
研究人员试图向神经网络添加参数以提高它们在语言任务上的表现,然而,语言理解的根本问题是“理解词语和句子下隐藏的含义“。
近日,伦斯勒理工学院的两位科学家撰写了一本名为《人工智能时代语言学》的书,探讨了目前的人工智能学习方法在自然语言理解(Natural Language Understanding,NLU)中的瓶颈,并尝试探索更先进的智能体的途径。
AI必须从“处理”自然语言到“理解”自然语言
机器“记录”了数据并不意味着“理解”了数据。近几十年来,机器学习算法一直尝试完成从NLP 到 NLU 的转型。过去,机器学习曾长期承载着转型使命的荣光。
机器学习模型是一种知识精益系统,它试图通过统计词语映射来回答上下文关系。在这些模型中,上下文是由词语序列之间的统计关系形成的,而非词语背后的含义。自然,数据集越大、示例越多样化,机器对上下文关系的理解越精确。
但作者认为,机器学习终将失宠,因为它们需要太多的算力和数据来自动设计特征、创建词汇结构和本体,以及开发将所有这些部分结合在一起的软件系统。而且,机器人也不知道自己在做什么,以及为什么这样做。它们解决问题的方法不像人类--不依赖与世界、语言或自身的互动。因此,它们无法理解两个人长时间对话时,对同一件事情的描述越来越简短的情景,也就是文本缺失现象。
巨大人工成本使机器学习陷入瓶颈,并迫使人们寻求其他方法来处理自然语言, 并导致了自然语言处理中经验主义范式(认为语言理解起源于感觉)的出现。
具有“感觉”的人工智能,或许会在自然语言处理上有三个突破:
- 通过语言交流激活感觉模型,并以此承载记忆,从而可以应对人类之间交流时的文本缺失现象,实现“默契”(正确)的解码;
- 理解语言的上下文相关含义,并从单词和句子的歧义中找到合适的理解,以及从感觉世界中寻找更强的约束和限制;
- 向它们的人类合作者解释它们的想法、行动和决策;
与人类一样,机器也需要在世界互动时保持终身学习。而机器学习由于将可压缩性和可学习性对等起来,并且限于表面的符号统计关系理解,以及不可解释性等原因,不可避免丢失背景信息,而做不到上述层次的理解。
总之,机器要理解自然语言,感觉经验是必不可少的。这与 Jürgen Schmidhuber在虚拟的游戏环境中设计的智能体是类似的逻辑,研究人员不会让智能体学习局限于单一的决策输出,而是逐步通过与虚拟世界互动,首先建立对虚拟世界的表征模型,再基于表征模型去进行决策。
正如 McShane 和 Nirenburg 在他们的书中指出的那样,“ 语言理解不能与整体的认知过程区分开来,启发机器人理解语言也要运用其他感知(例如视觉、触觉)。”正如在现实世界中,人类也是利用他们丰富的体态动作来填补语言表达的空白。
1 经验和数据驱动的革命
20世纪90年代初,一场统计革命席卷了人工智能 (AI),并在 2000 年代达到高潮。神经网络化身为现代深度学习 (DL) 凯旋归来,并席卷了人工智能的所有子领域。尽管深度学习最具争议的应用是自然语言处理 (NLP),但仍旧带来了经验主义的转向。
NLP 中广泛使用数据驱动的经验方法有以下原因:符号和逻辑方法未能产生可扩展的 NLP 系统,导致 NLP (EMNLP,此指数据驱动、基于语料库的短语,统计和机器学习方法)中所谓的经验方法的兴起。
这种向经验主义转变的动机很简单:在我们深入了解语言如何运作以及如何与我们口语谈论的内容相关之前,经验和数据驱动的方法可能有助于构建一些实用的文本处理应用程序。
正如EMNLP的先驱之一肯尼思·丘奇(Kenneth Church)所解释的,NLP数据驱动和统计方法的拥护者对解决简单的语言任务感兴趣,其动机从来不是暗示语言就是这样运作的,而是"做简单的事情总比什么都不做好"。
丘奇认为,这种转变的动机被严重误解,他们以为这个“可能大致正确的”( Probably Approximately Correct ,PAC)范式将扩展到完全自然的语言理解。
“新一代和当代的NLP研究人员在语言学和NLP的理解上有差别,因此,这种被误导的趋势导致了一种不幸的状况:坚持使用"大语言模型"(LLM)构建NLP系统,这需要巨大的计算能力,并试图通过记住海量数据来接近自然语言。
这几乎是徒劳的尝试。我们认为,这种伪科学方法不仅浪费时间和资源,而且引诱新一代年轻科学家认为语言只是数据。更糟糕的是,这种方法会阻碍自然语言理解(NLU)的任何真正进展。
相反,现在是重新思考 NLU 方法的时候了。因为我们确信,对 NLU 的"大数据"方法不仅在心理上、认知上甚至计算上都是难以操作的,而且这种盲目的数据驱动 NLU 方法在理论和技术上也有缺陷。
2 语言处理与语言理解
虽然 NLP(自然语言处理)和 NLU(自然语言理解)经常互换使用,但两者之间存在巨大差异。事实上,认识到它们之间的技术差异将使我们认识到数据驱动的机器学习方法。虽然机器学习可能适合某些 NLP 任务,但它们几乎与 NLU 无关。
考虑最常见的"下游 NLP"任务:
综述--主题提取--命名实体识别(NER)--(语义)搜索--自动标记--聚类
上述所有任务都符合所有机器学习方法的基础可能大致正确(PAC) 范式。具体来说,评估一些NLP系统在上述任务的性能是相对主观的,没有客观标准来判断某些系统提取的主题是否优于另一个主题。
然而,语言理解不承认任何程度的误差,它们要充分理解一个话语或一个问题。
举个例子,针对这句话,自然语言理解就需要考虑多种可能:我们有一个退休的BBC记者,曾在冷战期间驻扎在一个东欧国家吗?
某些数据库对上述查询将只有一个正确的答案。因此,将上述内容转换为正式的结构化查询语言查询是巨大的挑战,因为我们不能搞错任何错误。
这个问题背后的"确切"思想涉及:
- 正确解释"退休的BBC记者"——即作为所有在BBC工作的记者,现在退休了。
- 通过保留那些在某个"东欧国家"工作的"退休BBC记者",进一步过滤上述内容。
除了地理限制之外,还有一个时间限制,即这些"退休的BBC记者"的工作时间必须是"冷战期间"。
- 以上意味着将介词短语为"在冷战期间",而不是"一个东欧国家"(如果"冷战期间"被替换为"具有华沙成员资格",就要考虑不同的介词短语')
- 做正确的量化范围:我们正在寻找的不是在 "一些" 东欧国家工作的记者, 而是“任何”在“任何”东欧国家工作的记者。
上述具有挑战性的语义理解功能都不能"大致"或"可能"正确——而是应该绝对正确。换言之,我们必须从对上述问题的多种可能解释中得到一个唯一的含义。
总而言之,对普通口语的真正理解与单纯的文本(或语言)处理是完全不同的问题。在文本(或语言)处理中,我们可以接受近似正确的结果。
这时候,我们应该可以清楚地明白:为什么NLP与NLU不同,为什么NLU对机器来说是困难的。但是NLU 的困难根源究竟是 什么?
3 为什么 NLU 很困难:文本容易丢失
首先是"缺失文本现象"(MTP),我们认为它是自然语言理解中所有挑战的核心。语言交流如下图所示:
演讲者将思想“编码”为某种自然语言中的话语,然后听众将话语“解码”为演讲者打算/希望传达的思想。"解码"过程是NLU中的"U"--即理解话语背后的思想。
说话者和听者的思想语言交流
此外,"解码"过程中需要没有任何误差,才能从说话者的话语中,找出唯一一种意在传达的含义。这正是NLU困难的原因。
在这种复杂的通信中,有两种优化通信的方案:
1.说话者可以压缩(和最小化)在思想编码中发送的信息量,并且听者做一些额外的工作解码(解压缩)话语;
2.演讲者多做一部分工作,把所有想要传达的思想信息告诉听者,减少听者的工作量;
这两种过程都在发生和演进,最后似乎也得到了不错的平衡吗,说话者和听者的总体工作都得到了同样的优化。
该优化减少了说话者的编码信息,忽略了假设听众已知的其他信息,但不会造成对话的背景信息丢失。
举个例子,对比下面黄色框中的未优化的文本和绿色框中优化的(等效但小得多的)文本。
绿色框中较短的信息(我们通常就是这样说话的)传达了与较长的盒子相同的思想。通常,我们不会明确说明所有其他内容,因为我们都知道。这种技能几乎花了人类20万年的进化。
但这就是NLU的问题所在:机器不知道我们遗漏了什么,它们不知道我们都知道什么。
最终结果是NLU非常困难,如果它们不能以某种方式"整理"我们话语的所有的含义,那么软件程序将永远不能完全理解我们话语背后的想法。
NLU的挑战,并不是解析,阻止,POS标记,命名实体识别等, 而是解释或揭示那些缺失的信息。并隐含地假定为共享和共同的背景知识。
在此背景下,我们现在提供三个原因,说明为什么机器学习和数据驱动的方法不会为自然语言理解提供解决方案。
1、ML 方法甚至与 NLU 无关:ML 是压缩的,语言理解需要解压缩
上述讨论(希望)是一个令人信服的论点,即机器的自然语言理解由于MTP(媒体传输协议,Media Transfer Protocol)而变得困难,因为我们日常口语被高度压缩,因此"理解"的挑战在于未压缩(或发现)缺失的文本。
机器的语言理解是困难的,因为机器不知道我们都知道什么。但 MTP 现象正是为什么数据驱动和机器学习方法虽然在某些 NLP 任务中可能很有用,但与 NLU 甚至不相关的原因。在这里,我们提出这个证据:
机器可学习性(ML) 和可压缩性(COMP)之间的等价性已在数学上建立。即已经确定,只有在数据高度可压缩(未压缩的数据有大量冗余)时,才能从数据集中学习,反之亦然。
虽然可压缩性和可学习性之间的证明在技术上相当复杂,但其实很容易理解:学习是关于消化大量数据并在多维空间中找到一个"覆盖"整个数据集(以及看不见的的函数具有相同模式/分布的数据)。
因此,当所有数据点都可以压缩时,就会发生可学习性。但是 MTP 告诉我们 NLU 是关于解压缩的。因此,我们梳理出以下内容:
机器学习是关于发现将大量数据概括为单一函数。另一方面,由于MTP,自然语言理解需要智能的"不压缩"技术,可以发现所有缺失和隐含的假定文本。因此,机器学习和语言理解是不兼容的——事实上,它们是矛盾的。
2、ML 方法甚至与 NLU 无关:统计上的无意义
ML 本质上是一种基于在数据中找到一些模式(相关性)的范式。因此,该范式的希望是在捕捉自然语言中的各种现象时,发现它们存在统计上的显着差异。但是,请考虑以下事项):
奖杯不适合在手提箱,因为它是太 :1a.小 ;1b.大
请注意,"小"和"大"(或"打开"和"关闭"等)等反义词/反义词以相同的概率出现在相同的上下文中。这样,(小)和(大)在统计上等效的,但即使是一个4岁(小)和(大)是显着不同:"它"在(小)是指"手提箱"而在(大)中它指的是"奖杯"。基本上,在简单的语言中,(1 a ) 和 (1 b ) 在统计上是等价的,尽管在语义上远非如此。因此,统计分析不能建模(甚至不能近似)语义——就这么简单!
人们可以争辩说,有了足够的例子,一个系统可以确立统计学意义。但是,需要多少个示例来"学习"如何解决结构中的引用(如 (1)中的引用)?
在机器学习/数据驱动的方法中,没有类型层次结构,我们可以对"包"、"手提箱"、"公文包"等进行概括性陈述,所有这些声明都被视为通用类型"容器"的子类型。因此,以上每个模式,在纯数据驱动的范式中,都是不同的,必须在数据中分别"看到"。
如果我们在语义差异中加入上述模式的所有小语法差异(例如将"因为"更改为"虽然",这也更改了"它"的正确引用),那么粗略计算告诉我们,机器学习/数据驱动系统需要看到上述 40000000 个变体,以学习如何解决句子中的引用。如果有的话,这在计算上是不可信的。正如Fodor和Pylyshyn曾经引用著名的认知科学家乔治.米勒( George Miller),为了捕捉 NLU 系统所需的所有句法和语义变化,神经网络可能需要的特征数量超过宇宙中的原子数量!这里的寓意是:统计无法捕捉(甚至不能近似)语义。
3、ML 方法甚至与 NLU 无关:意图
逻辑学家们长期以来一直在研究一种语义概念,试图用语义三角形解释什么是"内涵"。
一个符号用来指代一个概念,概念可能有实际的对象作为实例,但有些概念没有实例,例如,神话中的独角兽只是一个概念,没有实际的实例独角兽。类似地,"被取消的旅行"是对实际未发生的事件的引用,或从未存在的事件等。
因此,每个"事物"(或认知的每一个对象)都有三个部分:一个符号,符号所指的概念以及概念具有的具体实例。我有时说,因为概念"独角兽"没有"实际"实例。概念本身是其所有潜在实例的理想化模板(因此它接近理想化形式柏拉图)
一个概念(通常由某个符号/标签所指)是由一组属性和属性定义,也许还有额外的公理和既定事实等。然而,概念与实际(不完美)实例不同,在数学世界中也是如此。因此,例如,虽然下面的算术表达式都有相同的扩展,但它们有不同的语气:
内涵决定外延,但外延本身并不能完全代表概念。上述对象仅在一个属性上相等,即它们的值在许多其他属性上是不同的。在语言中,平等和同一性不能混淆,如果对象在某些属性值中是平等的,则不能认为对象是相同的。
因此,虽然所有的表达式评估相同,因此在某种意义上是相等的,但这只是它们的属性之一。事实上,上述表达式有几个其他属性,例如它们的语法结构、操作员数量、操作次数等。价值(这只是一个属性)称为外延,而所有属性的集合是内涵。虽然在应用科学(工程,经济学等),我们可以安全地认为它们相等仅属性,在认知中(尤其是在语言理解中),这种平等是失败的!下面是一个简单的示例:
假设(1)是真的,即假设(1)真的发生了,我们看到了/ 见证了它。不过,这并不意味着我们可以假设(2)是真的,尽管我们所做的只是将 (1) 中的 '1b' 替换为一个(假设)等于它的值。所以发生了什么事?
我们在真实陈述中用一个被认为与之相等的对象替换了一个对象,我们从真实的东西中推断出并非如此的东西!虽然在物理科学中,我们可以很容易地用一个属性来替换一个等于它的物体,但这在认知上是行不通的!下面是另一个可能与语言更相关的示例:
通过简单地将"亚历山大大帝的导师"替换为与其相等的值,即亚里士多德,我们得到了(2),这显然是荒谬的。同样,虽然"亚历山大大帝的导师"和"亚里士多德"在某种意义上是平等的(它们都具有相同的价值作为指称),这两个思想对象在许多其他属性上是不同的。那么,这个关于"内涵"的讨论有什么意义呢?
自然语言充斥着内涵现象,因为语言具有不可忽视的内涵。但是机器学习/数据驱动方法的所有变体都纯粹是延伸的——它们以物体的数字(矢量/紧张)表示来运作,而不是它们的象征性和结构特性,因此在这个范式中,我们不能用自然语言来模拟各种内涵。
顺便说一句,神经网络纯粹是延伸的,因此不能表示内涵,这是它们总是容易受到对抗性攻击的真正原因,尽管这个问题超出了本文的范围。
4 结束语
我在本文中讨论了三个原因,证明机器学习和数据驱动方法甚至与 NLU 无关(尽管这些方法可用于某些本质上是压缩任务的文本处理任务)。以上三个理由本身都足以结束这场夸张的自然语言理解的数字工程。
人类在传达自己的想法时,其实是在传递高度压缩的语言表达,需要用大脑来解释和"揭示"所有缺失但隐含假设的背景信息。
语言是承载思想的人工制品,因此,在构建越来越大的语言模型时,机器学习和数据驱动方法试图在尝试找到数据中甚至不存在的东西时,徒劳地追逐无穷大。
我们必须认识到,普通的口语不仅仅是语言数据。
原文链接:
https://thegradient.pub/machine-learning-wont-solve-the-natural-language-understanding-challenge/