博舍

什么是“自然语言处理”? 它到底在“处理”些什么 人工智能的自然语言处理是什么

什么是“自然语言处理”? 它到底在“处理”些什么

【51CTO.com原创稿件】 “自然语言处理”(NaturalLanguageProcessing,简称NLP)是近年来科技界最热门的词语之一,也是当下人工智能研究最热门的领域之一。自然语言处理推动着语言智能的持续发展和突破,并越来越多地应用于各个行业。正如国际知名学者周海中先生曾经所言:“自然语言处理是极有吸引力的研究领域,它具有重大的理论意义和实用价值。”

[[377428]] 

那么,NLP究竟是什么?它到底在“处理”什么?这些问题值得人们探讨和关注。所谓NLP,是计算机科学领域与人工智能领域中的一个重要方向;它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。NLP主要应用于机器翻译、语音识别、知识回答、自动摘要、舆情监测、观点提取、知识库构建、文本语义对比、深度学习算法、语音识别与合成等方面。因此,NLP有着十分重要的实际应用意义,也有着革命性的理论意义。

实现人机间自然语言通信意味着要使计算机既能理解自然语言文本的意义,也能以自然语言文本来表达给定的意图、思想等;前者称为自然语言理解,后者称为自然语言生成。因此,NLP大体包括了自然语言理解和自然语言生成两个部分。因为处理自然语言的关键是要让计算机“理解”自然语言,所以通常把自然语言理解视为NLP,也称为计算语言学。它的终极目标是用自然语言与计算机进行通信,使人们可以用自己最习惯的语言来使用计算机,而无需再花大量的时间和精力去学习不很自然和习惯的各种计算机语言。

NLP是人工智能中最为困难的问题之一。美国微软公司创始人比尔·盖茨先生曾经表示,“语言理解是人工智能领域皇冠上的明珠”。前微软公司全球执行副总裁沈向洋先生也在公开演讲时说:“懂语言者得天下……下一个十年,人工智能的突破在自然语言的理解……人工智能对人类影响最为深刻的就是自然语言方面”。由于理解自然语言需要关于外在世界的广泛知识以及运用操作这些知识的能力,所以NLP也被视为解决人工智能完备(AI-complete)的核心问题之一。

NLP的基本任务包括正则表达式、分词、词法分析、语音识别、文本分类、信息检索、问答系统——如对一些问题进行回答或与用户进行交互——机器翻译等;常用的模型则有马科夫模型、朴素贝叶斯、循环神经网络等。NLP要使用语言知识,如UNIX的wc程序可以用来计算文本文件中的字节数、词数或行数;当用它来计算字节数和行数时,wc只用于进行一般的数据处理,但当用它来计算一个文件中词的数目时,就需要关于“什么是一个词”的语言知识,这样,这个wc也就成为了一个NLP系统。

无论实现自然语言理解,还是自然语言生成,都远不如人们原来想象的那么简单,而是十分困难的。从现有的理论和技术现状看,通用的、高质量的NLP系统,仍然是较长期的努力目标,但是针对一定应用,具有相当NLP能力的实用系统已经出现,有些已商品化,甚至开始产业化。典型的例子有:多语种数据库和专家系统的自然语言接口、各种机器翻译系统、全文信息检索系统、自动文摘系统等。NLP系统的算法是基于机器学习,特别是统计机器学习;许多不同类的机器学习算法已应用于NLP任务。

深度学习在NLP中的应用非常广泛,可以说横扫NLP的各个方面,从底层的分词、语言模型、句法分析等到高层的语义理解、对话管理、知识问答等方面几乎都有深度学习的模型,并且取得了不错的效果。有关研究已从传统的机器学习算法转变成更有表现力的深度学习模型,如卷积神经网络和回归神经网络。不过,目前的深度学习技术还不具备理解和使用自然语言所必需的概念抽象和逻辑推理能力,还有待今后进一步的研究。

总而言之,随着互联网的普及和海量信息的涌现,作为人工智能的核心技术,NLP正在人们的工作、学习、生活中扮演着越来越重要的角色,并将在社会发展和科技进步的过程中发挥越来越重要的作用。

【51CTO原创稿件,合作站点转载请注明原文作者和出处为51CTO.com】

 

自然语言处理的优点有哪些

自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系,但又有重要的区别。自然语言处理并不是一般地研究自然语言,而在于研制能有效地实现自然语言通信的计算机系统,特别是其中的软件系统。因而它是计算机科学的一部分。

自然语言处理(NLP)是计算机科学,人工智能,语言学关注计算机和人类(自然)语言之间的相互作用的领域。

总结自然语言处理发展的曲折历史可以看出,基于规则的理性主义方法和基于统计的经验主义方法各有千秋,因此,我们应当用科学的态度来分析它们的优点和缺点。

我们认为,基于规则的理性主义方法的优点是:

*基于规则的理性主义方法中的规则主要是语言学规则,这些规则的形式描述能力和形式生成能力都很强,在自然语言处理中有很好的应用价值。

*基于规则的理性主义方法可以有效地处理句法分析中的长距离依存关系(long-distancedependencies)等困难问题,如句子中长距离的主语和谓语动词之间的一致关系(subject-verbagreement)问题,wh移位(wh-movement)问题。

