自然语言处理的过去、现在与未来

自然语言处理(Natural Language Processing,简称NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。实现人机间自然语言通信意味着要使计算机既能理解自然语言文本的意义,也能以自然语言文本来表达给定的意图、思想等;前者称为自然语言理解,后者称为自然语言生成。用自然语言与计算机进行通信,有着十分重要的实际应用意义,也有着革命性的理论意义。
自然语言处理(Natural Language Processing,简称NLP)

NLP的过去

最早的NLP研究工作是机器翻译。1949年,美国工程师韦弗(W. Weaver)首先提出了机器翻译的设计方案。20世纪60年代,许多科学家对机器翻译曾有大规模的研究工作,耗费了巨额费用;但他们显然是低估了自然语言的复杂性,语言处理的理论和技术均不成熟,所以进展不大。当时的主要做法是存储两种语言的单词、短语对应译法的大辞典,翻译时一一对应,技术上只是调整语言的同条顺序。但日常生活中语言的翻译远不是如此简单,很多时候还要参考某句话前后的意思。

大约90年代开始,NLP领域发生了巨大的变化。这种变化的两个明显的特征是:(1)对系统的输入,要求研制的NLP系统能处理大规模的真实文本,而不是如以前的研究性系统那样,只能处理很少的词条和典型句子。只有这样,研制的系统才有真正的实用价值。(2)对系统的输出,鉴于真实地理解自然语言是十分困难的,对系统并不要求能对自然语言文本进行深层的理解,但要能从中抽取有用的信息。例如,对自然语言文本进行自动地提取关键词、摘要等。

同时,由于强调了“大规模”和“真实文本”,因此两方面的基础性工作也得到了重视和加强:(1)大规模真实语料库的研制。大规模的经过不同深度加工的真实文本的语料库,是研究自然语言统计性质的基础。没有它们,统计方法只能是无源之水。(2)大规模、信息丰富的词典的编制工作。规模为几万、十几万、甚至几十万词,含有丰富的信息(如包含词的搭配信息)的计算机可用词典对NLP的重要性是很明显的。

NLP的现在

数据系统的输入与输出这两个特征在NLP的诸多领域都有所体现, 其发展直接促进了计算机自动检索技术的出现和兴起。实际上, 随着计算机技术的不断发展, 以海量计算为基础的机器学习、数据挖掘等技术的表现也愈发优异。自然语言处理之所以能够度过“寒冬”, 再次发展, 也是因为统计科学与计算机科学的不断结合, 才让人类甚至机器能够不断从大量数据中发现“特征”并加以学习。不过要实现对自然语言真正意义上的理解,仅仅从原始文本中进行学习是不够的,我们需要新的方法和模型。

目前存在的问题主要有两个方面:一方面,迄今为止的语法都限于分析一个孤立的句子,上下文关系和谈话环境对本句的约束和影响还缺乏系统的研究,因此分析歧义、词语省略、代词所指、同一句话在不同场合或由不同的人说出来所具有的不同含义等问题,尚无明确规律可循,需要加强语用学的研究才能逐步解决。另一方面,人理解一个句子不是单凭语法,还运用了大量的有关知识,包括生活知识和专门知识,这些知识无法全部贮存在计算机里。因此一个书面理解系统只能建立在有限的词汇、句型和特定的主题范围内;计算机的贮存量和运转速度大大提高之后,才有可能适当扩大范围。

无论实现自然语言理解,还是自然语言生成,都远不如人们原来想象的那么简单,而是十分困难的。从现有的理论和技术现状看,通用的、高质量的NLP系统,仍然是较长期的努力目标。正如中国知名学者周海中(笔名“周求知”)曾在《自然语言理解的研究历程》一文中指出的“虽然现今市场上出现不少可以进行一定自然语言处理的商品软件,但要想让机器能像人类那样自如地运用自然语言,仍是一项长远而艰巨的任务。”造成困难的根本原因是自然语言文本和对话的各个层次上广泛存在的各种各样的歧义性或多义性。

NLP的未来

由于语言学、语言工程、认知科学等主要局限于实验室,目前来看数据处理可能是NLP应用场景最多的一个发展方向。实际上, 自从进入大数据时代, 各大平台就没有停止过对用户数据的深度挖掘。要想提取出有用的信息, 仅提取关键词、统计词频等是远远不够的, 必须对用户数据 (尤其是发言、评论等)进行语义上的理解。另外,利用离线大数据统计分析的方法进行NLP任务的研究是目前非常有潜力的一种研究范式,尤其是谷歌、推特、百度等大公司在这类应用上的成功经验,引领了目前大数据研究的浪潮。

NLP是为各类企业及开发者提供的用于文本分析及挖掘的核心工具,已经广泛应用在电商、文化娱乐、金融、物流等行业客户的多项业务中。它可帮助用户搭建内容搜索、内容推荐、舆情识别及分析、文本结构化、对话机器人等智能产品,也能够通过合作,定制个性化的解决方案。由于理解自然语言,需要关于外在世界的广泛知识以及运用操作这些知识的能力,所以NLP也被视为解决强人工智能的核心问题之一,其未来一般也因此密切结合人工智能发展。

长文本的智能解析是颇具挑战性的任务,如何从纷繁多变、信息量庞杂的冗长文本中获取关键信息,一直是文本领域难题;这一难题有待解决。另外,训练NLP文本解析人工智能系统需要采集大量多源头数据集,对科学家来说是一项持续的挑战:需要使用最新的深度学习模型,模仿人类大脑中神经元的行为,在数百万甚至数十亿的注释示例中进行训练来持续改进。当下一种流行的NLP解决方案是预训练,它改进了对未标记文本进行训练的通用语言模型,以执行特定任务。

总而言之,NLP 的目标是让计算机在理解语言上像人类一样智能;它的最终目标是弥补人类交流(自然语言)和计算机理解(机器语言)之间的差距。我们完全可以相信,随着计算机科学和人工智能的发展,NLP对未来科技的进步将做出不可磨灭的贡献。

责编:微科普

分享到:

>相关科普知识