作者 | DartFrog
译者 | 王启隆 责编 | 王晓曼
出品 | CSDN(ID:CSDNnews)
作为唯一由人类自身创造的符号,自然语言处理一直是机器学习界不断研究的方向。
自然语言处理技术主要是让机器理解人类语言的一门领域。在自然语言处理技术中,大量使用了编译原理相关的技术,例如词法分析,语法分析等等。如何利用机器学习技术进行自然语言的的深度理解,一直是工业和学术界关注的焦点。但是,和已经被研究30余年的自然语言处理不同, 自然语言理解(NLU)成为了机器学习面临的新困境。
下文将介绍自然语言处理领域的背景,自然语言处理(NLP)和自然语言理解(NLU)的区别,以及机器学习不会解决自然语言理解(NLU)问题的三大原因。
实证和数据驱动的革命
在20世纪90年代前叶,一场统计学革命如风暴般冲击了人工智能领域——这场革命在2000年代达到顶峰,神经网络以其现代深度学习(Deep Learning,DL)的化身成功回归。
这种转变影响到了人工智能的所有子领域,其中最具争议的应用是自然语言处理(Natural Language Processing,NLP)——人工智能的一个子领域。
数据驱动的经验方法在NLP中的广泛使用,是因为符号和逻辑的方法论在独占鳌头的三十年后,未能产生可扩展的NLP系统,促使了所谓的自然语言处理经验法(Empirical methods in NLP,EMNLP)的兴起——EMNLP可以用来统称数据驱动、基于语料库的短语、统计和机器学习的方法。
这种经验主义的转变,其动机很简单:直到我们对语言的工作原理以及语言如何与我们在日常口语中谈论的世界的知识有一些了解之前,经验和数据驱动的方法可能有助于构建一些实用的文本处理应用程序。
EMNLP的先驱之一,Kenneth Church对这一动机的解释是,NLP 的数据驱动和统计方法的倡导者们对解决简单的语言任务更感兴趣——他们的动机从来不是弄清楚语言的工作原理,而是“做一些简单的事情总比什么都不做要好”。
然而,Church在一篇论文《钟摆摆得太远》(A Pendulum swing Too Far)中指出,人们严重误解了这种转变的动机。
正如Marjorie McShane(《人工智能时代语言学》的作者)在2017年所指出的,后来的几代人误解了这种实证趋势,这种趋势是由对简单任务的实际解决方案所激发的,因为他们假设这种近似正确模型( Probably Approximately Correct,PAC)范式将扩展到完全的自然语言理解(Natural Language Understanding, NLU)。
McShane说:“这些信念是如何在NLP群体中获得准公理地位的,这是一个令人着迷的问题,Church的一项观察部分地回答了这个问题:最近和现在的几代NLPers(NLP研究者)在语言学和NLP历史方面接受的教育不够广泛,因此,缺乏哪怕触及皮毛的动力。”
这种被误导的趋势导致了不幸的事态 :坚持使用 大型语言模型(Large Language Models,LLM)构建NLP系统,需要大量的计算能力,并试图通过记忆大量数据来近似自然语言的真实情况,但结果是徒劳的。
这种伪科学的方法不仅浪费时间和资源,而且正在腐蚀一代年轻科学家,让他们认为语言只是数据——这只会导致绝望,并阻碍NLU方面的任何真正进展。
那么,现在是时候重新思考NLU的工作方法了, NLU的“大数据”处理方法不仅在心理上、认知上,甚至在计算上都是不可信的,而且正如下文即将展示的 ,这种盲目的数据驱动的 NLU 方法在理论上和技术上也存在缺陷。
自然语言处理 vs 自然语言理解
虽然自然语言处理(NLP)和自然语言理解(NLU)经常可以交换着使用,但这两者之间有本质的区别,突出这一区别是至关重要的。
事实上,认识到语言理解和单纯的语言处理之间的技术差异,会让我们意识到数据驱动和机器学习的方法虽然适用于某些 NLP 任务,但与 NLU 无关。
参考以下最常见的NLP下游任务(Downstream NLP Tasks):
- 总结
- 主题提取
- 命名实体识别(NER)
- (语义)搜索
- 自动标记
- 聚类
上述所有任务都与作为所有机器学习方法基础的近似正确模型(PAC)范式一致。具体来说,评估某些自然语言处理系统对上述任务的输出是主观的:没有客观的标准来判断一个摘要是否比另一个好,或者某个系统提取的(关键)主题 / 短语比另一个系统提取的更好,等等。
然而,语言理解不允许有任何程度的自由。要完全理解一个话语或一个问题,需要理解说话者试图表达的唯一思想。
为了理解这个过程的复杂性,可以参考下面的这个自然语言问题:
Do we have a retired BBC reporter that was based in an East European country during the Cold War?
(我们是否有一位在冷战期间驻扎在东欧国家的退休 BBC 记者?)
在某些数据库中,这个问题只会有一个正确答案。
因此,将上述内容转换为正式的 SQL(或 SPARQL)查询非常具有挑战性,这一句话的理解便有以下的重点:
- 正确解读“ retired BBC reporter ”这一名词——指的是所有曾在BBC工作,现在已经退休的记者。
- 通过保留那些也在“东欧国家”工作过的“退休BBC记者”来进一步过滤上述内容。
除了地理上的限制,还有时间上的限制,那些“退休的BBC记者”的工作时间必须是“冷战期间”。 - 介词短语“during the Cold War”是基于“was based in”,而不是“an East European country”。
- 划定正确的量词范围:我们要找的不是在“某个”东欧国家工作的“一个”记者,而是在任何东欧国家工作的任何记者。
译者解释:比方说,将句子里的“during the Cold War”替换成“with membership in the Warsaw Pact”,
那么句子就变成了“Do we have a retired BBC reporter that was based in an East European country with membership in the Warsaw Pact?”
意思是:我们是否有一位驻扎在华沙条约组织内东欧国家的退休 BBC记者?”
也就是说,原句中,东欧国家这个名词不需要“冷战期间”或者“华沙条约组织”等限定词,它可以是任何东欧国家。如果把在英文句子里的“an East European country during the Cold War”视为一个整体,那就变成了“冷战时期的东欧国家”,整个句子都会产生歧义。
为了避免引起歧义,以上所有语义理解功能都必须做到完全准确。换句话说,根据我们对世界的常识,我们必须从对上述问题的多种可能解释中,得到一个且唯一的意义,也就是说话人的核心思想。
总之,对普通口语的真正理解与单纯的文本(或语言)处理是完全不同的问题,在文本(或语言)处理中,我们可以接受近似正确的结果——也就是NLP。
通过这个简短的描述,应该可以清楚地了解为什么NLP与NLU不同,以及为什么NLU对机器来说是困难的。
但是NLU面临的困难到底是什么呢?
自然语言理解的困境:缺失文本现象
“缺失文本现象”(Missing Text Phenomenon,MTP),被一度认为是NLU中所有挑战的核心。
语言交流如下图所示:传达者用某种自然语言将思想编码为语言表达,接收者将语言表达解码为传达者想要传达的思想。
“解码”过程就是NLU中的“U”,也就是说,理解语言话语背后的思想正是在解码过程中发生的事情。这个过程中不能有任何妥协和误差,只能从传达者的话语里找到那唯一准确的思想,这便是NLU的困境。
对此,出现了两个优化的方向:
- 传达者可以减少一句话里的信息量,或者让接收者增加一些额外的理解工作;
- 传达者会尽最大努力,在一句话里传递全部想法,而接收者几乎什么都做不了。
这个过程演变出了一个正确的平衡,即传达者和接收者的整体工作都得到了同样的优化。这种优化导致传达者传递的信息,相对的也遗漏了接收者获得的信息。而往往被遗漏的信息,通常是我们假定的传达者和接收者都能获得的信息,也就是所谓的普通背景知识。
为了理解这一过程的复杂性,请看下图:红框中的是未优化过的原信息,而绿框中的是我们所说的“信息量同等”但内容少了很多的信息。
绿框里的话就和我们日常生活说的话一样,简短却保证信息量的准确传达。通常我们不会明确地陈述所有其他的东西,因为我们为了有效的沟通,不会去说那些众所周知的事情,这是人类在20万年的进化过程中发展出来的技能,但这就是NLU的问题所在:机器不知道我们遗漏了什么,因为它们不知道我们都知道什么。
最终,得出一个结论:NLU是非常非常困难的。因为如果一个软件程序不能以某种方式“揭示”人类在语言交流中遗漏和隐含假定的所有东西,那么它就不能完全理解我们语言话语背后的思想。这实际上是NLU面临的挑战,而不是解析、词干提取、POS标记、命名实体识别等等。
上图列举了NLU其他的众所周知的挑战,而这都是由于MTP(缺失文本现象)。这些句子中,缺失(和隐含假设)的文本都被标记为了红色。这些例子表明,NLU的挑战是去发现丢失的信息,但不是去填补这些信息,而是对这些信息为什么会被人类下意识省略有一个清楚的认识。
下文将列出三个原因,来解释为什么机器学习不会解决自然语言理解(NLU)问题。
原因一:机器学习需要压缩,NLU需要解压缩
由于MTP的影响,机器对理解自然语言是极其困难的——因为,我们日常交流中的口语是经过高度压缩的,NLU的挑战在于,明明知道被压缩的内容,却选择去解压缩缺失的文本——对于我们人类来说很简单,而对于机器却很困难,因为机器并不知道我们都知道的东西。
但MTP现象恰恰说明了为什么数据驱动和机器学习方法可能在一些NLP下游任务中有用,但却与NLU无关。已有学者在数学上建立了可学习性和可压缩性之间的等价关系。也就是说,数据集的易学性只有在数据高度可压缩(即它有很多冗余)的情况下才会发生,反之亦然。
而压缩之间的证据和易学性相当技术,直观上很容易看出为什么:学习是关于消化大量的数据和发现一个函数在多维空间的覆盖整个数据集(以及看不见的数据相同的模式 / 分布)。因此,当所有的数据点可以压缩到一个单一的流形时,学习性就发生了。
但是MTP已经告诉了我们,NLU是需要解压缩的:
机器学习是研究怎么将大量数据泛化成单个函数。而由于MTP的存在,NLU需要智能的“解压缩”技术来发现所有缺失的和隐含的假定文本。
因此,机器学习和NLU是不相容的——事实上,它们是矛盾的。
原因二:没有统计的意义
机器学习本质上是一种基于在数据中发现某些模式(相关性)的范式。而自然语言中的各种现象在统计上存在显著差异。但是,以下面这个例子为证:
Q.奖杯装不进手提箱,因为它也太
1a、小了
1b、大了
同义词和反义词,如“小”和“大”(或“开”和“闭”等)出现在相同的上下文中,概率相等。
因此,(1a)和(1b)在统计学上是等价的,但即使对一个4岁的孩子来说,(1a)和(1b)也是相当不同的:(1a)中的“它”指的是“手提箱”,(1b)中的“它”指的是“奖杯”。
因此,统计分析不能建模(甚至不能近似)语义。
此时便会出现异议:只要用足够的案例进行填充,机器就可以统计出显著性。但是,需要多少案例才能让机器“学习”如何解析上文问题中这样的结构引用呢?
我们可以对一个“包”、一个“手提箱”、一个“公文包”进行一般化陈述,这些都被认为是通用类型“容器”的子类型。因此,在纯粹的数据驱动范式中,上面的每一个容器都是不同的,必须在数据中分别列出。
如果我们在上面的模式上加上语义上的差异(把“因为”改为“虽然”-),机器学习后一个粗略的计算显示,一个系统将需要呈现大约4000万个以上的变化,以学习如何解析引用。
正如著名认知科学家GeorgeMiller的话,为了捕捉NLU系统所需要的所有语法和语义变化,神经网络可能需要比宇宙中原子的数量还要多的特征数量!
原因三:Intension
长期以来,逻辑学家一直在研究一个名为 “intension” 的语义概念。
为了解释 “intension” 是什么,要从“语义三角(meaning triangle)”的概念开始解释:
在这个三角之中,一个符号用来指代一个概念,而概念可以有实际的对象作为实例。例如,神话中的独角兽只是一个概念,没有实际的独角兽实例。因此,每一事物(或认识的每一对象)都有三个部分:一个指向概念的符号,而概念有时也有实际的实例。
几个世纪以来,哲学家、逻辑学家和认知科学家一直在争论概念的本质及其定义。
他们有一个共识:概念(通常由一些符号 / 标签指代)是由一组属性和属性定义的,也许还有附加的公理和已建立的事实,等等。
然而,概念与实际的实例不同,在完美的数学世界中也是如此。
例如,虽然下面的算术表达式都有相同的扩展,但它们有不同的含义:
“intension” 决定了概念的外延,但外延本身并不是概念的完整表现。
因此,虽然所有表达式的值都是16,它们的值是相等的,但这只是它们的属性之一。事实上,上面的表达式还有其他几个属性,比如它们的语法结构(这就是(a)和(d)不同的原因)、操作符的数量、操作数的数量,等等。
而这个值只是一个属性, “intension” 则是所有属性的集合。
而在应用科学(工程、经济学等)中,我们可以认为这些对象是平等的,但在认知(尤其是在语言理解)中,这种平等是失败的。
这里有一个简单的例子:
假设(1)是真的,也并不意味着我们可以假设(2)为真,尽管我们所做的只是将(1)中的“16”替换为与它相等的值。在物理科学中,我们可以很容易地用一个具有相同属性的物体来代替一个物体,但在认知科学中却行不通。
那么,关于 “intension” 的讨论的要点是什么呢?
自然语言中充满了 “intension” 现象,因为语言所传达的思想对象具有不可忽视的 “intension” 。
机器学习和数据驱动方法的所有变体都是纯粹的外延——它们的操作对象是数字,而不是它们的符号和结构属性,因此在这个范式中,我们无法在自然语言中建模各种 “intension” 现象。
结语
语言,是我们用来编码我们拥有的无限想法的工具。在构建越来越大的语言模型时,很多机器学习和数据驱动方法都在徒劳地试图寻找数据中根本不存在的东西。
本文分享了机器学习不会解决自然语言理解(NLU)问题的三大理由,而这篇文章本身也证明了“语言是被压缩了”的观点,其中的遣词造句都需要大脑来“揭示”所有缺失的信息。那么,你认为机器学习未来可以解决自然语言理解(NLU)问题吗?
原文链接:https://thegradient.pub/machine-learning-wont-solve-the-natural-language...