作为唯一由人类自身创造的符号,自然语言处理一直是机器学习界不断研究的方向。
自然语言处理技术主要是让机器理解人类的语言的一门领域。在自然语言处理技术中,大量使用了编译原理相关的技术,例如词法分析,语法分析等等。如何利用机器学习技术进行自然语言的的深度理解,一直是工业和学术界关注的焦点。
但是,和已经被研究30余年的自然语言处理不同, 自然语言理解(NLU) 成为了机器学习面临的新困境。
下文将介绍自然语言处理领域的背景,自然语言处理(NLP)自然语言理解(NLU) 的区别,以及机器学习不会解决自然语言理解(NLU)问题的三大原因。

1、实证和数据驱动的革命

在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 方法在理论上和技术上也存在缺陷。

2、自然语言处理 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面临的困难到底是什么呢?

3、自然语言理解的困境:缺失文本现象

“缺失文本现象”(Missing Text Phenomenon,MTP),被一度认为是NLU中所有挑战的核心。
语言交流如下图所示:传达者用某种自然语言将思想编码为语言表达,接收者将语言表达解码为传达者想要传达的思想。

“解码”过程就是NLU中的“U”,也就是说,理解语言话语背后的思想正是在解码过程中发生的事情。这个过程中不能有任何妥协和误差,只能从传达者的话语里找到那唯一准确的思想,这便是NLU的困境。

对此,出现了两个优化的方向:

  • 传达者可以减少一句话里的信息量,或者让接收者增加一些额外的理解工作;
  • 传达者会尽最大努力,在一句话里传递全部想法,而接收者几乎什么都做不了。

这个过程演变出了一个正确的平衡,即传达者和接收者的整体工作都得到了同样的优化。这种优化导致传达者传递的信息,相对的也遗漏了接收者获得的信息。而往往被遗漏的信息,通常是我们假定的传达者和接收者都能获得的信息,也就是所谓的普通背景知识。

为了理解这一过程的复杂性,请看下图:红框中的是未优化过的原信息,而绿框中的是我们所说的“信息量同等”但内容少了很多的信息。


绿框里的话就和我们日常生活说的话一样,简短却保证信息量的准确传达。通常我们不会明确地陈述所有其他的东西,因为我们为了有效的沟通,不会去说那些众所周知的事情,这是人类在20万年的进化过程中发展出来的技能,但这就是NLU的问题所在:机器不知道我们遗漏了什么,因为它们不知道我们都知道什么。

最终,得出一个结论:NLU是非常非常困难的。因为如果一个软件程序不能以某种方式“揭示”人类在语言交流中遗漏和隐含假定的所有东西,那么它就不能完全理解我们语言话语背后的思想。这实际上是NLU面临的挑战,而不是解析、词干提取、POS标记、命名实体识别等等。


上图列举了NLU其他的众所周知的挑战,而这都是由于MTP(缺失文本现象)。这些句子中,缺失(和隐含假设)的文本都被标记为了红色。这些例子表明,NLU的挑战是去发现丢失的信息,但不是去填补这些信息,而是对这些信息为什么会被人类下意识省略有一个清楚的认识

下文将列出三个原因,来解释为什么机器学习不会解决自然语言理解(NLU)问题。

4、原因一:机器学习需要压缩,NLU需要解压缩

由于MTP的影响,机器对理解自然语言是极其困难的——因为,我们日常交流中的口语是经过高度压缩的,NLU的挑战在于,明明知道被压缩的内容,却选择去解压缩缺失的文本——对于我们人类来说很简单,而对于机器却很困难,因为机器并不知道我们都知道的东西。

但MTP现象恰恰说明了为什么数据驱动和机器学习方法可能在一些NLP下游任务中有用,但却与NLU无关。已有学者在数学上建立了可学习性和可压缩性之间的等价关系。也就是说,数据集的易学性只有在数据高度可压缩(即它有很多冗余)的情况下才会发生,反之亦然。

而压缩之间的证据和易学性相当技术,直观上很容易看出为什么:学习是关于消化大量的数据和发现一个函数在多维空间的覆盖整个数据集(以及看不见的数据相同的模式 / 分布)。因此,当所有的数据点可以压缩到一个单一的流形时,学习性就发生了。

但是MTP已经告诉了我们,NLU是需要解压缩的:


机器学习是研究怎么将大量数据泛化成单个函数。而由于MTP的存在,NLU需要智能的“解压缩”技术来发现所有缺失的和隐含的假定文本。

因此,机器学习和NLU是不相容的——事实上,它们是矛盾的。