*基于规则的理性主义方法通常都是明白易懂的,表达得很清晰,描述得很明确,很多语言事实都可以使用语言模型的结构和组成成分直接地、明显地表示出来。

*基于规则的理性主义方法在本质上是没有方向性的,使用这样的方法研制出来的语言模型,既可以应用于分析,也可以应用于生成,这样,同样的一个语言模型就可以双向使用。

*基于规则的理性主义方法可以在语言知识的各个平面上使用,可以在语言的不同维度上得到多维的应用。这种方法不仅可以在语音和形态的研究中使用,而且,在句法、语义、语用、篇章的分析中也大显身手。

*基于规则的理性主义方法与计算机科学中提出的一些高效算法是兼容的,例如,计算机算法分析中使用Earley算法(1970年提出)和Marcus算法(1978年提出)都可以作为基于规则的理性主义方法在自然语言处理中得到有效的使用。

基于规则的理性主义方法的缺点是:

*基于规则的理性主义方法研制的语言模型一般都比较脆弱,鲁棒性很差,一些与语言模型稍微偏离的非本质性的错误,往往会使得整个的语言模型无法正常地工作,甚至导致严重的后果。不过,近来已经研制出一些鲁棒的、灵活的剖析技术,这些技术能够使基于规则的剖析系统在剖析失败中得到恢复。

*使用基于规则的理性主义方法来研制自然语言处理系统的时候,往往需要语言学家、语音学家和各种专家的配合工作,进行知识密集的研究,研究工作的强度很大;基于规则的语言模型不能通过机器学习的方法自动地获得,也无法使用计算机自动地进行泛化。

*使用基于规则的理性主义方法设计的自然语言处理系统的针对性都比较强,很难进行进一步的升级。例如,斯罗肯(Slocum)在1981年曾经指出,LIFER自然语言知识处理系统在经过两年的研发之后,已经变得非常之复杂和庞大,以至于这个系统原来的设计人很难再对它进行一点点的改动。对于这个系统的稍微改动将会引起整个连续的“水波效应”(rippleeffect),以至于“牵一发而动全身”,而这样的副作用是无法避免和消除的。

*基于规则的理性主义方法在实际的使用场合其表现往往不如基于统计的经验主义方法那样好。因为基于统计的经验主义方法可以根据实际训练数据的情况不断地优化,而基于规则的理性主义方法很难根据实际的数据进行调整。基于规则的方法很难模拟语言中局部的约束关系,例如,单词的优先关系对于词类标注是非常有用的,但是基于规则的理性主义方法很难模拟这种优先关系。

不过,尽管基于规则的理性主义方法有这样的或那样的不足,这种方法终究是自然语言处理中研究得最为深入的技术,它仍然是非常有价值和非常强有力的技术,我们决不能忽视这种方法。事实证明,基于规则的理性主义方法的算法具有普适性,不会由于语种的不同而失去效应,这些算法不仅适用于英语、法语、德语等西方语言,也适用于汉语、日语、韩国语等东方语言。在一些领域针对性很强的应用中,在一些需要丰富的语言学知识支持的系统中,特别是在需要处理长距离依存关系的自然语言处理系统中,基于规则的理性主义方法是必不可少的。

我们认为,基于统计的经验主义方法的优点是:

*使用基于统计的经验主义方法来训练语言数据,从训练的语言数据中自动地或半自动地获取语言的统计知识,可以有效地建立语言的统计模型。这种方法在文字和语音的自动处理中效果良好,在句法自动分析和词义排歧中也初露锋芒。

*基于统计的经验主义方法的效果在很大的程度上依赖于训练语言数据的规模,训练的语言数据越多,基于统计的经验主义方法的效果就越好。在统计机器翻译中,语料库的规模,特别是用来训练语言模型的目标语言语料库的规模,对于系统性能的提高,起着举足轻重的作用。因此,可以通过扩大语料库规模的办法来不断提高自然语言处理系统的性能。

*基于统计的经验主义方法很容易与基于规则的理性主义方法结合起来,从而处理语言中形形色色的约束条件问题,使自然语言处理系统的效果不断地得到改善。

*基于统计的经验主义方法很适合用来模拟那些有细微差别的、不精确的、模糊的概念(如“很少、很多、若干”等),而这些概念,在传统语言学中需要使用模糊逻辑(fuzzylogic)才能处理。

基于统计的经验主义方法的缺点是:

*使用基于统计的经验主义方法研制的自然语言处理系统,其运行时间是与统计模式中所包含的符号类别的多少成比例线性地增长的,不论在训练模型的分类中还是在测试模型的分类中,情况都是如此。因此,如果统计模式中的符号类别数量增加,系统的运行效率会明显地降低。

*在当前语料库技术的条件下,要使用基于统计的经验主义方法为某个特殊的应用领域获取训练数据,还是一件费时费力的工作,而且很难避免出错。基于统计的经验主义方法的效果与语料库的规模、代表性、正确性以及加工深度都有密切的关系,可以说,用来训练数据的语料库的质量在很大的程度上决定了基于统计的经验主义方法的效果。

*基于统计的经验主义方法很容易出现数据稀疏的问题,随着训练语料库规模的增大,数据稀疏的问题会越来越严重,这个问题需要使用各种平滑(smoothing)技术来解决。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇

下一篇