让机器理解人类语言

Deep-Sci:"-sci-"源自拉丁语的"scientia"(知识)

小科

物语

+

你,会跟机器人谈恋爱吗?

01

自然语言处理(NLP)是什么?

简单来说,就是让计算机可以用自然语言与人类进行通信。

以实现一个符合人类语言习惯的人机交互体验。

这是计算机科学领域与人工智能领域中的一个重要方向,集语言学、计算机科学、数学于一体。

由于对NLP的研究涉及人们日常使用的语言——自然语言,所以它跟语言学的研究有着密切的联系。

但也有重要区别。

NLP并不是一般地研究自然语言,而在于研制能有效地实现自然语言通信的计算机系统,特别是其中的软件系统。

所以,NLP是一个综合领域,也是人工智能一个重要,甚至是核心的部分。

02

要想理解自然语言处理,让我们先来看什么是“自然语言”。

通常认为,语言是人类区别其他动物的本质特性。

在所有生物中,只有人类才具有语言能力。

人类的逻辑思维以语言为形式,绝大部分知识也是以语言文字的形式记载和流传的。

人类自洪荒时代开始,以语音,记号(文字)为载体的信息记录形式,用于个体或集体交流,知识传承。

具备复杂语言能力后,人类加快了社会化的发展和知识积累,以跨越时间和个体的集体智慧登上了生物金字塔的顶端。

语言、想象力和“八卦”特征,是使智人超越其他物种以及其他人类的“伊甸园禁果”,为人类开启了新的世界。

03

自然语言的组成部分有:语音、词汇和语法。

语音是语言的物质外壳,是最原始形式的语言。

而文字,则是记录语言的书写符号系统。

用自然语言与计算机进行通信具有明显的实际意义。

人们可以用自己最习惯的语言来使用计算机,而不是花大量时间精力去学习各种计算机语言。

从另一个角度,人类希望通过发展NLP来进一步了解人类自身的语言能力和智能机制。

04

实现人机间自然语言通信包括三个步骤:识别、理解、生成。

首先是识别,对于计算机来说,这是输入阶段。

计算机需要对人类语言(语音)进行识别,语音识别技术是人工智能技术的一大体系。

目前语音识别的应用日渐成熟。

比如智能家居,坐在电视机前可以语音遥控想看什么节目。

语音识别交互的精准性很重要,比如你想看英剧《神探夏洛克》,可能说成了《神探夏洛特》,那有可能就会被识别成《夏洛特烦恼》。

05

语音识别相对后面两步来说,是目前技术中最成熟的。

语音信号对于一种固定的语言来说,单音节的模式类数量相对较少,因此语音识别相对简单,而且已经基本上实现并达到了产品级标准。

难度主要在于后端的基于上下文的语义识别,也就是自然语言理解。

当然这个理解的难度对于文本也是一样的,并不一定局限于语音。

06

语音识别?语义识别?傻傻分不清楚。

为了更直观地感受语义识别和语音识别的区别,我们可以形象的用人体器官表达。

语音技术相当于人的耳朵和嘴巴,负责获取和表达。

语音识别显然就是耳朵的角色。

语义技术则相当于人的大脑,负责思考和信息处理。

就像你的耳朵非常好使,并不代表你的脑袋聪明。

在识别同样的语音后,不同的机器可能会作出不同的反应,这就是机器对于语意理解的区别。

类比到人类,比如一个人的能力并不是那么强,并不能代表他的听力有问题,只能说他的处理能力没有那么强,而这往往取决于他的大脑。

07

要实现人机互动,自然是双向沟通,因此第三个步骤就是自然语言生成。

与自然语言理解一样,自然语言生成这一步也是非常困难的。

造成困难的根本原因是自然语言文本和对话的各个层次上广泛存在的各种各样的歧义性或多义性。

人类的语言含义是取决于特定语境和含义的。

不像计算机语言世界,只有0和1。

自然语言的形式(字符串)与其意义之间是一种多对多的关系。

其实这也正是自然语言的魅力所在。

但从计算机处理的角度看,我们必须消除歧义。

有人认为,把带有潜在歧义的自然语言输入转换成某种无歧义的计算机内部表示,再将这种内部表示用自然语言表达出来,正是自然语言理解中的中心问题。

08

但是,要想消除潜在的歧义,目前的途径是通过大量的知识数据和推理路径。

而且这些知识数据中还包括海量的常识,有人认为,正是这些常识在支撑着人类的大多数理解和行为。

这些知识目前还无法完全储存在计算机中,所以一个单纯的书面理解系统只能建立在有限的词汇、句型和特定的主体范围内。

所以从现有的理论和技术现状看,通用的、高质量的自然语言处理系统,仍然是较长期的努力目标。

不过针对一定应用,具有相当自然语言处理能力的实用系统已经出现,有些已商品化,甚至开始产业化。

比如信息检索、机器翻译、文档分类、问答系统、信息过滤、自动文摘、信息抽取、文本挖掘、舆情分析、机器写作、文稿机器校对、OCR或语音识别等。

09

NLP面临三大难题。

首先是场景的困难。

包括语言的多样性,多变性,歧义性。

而这是因为自然语言理解和生成需要情境、海量常识,语言本身又是模糊的。

其次是学习的困难。

NLP是基于艰难的数学模型的。

比如概率图模型,包括隐马尔科夫过程HMM,最大熵模型,条件随机场CRF等。

所以有人戏称深度学习和NLP是数据科学家的标配,因为它们都极难理解。

再次是语料的困难。

通常在统计自然语言处理中实际上不可能观测到大规模的语言实例。

因此人们通常简单地用文本作为替代,并把文本中的上下文关系作为现实世界中语言的上下文关系的替代品。

我们把一个文本集合称为语料库(Corpus),当有几个这样的文本集合的时候,我们称之为语料库集合(Corpora)。

10

实际上,相对于为了特定应用而人为设计的形式语言(比如数字、运算符号、编程语言)来说,自然语言是自然进化而非人为设计的语言,其存在和应用与人类自身特色紧密相关。

在人类尚未明了大脑是如何进行语言的模糊识别和逻辑判断的情况下,NLP要想有突破性的进展,依然还有很长的路要走。

只有结合了符号逻辑,神经网络和认知科学,才有可能让我们在NLP领域更上一层楼。

▼ 你,会跟机器人谈恋爱吗

✨星星发亮是为了让每一个人有一天都能找到属于自己的星星

(0)

相关推荐