5、原因二:没有统计的意义

机器学习本质上是一种基于在数据中发现某些模式(相关性)的范式。而自然语言中的各种现象在统计上存在显著差异。但是,以下面这个例子为证:

Q.奖杯装不进手提箱,因为它也太
1a、小了
1b、大了

同义词和反义词,如“小”和“大”(或“开”和“闭”等)出现在相同的上下文中,概率相等。
因此,(1a)和(1b)在统计学上是等价的,但即使对一个4岁的孩子来说,(1a)和(1b)也是相当不同的:(1a)中的“它”指的是“手提箱”,(1b)中的“它”指的是“奖杯”。
因此,统计分析不能建模(甚至不能近似)语义。

此时便会出现异议:只要用足够的案例进行填充,机器就可以统计出显著性。但是,需要多少案例才能让机器“学习”如何解析上文问题中这样的结构引用呢?

我们可以对一个“包”、一个“手提箱”、一个“公文包”进行一般化陈述,这些都被认为是通用类型“容器”的子类型。因此,在纯粹的数据驱动范式中,上面的每一个容器都是不同的,必须在数据中分别列出。
如果我们在上面的模式上加上语义上的差异(把“因为”改为“虽然”-),机器学习后一个粗略的计算显示,一个系统将需要呈现大约4000万个以上的变化,以学习如何解析引用。

正如著名认知科学家GeorgeMiller的话,为了捕捉NLU系统所需要的所有语法和语义变化,神经网络可能需要比宇宙中原子的数量还要多的特征数量!

6、原因三:Intension

长期以来,逻辑学家一直在研究一个名为 “intension” 的语义概念。
为了解释 “intension” 是什么,要从“语义三角(meaning triangle)”的概念开始解释:

在这个三角之中,一个符号用来指代一个概念,而概念可以有实际的对象作为实例。例如,神话中的独角兽只是一个概念,没有实际的独角兽实例。因此,每一事物(或认识的每一对象)都有三个部分:一个指向概念的符号,而概念有时也有实际的实例。

几个世纪以来,哲学家、逻辑学家和认知科学家一直在争论概念的本质及其定义。
他们有一个共识:概念(通常由一些符号 / 标签指代)是由一组属性和属性定义的,也许还有附加的公理和已建立的事实,等等。

然而,概念与实际的实例不同,在完美的数学世界中也是如此。
例如,虽然下面的算术表达式都有相同的扩展,但它们有不同的含义:


“intension” 决定了概念的外延,但外延本身并不是概念的完整表现。

因此,虽然所有表达式的值都是16,它们的值是相等的,但这只是它们的属性之一。事实上,上面的表达式还有其他几个属性,比如它们的语法结构(这就是(a)和(d)不同的原因)、操作符的数量、操作数的数量,等等。

而这个值只是一个属性, “intension” 则是所有属性的集合。

而在应用科学(工程、经济学等)中,我们可以认为这些对象是平等的,但在认知(尤其是在语言理解)中,这种平等是失败的。

这里有一个简单的例子:

假设(1)是真的,也并不意味着我们可以假设(2)为真,尽管我们所做的只是将(1)中的“16”替换为与它相等的值。在物理科学中,我们可以很容易地用一个具有相同属性的物体来代替一个物体,但在认知科学中却行不通。

那么,关于 “intension” 的讨论的要点是什么呢?
自然语言中充满了 “intension” 现象,因为语言所传达的思想对象具有不可忽视的 “intension” 。
机器学习和数据驱动方法的所有变体都是纯粹的外延——它们的操作对象是数字,而不是它们的符号和结构属性,因此在这个范式中,我们无法在自然语言中建模各种 “intension” 现象。

7、结语

语言,是我们用来编码我们拥有的无限想法的工具。在构建越来越大的语言模型时,很多机器学习和数据驱动方法都在徒劳地试图寻找数据中根本不存在的东西。

本文分享了机器学习不会解决自然语言理解(NLU)问题的三大理由,而这篇文章本身也证明了“语言是被压缩了”的观点,其中的遣词造句都需要大脑来“揭示”所有缺失的信息。那么,你认为机器学习未来可以解决自然语言理解(NLU)问题吗?请参与下方投票和评论,分享你的真知灼见!

原文链接:https://thegradient.pub/machine-learning-wont-solve-the-natural-language-understanding-challenge/
译者:王启隆

