NLP VS NLU:彼此替代还是互相融合?

图片来源:pexels.com/@pixabay

随着人工智能的发展与技术的日益复杂化,人们希望现存的概念能做出调整或是适应这些变化。同样,在电脑辅助的自然语言处理领域,自然语言处理(NLP)这一概念是否要为自然语言理解(NLU)让步?这两个概念的关系是否更加微妙和复杂,而不仅仅只是一种技术的线性发展?

本文将分辨自然语言处理和自然语言理解这两种概念,并阐述二者在人工智能相关技术领域的地位。

重要的是,尽管这两个概念有时会交替使用,自然语言处理和自然语言理解虽有共通之处,却不相同。首先,它们都涉及自然语言与人工语言的联系问题,都试图处理非结构化数据(例如语言),而不是要处理结构化数据(如统计数据、行为等)。然而,NLP和NLU均与其他数据挖掘技巧截然不同。

自然语言处理(NLP)

NLP是一个有数十年历史的成熟研究领域,结合了计算机科学、人工智能等学科,与数据挖掘的联系也日益紧密。NLP的最终目标是阅读、解码和理解,让机器领会人类语言的意义,以及把人类的某些任务交给机器代为处理。常见的NLP实例有:线上聊天机器人,文本概括器,自动生成的关键词标签,以及分析现有文本情感的工具。

NLP的任务

NLP广义上指语音识别、自然语言识别、以及自然语言生成等一系列工具。但以往NLP最为常见的任务为以下几点:

· 标记化

· 语法分析

· 信息提取

· 相似性分析

· 语音识别

· 自然语言和语音生成及其他

在现实生活中,NLP用于一切人们能想到的、与语言相关的工作,如文本概括、情感分析、话题提取、命名实体识别、词性标注、关系抽取、词干提取、文本挖掘、机器翻译、问题自动回复、本体扩展、以及语言模型建构等。

NLP的技巧

NLP的两大支柱是句法分析和语义分析。

总而言之:NLP依靠机器学习,通过语义和句法分析获取人类语言的语义。

自然语言理解(NLU)

NLP的发展可以追溯到1950年代,那时的电脑程序员开始尝试输入简单语言;而NLU则兴起于1960年代;人们创造NLU,意在让电脑理解更为复杂的输入语言。NLU是隶属NLP的子话题,它对于自然语言的探索目的更具体,且主要关注机器的阅读理解能力:训练机器的自然语言理解能力,意在让机器理解一段文本的真正含义。

NLU的任务

与NLP相似,NLU使用算法,让人类言语简化为一个结构化的本体。人工智能的算法继而对语言进行分析,识别出目的、时间、地点和情感。尽管如此,通过考察NLU的任务,我们会惊讶地发现,NLP在这一基本概念之上又延伸出了许多其他任务:

NLU是众多步骤中的第一步,后者包括:文本分类、新信息收集、单个文本整理归档,以及在更大的规模上进行内容分析。NLU的实例包括:根据对文本的浅显理解,发布短命令等小型任务,以及根据一套基本的句法和适量词汇,重新规划邮件路径,将其发送给正确的收件人等大型指令。更为复杂精细的工作,就是让机器完全理解新闻类文本,或诗歌和小说中的有意义的细微差别。

总而言之:最好把NLU看作实现NLP的第一步:在机器处理语言之前,它必须去理解这门语言。

NLP与NLU之间的关联

从任务和工作来看,NLU是自然语言处理中不可或缺的一部分,它负责形成对特定文本意义的拟人化理解。而NLP与NLU之间最大的不同就是,NLU超越了对单个词语的理解,因为它试图通过处理读音错误、字母或词语顺序调换等人为错误来理解意义。

诺姆·乔姆斯基于1957年在《句法结构》一书中提出的理论,推动了NLP发展:“对某一语言L进行语言学分析的根本目的是:划分其中的语法序列,也就是构成语言L的句子,与其中的非语法序列,即不属于语言L的句子,从而研究该语法序列的结构。”

的确,句法分析在多种工作中适用。凭借句法分析,NLP能够对若干词语应用语法规律,并从中推导出意义,评定一门语言是否符合语法规则。具体技巧如下:

· 词形还原:将一个词的变化形式/屈折形式(inflected form)划归为一个简单形式,以便分析。

· 词干提取:将一个词的变化形式简化为它的词根的形式。

· 语素切分:将词语划分为不同语素。

· 词语切分:将一个连续的文本划分为不同语群。

· 语法分析:从语法上分析一个句子。

· 词性标注:确定每一个词的词性。

· 句子成分划分:在一个连续的句子中标注分界。

句法分析技巧

但是,语法正确不一定代表句子有效。想一想,“无色的绿色想法正迅猛地沉醉”这个句子没有意义,却符合语法。另外,在现实生活中,有意义的句子经常包含一些小错误,它们因此可能属于语法错误的句子。人际交往容许现成文本和言语出错,因为人们可以凭借优异的模式识别,从语境中提取更多信息,来弥补这些不足。这表明,以句法为主的分析方法不够周全;也说明,人们对多层面的语义研究需要多加关注。

语义分析是NLU的核心。所谓语义分析,就是应用计算机算法,理解词语的意义和解释。目前这种分析方法尚未成型。

以下是部分语义分析技巧:

· 命名实体识别:确定文本中能被划分并纳入预设的分组的部分。

· 词义消歧:根据语境确定一个词的含义。

· 自然语言生成:使用数据库推导语义意图,并将其转化为人类语言。

尽管如此,机器为了理解自然语言,不仅需要考虑语义的字面意思,还要理解语义指示的意图,或是去明白文本想实现的目的。这个层面的语义分析,叫做语用分析,它仅仅是入门NLU/NLP技巧的开端。目前,语用分析多少可以视为情感分析的一部分:例如文本中的消极/积极/中立态度评定。

未来……

商界和学界人士不断为开发NLP和NLU技术投资,以实现创造能与人类互动、像人类一样交流的聊天机器人这一目标,这种聊天机器人最终还要通过图灵测试。他们设想的最终产品,应该不耗费精力、不受管控、有能力直接与人类进行得体且成功的交流。

为实现此目标,人们从三个层面展开研究:

· 句法——文本语法的理解

· 语义——文本字面意义的理解

· 语用——文本目的的理解

不幸的是,由于训练机器需要大量词汇,自然语言的理解和处理没有那幺容易,需要融合多学科的技术:语言、语言学、认知科学、数据科学、计算机科学等其他学科都在此之列。只有综合各种可能视角,我们才能解开人类语言之谜。