机器学习不会解决自然语言理解(NLU)问题相关推荐

  1. 自然语言处理NLP、自然语言理解NLU、自然语言生成NLG、任务家族

    自然语言处理NLP.自然语言理解NLU.自然语言生成NLG.任务家族 自然语言生成(NLG) 看图说话(image caption) 说话生图(text to image) 文本相似性(text si ...

  2. 对话系统中的中文自然语言理解 (NLU) 任务介绍

    每天给你送来NLP技术干货! 来自:看个通俗理解吧 Chinese Natural Language Understanding, NLU, in Dialogue Systems 1&2 T ...

  3. 对话系统中自然语言理解NLU——意图识别与槽位填充

    目录 1. 什么是意图识别和槽位填充 1.1 语义槽的设计 2. 意图识别的方法 2.1 规则模板 2.2 统计机器学习 2.3 深度学习 3. 意图识别的难点 4. 槽位填充的方法 5. 参考 问答 ...

  4. 自然语言理解(NLU)个人入门笔记记录1

    概念理解: NLP是我们在让机器基于文本数据完成特定任务时使用的思想.方法和技术的总称--其中一部分支持机器理解文本数据的内容,因此统称NLU:一部分支持机器生成人类可以理解的文本数据,因此统称NLG ...

  5. 为什么神经网络不适合自然语言理解

    本文来自 Ben Dickson 在过去十年中,人工智能的一个主要趋势是通过创建更大的深度学习模型来解决问题.这种趋势在自然语言处理领域最为明显,同时自然语言处理是人工智能最具挑战性的领域之一. 近年 ...

  6. 自然语言一般使用计算机,自然语言理解

    自然语言处理(N LP , Natural Language Processing)是使用自然语言同计算机进行通讯的技术, 因为处理自然语言的关键是要让计算机"理解"自然语言,所以 ...

  7. 用于自然语言理解的多任务深度神经网络

    1. 摘要     本文提出了一个多任务深度神经网络(MT-DNN),用于跨多个自然语言理解(NLU)任务学习表示.MT-DNN不仅利用了大量的跨任务数据,而且还受益于正则化效应,从而产生更通用的表示 ...

  8. 自然语言处理(NLP) vs 自然语言理解(NLU)

    自然语言处理,是Natural Language Processing, 简称NLP 自然语言理解,是Natural Language Understanding,简称NLU. (图1) (图2) 1 ...

  9. 感知自然语言理解(NLU)

    AI即人工智能是一个令人着迷的领域,尤其是基于对话式AI系统的智能音箱的兴起,使人工智能直接走进了我们的家庭. 自然语言是人类的智慧,自然语言处理(NLP)是AI中最为困难的问题之一,而自然语言理解( ...

最新文章

  1. Java云托管服务的开支削减策略
  2. 神马搜索上线奥运会人气榜单 中国女排包揽前三
  3. mac地址 linux c api,如何使用C程序获取linux中接口的mac地址?
  4. C语言输入end时结束程序,给大家一个程序,输入多个字符串以END结束后排序,这个程序运行,即结果都是对的。...
  5. CSDN创始人蒋涛:拥抱中国开源技术生态发展黄金十年
  6. Android8有深度休眠吗,IMX8MQ android休眠功耗过大
  7. MySQL数据类型之BLOB与TEXT及其最大存储限制
  8. c#发送简单的post、get请求
  9. 虚继承中的构造函数的调用
  10. 支持商用,开源的商城系统,推荐给你
  11. 【定制开发】【M3】基于Python+pygame实现的人机AI对战五子棋游戏(保姆级入门讲解)
  12. PDD订单详情接口解密,需要有anti_content(crawlerInfo)
  13. python判断两个数据集是否存在包含关系
  14. 天气预报API (高德地图)
  15. 华为Android10版怎么截屏,华为畅享10e怎么截屏?畅享10e多种屏幕截图方法
  16. 如何根据PPI网络进一步挖掘信息
  17. 湖北工业大学(HBUT)校园网使用路由器、深澜(srun)认证计费系统v4.5.3
  18. 公司产品介绍PPT参考
  19. Laya官方不会告诉你的坑(微信小游戏系列)
  20. n!的任意质因数的个数

热门文章

  1. FSADeprecationWarning: SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and will be disabled
  2. python 类对象转换json的三种方式
  3. 移动端调试神器 VConsole与eruda
  4. CDH安装指南(Centos6)
  5. python爬虫实现实时爬取学校最新通知并推送
  6. 天勤数据结构-代码题2
  7. 百词斩2018年秋招面试题
  8. 再见了 Docker!K8S 云原生架构已成气候!
  9. Java反编译工具JAD的安装与简单使用
  10. WIN7 英文 语言包(KB972813)/多国语言包下载(转)