龙空技术网

独家|一文读懂自然语言处理NLP(附学习资料)

数据派THU 2599

前言:

今天看官们对“php数组降维”大约比较注意,各位老铁们都需要知道一些“php数组降维”的相关知识。那么小编也在网摘上收集了一些有关“php数组降维””的相关资讯,希望咱们能喜欢,朋友们一起来学习一下吧!

(点击可查看大图)

前言

自然语言处理是文本挖掘的研究领域之一,是人工智能和语言学领域的分支学科。在此领域中探讨如何处理及运用自然语言。

对于自然语言处理的发展历程,可以从哲学中的经验主义和理性主义说起。基于统计的自然语言处理是哲学中的经验主义,基于规则的自然语言处理是哲学中的理性主义。在哲学领域中经验主义与理性主义的斗争一直是此消彼长,这种矛盾与斗争也反映在具体科学上,如自然语言处理。

早期的自然语言处理具有鲜明的经验主义色彩。如1913年马尔科夫提出马尔科夫随机过程与马尔科夫模型的基础就是“手工查频”,具体说就是统计了《欧根·奥涅金》长诗中元音与辅音出现的频度;1948年香农把离散马尔科夫的概率模型应用于语言的自动机,同时采用手工方法统计英语字母的频率。

然而这种经验主义到了乔姆斯基时出现了转变。

1956年乔姆斯基借鉴香农的工作,把有限状态机用作刻画语法的工具,建立了自然语言的有限状态模型,具体来说就是用“代数”和“集合”将语言转化为符号序列,建立了一大堆有关语法的数学模型。这些工作非常伟大,为自然语言和形式语言找到了一种统一的数学描述理论,一个叫做“形式语言理论”的新领域诞生了。这个时代,“经验主义”被全盘否定,“理性主义”算是完胜。

然而在20世纪50年代末到60年代中期,经验主义东山再起了。多数学者普遍认为只有详尽的历史语料才能带来靠谱的结论。于是一些比较著名的理论与算法就诞生了,如贝叶斯方法(Bayesian Method)、隐马尔可夫、最大熵、Viterbi算法、支持向量机之类。世界上第一个联机语料库也是在那个时候的Brown University诞生的。但是总的来说,这个时代依然是基于规则的理性主义的天下,经验主义虽然取得了不俗的成就,却依然没有受到太大的重视。但是金子总会发光的。

90年代以来,基于统计的自然语言处理就开始大放异彩了。首先是在机器翻译领域取得了突破,因为引入了许多基于语料库的方法(哈钦斯,英国著名学者)。1990年在芬兰赫尔辛基举办的第13届国际计算语言学会议确定的主题是“处理大规模真实文本的理论、方法与工具”,大家的重心开始转向大规模真实文本了,传统的仅仅基于规则的自然语言处理显然力不从心了。学者们认为,大规模语料至少是对基于规则方法有效的补充。到了1994~1999年,经验主义就开始空前繁荣了。如句法剖析、词类标注、参照消解、话语处理的算法几乎把“概率”与“数据”作为标准方法,成为了自然语言处理的主流。

总之,理性主义在自然语言处理的发展史上是有重要地位的,也辉煌了几十年,历史事物常常是此消彼长的,至于谁好谁坏,不是固定的,取决于不同时代的不同历史任务。总的来说,基于规则的理性主义在这个时代被提及得比较少,用的也比较少,主要是由于以下几个缺陷:

鲁棒性差,过于严格的规则导致对非本质错误的零容忍(这一点在最近的一些新的剖析技术上有所改善);

研究强度大,泛化能力差。一个研究要语言学家、语音学家和各种领域的专家配合,在当前大规模文本处理的时间、资源要求下太不划算。且机器学习的方法很难应用,难以普及;

实践性差。基于统计的经验主义方法可以根据数据集不断对参数进行优化,而基于规则的方法就不可以,这在当前数据量巨大的情况下,影响是致命的,因为前者常常可以通过增大训练集来获得更好的效果,后者则死板许多,结果往往不尽人意。

但理性主义还是有很多优点的,同样经验主义也有很多缺陷,算是各有所长、各有所短。不同学科有不同学科的研究角度,只能说某些角度在某个特定的历史时期对提高生产力“更有用”,所以重视的人更多。但“有用”不代表胜利,暂时的“无用”更不能说是科学层面上的“失败”。尤其是在当前中文自然语言处理发展还不甚成熟的时期,私以为基于统计的方法在很多方面并不完美,“理性主义”的作用空间还很大,需要更多的人去关注、助力。

——《统计自然语言处理》宗成庆

自然语言处理涉及的范畴如下(维基百科):

中文自动分词(Chinese word segmentation)

词性标注(Part-of-speech tagging)

句法分析(Parsing)

自然语言生成(Natural language generation)

文本分类(Text categorization)

信息检索(Information retrieval)

信息抽取(Information extraction)

文字校对(Text-proofing)

问答系统(Question answering)

机器翻译(Machine translation)

自动摘要(Automatic summarization)

本文针对其中几个主要领域的研究现状和进展,通过论文、博客等资料,结合自身的学习和实践经历进行浅显地介绍。由于个人实践经验不足,除中文分词、自动文摘、文本分类、情感分析和话题模型方面进行过实际业务的实践,其他方面经验欠缺,若有不当之处,欢迎童鞋们批评指正!

目录

一. 中文分词

中文分词主要包括词的歧义切分和未登录词识别,主要可以分为基于词典和基于统计的方法,最新的方法是多种方法的混合。从目前汉语分词研究的总体水平看,F1值已经达到95%左右,主要分词错误是由新词造成的,尤其对领域的适应性较差。下面主要介绍一下中文分词存在的主要问题和分词方法。

1. 问题

1.1 歧义切分

切分歧义处理包括两部分内容:

切分歧义的检测;

切分歧义的消解。

这两部分在逻辑关系上可分成两个相对独立的步骤。

切分歧义的检测。“最大匹配法”(精确的说法应该叫“最长词优先匹配法”) 是最早出现、同时也是最基本的汉语自动分词方法。依扫描句子的方向,又分正向最大匹配 MM(从左向右)和逆向最大匹配 RMM(从右向左)两种。最大匹配法实际上将切分歧义检测与消解这两个过程合二为一,对输入句子给出唯一的切分可能性,并以之为解。从最大匹配法出发导出了“双向最大匹配法”,即MM+ RMM。双向最大匹配法存在着切分歧义检测盲区。

针对切分歧义检测,另外两个有价值的工作是“最少分词法”,这种方法歧义检测能力较双向最大匹配法要强些,产生的可能切分个数仅略有增加;和“全切分法”,这种方法穷举所有可能的切分,实现了无盲区的切分歧义检测,但代价是导致大量的切分“垃圾”。

切分歧义的消解。典型的方法包括句法统计和基于记忆的模型。句法统计将自动分词和基于 Markov 链的词性自动标注技术结合起来,利用从人工标注语料库中提取出的词性二元统计规律来消解切分歧义,基于记忆的模型对伪歧义型高频交集型歧义切分,可以把它们的正确(唯一)切分形式预先记录在一张表中,其歧义消解通过直接查表即可实现。

1.2 未登录词识别

未登录词大致包含两大类:

新涌现的通用词或专业术语等;

专有名词。如中国人 名、外国译名、地名、机构名(泛指机关、团体和其它企事业单位)等。

前一种未登录词理 论上是可预期的,能够人工预先添加到词表中(但这也只是理想状态,在真实环境下并不易 做到);后一种未登录词则完全不可预期,无论词表多么庞大,也无法囊括。真实文本中(即便是大众通用领域),未登录词对分词精度的影响超过了歧义切分。未登录词处理在实用型分词系统中占的份量举足轻重。

新涌现的通用词或专业术语。对这类未登录词的处理,一般是在大规模语料库的支持下,先由机器根据某种算法自动生成一张候选词表(无监督的机器学习策略),再人工筛选出其中的新词并补充到词表中。鉴于经过精加工的千万字、甚至亿字级的汉语分词语料库目前还是水月镜花,所以这个方向上现有的研究无一不以从极大规模生语料库中提炼出的 n 元汉字串之分布(n≥2)为基础。其中汉字之间的结合力通过全局统计量包括互信息、t- 测试差、卡方统计量、字串频等来表示。

专有名词。对专有名词的未登录词的处理,首先依据从各类专有名词库中总结出的统计知识 (如姓氏用字及其频度)和人工归纳出的专有名词的某些结构规则,在输入句子中猜测可能成为专有名词的汉字串并给出其置信度,之后利用对该类专有名词有标识意义的紧邻上下文信息(如称谓),以及全局统计量和局部统计量(局部统计量是相对全局统计量而言的,是指从当前文章得到且其有效范围一般仅限于该文章的统计量,通常为字串频),进行进一步的鉴定。已有的工作涉及了四种常见的专有名词:中国人名的识别、外国译名的识别、中国地名的识别及机构名的识别。从各家报告的实验结果来看,外国译名的识别效果最好,中国人名次之,中国地名再次之,机构名最差。而任务本身的难度实质上也是遵循这个顺序由小增大。 沈达阳、孙茂松等(1997b )特别强调了局部统计量在未登录词处理中的价值。

2. 方法

2.1 基于词典的方法

在基于词典的方法中,对于给定的词,只有词典中存在的词语能够被识别,其中最受欢迎的方法是最大匹配法(MM),这种方法的效果取决于词典的覆盖度,因此随着新词不断出现,这种方法存在明显的缺点。

2.2 基于统计的方法

基于统计的方法由于使用了概率或评分机制而非词典对文本进行分词而被广泛应用。这种方法主要有三个缺点:一是这种方法只能识别OOV(out-of-vocabulary)词而不能识别词的类型,比如只能识别为一串字符串而不能识别出是人名;二是统计方法很难将语言知识融入分词系统,因此对于不符合语言规范的结果需要额外的人工解析;三是在许多现在分词系统中,OOV词识别通常独立于分词过程。

二. 词性标注

词性标注是指为给定句子中的每个词赋予正确的词法标记,给定一个切好词的句子,词性标注的目的是为每一个词赋予一个类别,这个类别称为词性标记(part-of-speech tag),比如,名词(noun)、动词(verb)、形容词(adjective) 等。它是自然语言处理中重要的和基础的研究课题之一,也是其他许多智能信息处理技术的基础,已被广泛的应用于机器翻译、文字识别、语音识别和信息检索等领域。

词性标注对于后续的自然语言处理工作是一个非常有用的预处理过程,它的准确程度将直接影响到后续的一系列分析处理任务的效果。 长期以来,兼类词的词性歧义消解和未知词的词性识别一直是词性标注领域需要解决的热点问题。当兼类词的词性歧义消解变得困难时,词性的标注就出现了不确定性的问题。而对那些超出了词典收录范围的词语或者新涌现的词语的词性推测,也是一个完整的标注系统所应具备的能力。

1. 词性标注方法

词性标注是一个非常典型的序列标注问题。最初采用的方法是隐马尔科夫生成式模型, 然后是判别式的最大熵模型、支持向量机模型,目前学术界通常采用结构感知器模型和条件随机场模型。近年来,随着深度学习技术的发展,研究者们也提出了很多有效的基于深层神经网络的词性标注方法。

迄今为止,词性标注主要分为基于规则的和基于统计的方法。

规则方法能准确地描述词性搭配之间的确定现象,但是规则的语言覆盖面有限,庞大的规则库的编写和维护工作则显得过于繁重,并且规则之间的优先级和冲突问题也不容易得到满意的解决。

统计方法从宏观上考虑了词性之间的依存关系,可以覆盖大部分的语言现象,整体上具有较高的正确率和稳定性,不过其对词性搭配确定现象的描述精度却不如规则方法。针对这样的情况,如何更好地结合利用统计方法和规则处理手段,使词性标注任务既能够有效地利用语言学家总结的语言规则,又可以充分地发挥统计处理的优势成为了词性标注研究的焦点。

2. 词性标注研究进展

词性标注和句法分析联合建模:研究者们发现,由于词性标注和句法分析紧密相关,词性标注和句法分析联合建模可以同时显著提高两个任务准确率。

异构数据融合:汉语数据目前存在多个人工标注数据,然而不同数据遵守不同的标注规范,因此称为多源异构数据。近年来,学者们就如何利用多源异构数据提高模型准确率,提出了很多有效的方法,如基于指导特征的方法、基于双序列标注的方法、以及基于神经网络共享表示的方法。

基于深度学习的方法:传统词性标注方法的特征抽取过程主要是将固定上下文窗口的词进行人工组合,而深度学习方法能够自动利用非线性激活函数完成这一目标。进一步,如果结合循环神经网络如双向 LSTM,则抽取到的信息不再受到固定窗口的约束,而是考虑整个句子。除此之外,深度学习的另一个优势是初始词向量输入本身已经刻画了词语之间的相似度信息,这对词性标注非常重要。

三. 句法分析

语言语法的研究有非常悠久的历史,可以追溯到公元前语言学家的研究。不同类型的句 法分析体现在句法结构的表示形式不同,实现过程的复杂程度也有所不同。因此,科研人员 采用不同的方法构建符合各个语法特点的句法分析系统。其主要分类如下图所示:

下文主要对句法分析技术方法和研究现状进行总结分析:

1. 依存句法分析

依存语法存在一个共同的基本假设:句法结构本质上包含词和词之间的依存(修饰)关系。一个依存关系连接两个词,分别是核心词( head)和依存词( dependent)。依存关系可以细分为不同的类型,表示两个词之间的具体句法关系。目前研究主要集中在数据驱动的依存句法分析方法,即在训练实例集合上学习得到依存句法分析器,而不涉及依存语法理论的研究。数据驱动的方法的主要优势在于给定较大规模的训练数据,不需要过多的人工干预,就可以得到比较好的模型。因此,这类方法很容易应用到新领域和新语言环境。数据驱动的依存句法分析方法主要有两种主流方法:基于图( graph-based)的分析方法和基于转移( transition-based)的分析方法。

2.1 基于图的依存句法分析方法

基于图的方法将依存句法分析问题看成从完全有向图中寻找最大生成树的问题。一棵依存树的分值由构成依存树的几种子树的分值累加得到。根据依存树分值中包含的子树的复杂度,基于图的依存分析模型可以简单区分为一阶和高阶模型。高阶模型可以使用更加复杂的子树特征,因此分析准确率更高,但是解码算法的效率也会下降。基于图的方法通常采用基于动态规划的解码算法,也有一些学者采用柱搜索(beam search)来提高效率。学习特征权重时,通常采用在线训练算法,如平均感知器( averaged perceptron)。

2.2 基于转移的依存句法分析方法

基于转移的方法将依存树的构成过程建模为一个动作序列,将依存分析问题转化为寻找最优动作序列的问题。早期,研究者们使用局部分类器(如支持向量机等)决定下一个动作。近年来,研究者们采用全局线性模型来决定下一个动作,一个依存树的分值由其对应的动作序列中每一个动作的分值累加得到。特征表示方面,基于转移的方法可以充分利用已形成的子树信息,从而形成丰富的特征,以指导模型决策下一个动作。模型通过贪心搜索或者柱搜索等解码算法找到近似最优的依存树。和基于图的方法类似,基于转移的方法通常也采用在线训练算法学习特征权重。

2.3 多模型融合的依存句法分析方法

基于图和基于转移的方法从不同的角度解决问题,各有优势。基于图的模型进行全局搜索但只能利用有限的子树特征,而基于转移的模型搜索空间有限但可以充分利用已构成的子树信息构成丰富的特征。详细比较发现,这两种方法存在不同的错误分布。因此,研究者们使用不同的方法融合两种模型的优势,常见的方法有:stacked learning;对多个模型的结果加权后重新解码(re-parsing);从训练语料中多次抽样训练多个模型(bagging)。

2. 短语结构句法分析

分词,词性标注技术一般只需对句子的局部范围进行分析处理,目前已经基本成熟,其标志就是它们已经被成功地用于文本检索、文本分类、信息抽取等应用之中,而句法分析、语义分析技术需要对句子进行全局分析,目前,深层的语言分析技术还没有达到完全实用的程度。

短语结构句法分析的研究基于上下文无关文法(Context Free Grammar,CFG)。上下文无关文法可以定义为四元组,其中 T 表示终结符的集合(即词的集合),N 表示非终结符的集合(即文法标注和词性标记的集合),S 表示充当句法树根节点的特殊非终结符,而 R 表示文法规则的集合,其中每条文法规则可以表示为 Ni®g ,这里的 g 表示由非终结符与终结符组成的一个序列(允许为空)。

根据文法规则的来源不同,句法分析器的构建方法总体来说可以分为两大类:

人工书写规则

从数据中自动学习规则

人工书写规则受限于规则集合的规模:随着书写的规则数量的增多,规则与规则之间的冲突加剧,从而导致继续添加规则变得困难。

与人工书写规模相比,自动学习规则的方法由于开发周期短和系统健壮性强等特点,加上大规模人工标注数据,比如宾州大学的多语种树库的推动作用,已经成为句法分析中的主流方法。而数据驱动的方法又推动了统计方法在句法分析领域中的大量应用。为了在句法分析中引入统计信息,需要将上下文无关文法扩展成为概率上下文无关文法(Probabilistic Context Free Grammar,PCFG),即为每条文法规则指定概率值。

概率上下文无关文法与非概率化的上下文无关文法相同,仍然表示为四元组,区别在于概率上下文无关文法中的文法规则必须带有概率值。获得概率上下文无关文法的最简单的方法是直接从树库中读取规则,利用最大似然估计(Maximum Likelihood Estimation,MLE)计算得到每条规则的概率值。使用该方法得到的文法可以称为简单概率上下文无关文法。在解码阶段,CKY 10等解码算法就可以利用学习得到的概率上下文无关文法搜索最优句法树。

虽然基于简单概率上下文无关文法的句法分析器的实现比较简单,但是这类分析器的性能并不能让人满意。性能不佳的主要原因在于上下文无关文法采取的独立性假设过强:一条文法规则的选择只与该规则左侧的非终结符有关,而与任何其它上下文信息无关。文法中缺乏其它信息用于规则选择的消歧。因此后继研究工作的出发点大都基于如何弱化上下文无关文法中的隐含独立性假设。

3. 总结

分词,词性标注技术一般只需对句子的局部范围进行分析处理,目前已经基本成熟,其标志就是它们已经被成功地用于文本检索、文本分类、信息抽取等应用之中,而句法分析、语义分析技术需要对句子进行全局分析,目前,深层的语言分析技术还没有达到完全实用的程度。

四. 文本分类

文本分类是文本挖掘的核心任务,一直以来倍受学术界和工业界的关注。文本分类(Text Classification)的任务是根据给定文档的内容或主题,自动分配预先定义的类别标签。

对文档进行分类,一般需要经过两个步骤:

文本表示

学习分类

文本表示是指将无结构化的文本内容转化成结构化的特征向量形式,作为分类模型的输入。在得到文本对应的特征向量后,就可以采用各种分类或聚类模型,根据特征向量训练分类器或进行聚类。因此,文本分类或聚类的主要研究任务和相应关键科学问题如下:

1. 任务

1.1 构建文本特征向量

构建文本特征向量的目的是将计算机无法处理的无结构文本内容转换为计算机能够处 理的特征向量形式。文本内容特征向量构建是决定文本分类和聚类性能的重要环节。为了根据文本内容生成特征向量,需要首先建立特征空间。其中典型代表是文本词袋(Bag of Words)模型,每个文档被表示为一个特征向量,其特征向量每一维代表一个词项。所有词项构成的向量长度一般可以达到几万甚至几百万的量级。

这样高维的特征向量表示如果包含大量冗余噪音,会影响后续分类聚类模型的计算效率和效果。因此,我们往往需要进行特征选择(Feature Selection)与特征提取(Feature Extraction),选取最具有区分性和表达能力的特征建立特征空间,实现特征空间降维;或者,进行特征转换(Feature Transformation),将高维特征向量映射到低维向量空间。特征选择、提取或转换是构建有效文本特征向量的关键问题。

1.2 建立分类或聚类模型

在得到文本特征向量后,我们需要构建分类或聚类模型,根据文本特征向量进行分类或聚类。

其中,分类模型旨在学习特征向量与分类标签之间的关联关系,获得最佳的分类效果; 而聚类模型旨在根据特征向量计算文本之间语义相似度,将文本集合划分为若干子集。 分类和聚类是机器学习领域的经典研究问题。

我们一般可以直接使用经典的模型或算法解决文本分类或聚类问题。例如,对于文本分类,我们可以选用朴素贝叶斯、决策树、k-NN、 逻辑回归(Logistic Regression)、支持向量机(Support Vector Machine, SVM)等分类模型。 对于文本聚类,我们可以选用 k-means、层次聚类或谱聚类(spectral clustering)等聚类算法。 这些模型算法适用于不同类型的数据而不仅限于文本数据。

但是,文本分类或聚类会面临许多独特的问题,例如,如何充分利用大量无标注的文本数据,如何实现面向文本的在线分类或聚类模型,如何应对短文本带来的表示稀疏问题,如何实现大规模带层次分类体系的分类功能,如何充分利用文本的序列信息和句法语义信息,如何充分利用外部语言知识库信息,等等。这些问题都是构建文本分类和聚类模型所面临的关键问题。

2. 模型

2.1 文本分类模型

近年来,文本分类模型研究层出不穷,特别是随着深度学习的发展,深度神经网络模型 也在文本分类任务上取得了巨大进展。我们将文本分类模型划分为以下三类:

基于规则的分类模型

基于规则的分类模型旨在建立一个规则集合来对数据类别进行判断。这些规则可以从训 练样本里自动产生,也可以人工定义。给定一个测试样例,我们可以通过判断它是否满足某 些规则的条件,来决定其是否属于该条规则对应的类别。

典型的基于规则的分类模型包括决策树(Decision Tree)、随机森林(Random Forest)、 RIPPER 算法等。

基于机器学习的分类模型

典型的机器学习分类模型包括贝叶斯分类器(Naïve Bayes)、线性分类器(逻辑回归)、 支持向量机(Support Vector Machine, SVM)、最大熵分类器等。

SVM 是这些分类模型中比较有效、使用较为广泛的分类模型。它能够有效克服样本分布不均匀、特征冗余以及过拟合等问题,被广泛应用于不同的分类任务与场景。通过引入核函数,SVM 还能够解决原始特征空间线性不可分的问题。

除了上述单分类模型,以 Boosting 为代表的分类模型组合方法能够有效地综合多个弱分类模型的分类能力。在给定训练数据集合上同时训练这些弱分类模型,然后通过投票等机制综合多个分类器的预测结果,能够为测试样例预测更准确的类别标签。

基于神经网络的方法

以人工神经网络为代表的深度学习技术已经在计算机视觉、语音识别等领域取得了巨大 成功,在自然语言处理领域,利用神经网络对自然语言文本信息进行特征学习和文本分类, 也成为文本分类的前沿技术。

前向神经网络:多层感知机(Multilayer Perceptron, MLP)是一种典型的前向神经网 络。它能够自动学习多层神经网络,将输入特征向量映射到对应的类别标签上。通过引入非线性激活层,该模型能够实现非线性的分类判别式。包括多层感知机在内的文本分类模型均使用了词袋模型假设,忽略了文本中词序和结构化信息。对于多层感知机模型来说,高质量的初始特征表示是实现有效分类模型的必要条件。

为了更加充分地考虑文本词序信息,利用神经网络自动特征学习的特点,研究者后续提出了卷积神经网络(Convolutional Neural Network, CNN)和循环神经网络(Recurrent Neural Network, RNN)进行文本分类。基于 CNN 和 RNN 的文本分类模型输入均为原始的词序列,输出为该文本在所有类别上的概率分布。这里,词序列中的每个词项均以词向量的形式作为输入。

卷积神经网络(CNN):卷积神经网络文本分类模型的主要思想是,对词向量形式的文本输入进行卷积操作。CNN 最初被用于处理图像数据。与图像处理中选取二维域进行卷积操作不同,面向文本的卷积操作是针对固定滑动窗口内的词项进行的。经过卷积层、 池化层和非线性转换层后,CNN 可以得到文本特征向量用于分类学习。CNN 的优势在于在计算文本特征向量过程中有效保留有用的词序信息。针对 CNN 文本分类模型还有许多改进工作, 如基于字符级 CNN 的文本分类模型、将词位置信息加入到词向量。

循环神经网络(RNN):循环神经网络将文本作为字符或词语序列{0 , … , },对于第时刻输入的字符或词语,都会对应产生新的低维特征向量s。如图 3 所示,s的取值会受到 和上个时刻特征向量s−1的共同影响,s包含了文本序列从0到的语义信息。因此,我们可以利用s作为该文本序列的特征向量,进行文本分类学习。与 CNN 相比,RNN 能够更自然地考虑文本的词序信息,是近年来进行文本表示最流行的方案之一。

为了提升 RNN 对文本序列的语义表示能力,研究者提出很多扩展模型。例如,长短时记忆网络(LSTM)提出记忆单元结构,能够更好地处理文本序列中的长程依赖,克服循环神经网络梯度消失问题。如图 4 是 LSTM 单元示意图,其中引入了三个门(input gate, output gate, forget gate)来控制是否输入输出以及记忆单元更新。

提升 RNN 对文本序列的语义表示能力的另外一种重要方案是引入选择注意力机制 (Selective Attention),可以让模型根据具体任务需求对文本序列中的词语给予不同的关 注度。

3. 应用

文本分类技术在智能信息处理服务中有着广泛的应用。例如,大部分在线新闻门户网站(如新浪、搜狐、腾讯等)每天都会产生大量新闻文章,如果对这些新闻进行人工整理非常耗时耗力,而自动对这些新闻进行分类,将为新闻归类以及后续的个性化推荐等都提供巨大帮助。互联网还有大量网页、论文、专利和电子图书等文本数据,对其中文本内容进行分类,是实现对这些内容快速浏览与检索的重要基础。此外,许多自然语言分析任务如观点挖掘、垃圾邮件检测等,也都可以看作文本分类或聚类技术的具体应用。

对文档进行分类,一般需要经过两个步骤:(1)文本表示,以及(2)学习。文本表示是指将无结构化的文本内容转化成结构化的特征向量形式,作为分类模型的输入。在得到文本对应的特征向量后,就可以采用各种分类或聚类模型,根据特征向量训练分类器

五. 信息检索

信息检索(Information Retrieval, IR)是指将信息按一定的方式加以组织,并通过信息查找满足用户的信息需求的过程和技术。1951 年,Calvin Mooers 首次提出了“信息检索”的概念,并给出了信息检索的主要任务:协助信息的潜在用户将信息需求转换为一张文献来源列表,而这些文献包含有对其有用的信息。信息检索学科真正取得长足发展是在计算机诞生并得到广泛应用之后,文献数字化使得信息的大规模共享及保存成为现实,而检索就成为了信息管理与应用中必不可少的环节。

互联网的出现和计算机硬件水平的提高使得人们存储和处理信息的能力得到巨大的提高,从而加速了信息检索研究的进步,并使其研究对象从图书资料和商用数据扩展到人们生活的方方面面。伴随着互联网及网络信息环境的迅速发展,以网络信息资源为主要组织对象的信息检索系统:搜索引擎应运而生,成为了信息化社会重要的基础设施。

2016 年初,中文搜索引擎用户数达到 5.66 亿人,这充分说明搜索引擎在应用层次取得的巨大成功,也使得信息检索,尤其是网络搜索技术的研究具有了重要的政治、经济和社会价值。

1. 内容结构

检索用户、信息资源和检索系统三个主要环节组成了信息检索应用环境下知识获取与信息传递的完整结构,而当前影响信息获取效率的因素也主要体现在这几个环节,即:

检索用户的意图表达

信息资源(尤其是网络信息资源)的质量度量

需求与资源的合理匹配

具体而言,用户有限的认知能力导致其知识结构相对大数据时代的信息环境而言往往存在缺陷, 进而影响信息需求的合理组织和清晰表述;数据资源的规模繁杂而缺乏管理,在互联网“注意力经济”盛行的环境下,不可避免地存在欺诈作弊行为,导致检索系统难以准确感知其质量;用户与资源提供者的知识结构与背景不同,对于相同或者相似事物的描述往往存在较大差异,使得检索系统传统的内容匹配技术难以很好应对,无法准确度量资源与需求的匹配程度。上述技术挑战互相交织,本质上反映了用户个体有限的认知能力与包含近乎无限信息的数据资源空间之间的不匹配问题。

概括地讲,当前信息检索的研究包括如下四个方面的研究内容及相应的关键科学问题:

1.1 信息需求理解

面对复杂的泛在网络空间,用户有可能无法准确表达搜索意图;即使能够准确表达,搜 索引擎也可能难以正确理解;即使能够正确理解,也难以与恰当的网络资源进行匹配。这使 得信息需求理解成为了影响检索性能提高的制约因素,也构成了检索技术发展面临的第一个关键问题。

1.2 资源质量度量

资源质量管理与度量在传统信息检索研究中并非处于首要的位置,但随着互联网信息资 源逐渐成为检索系统的主要查找对象,网络资源特有的缺乏编审过程、内容重复度高、质量 参差不齐等问题成为了影响检索质量的重要因素。目前,搜索引擎仍旧面临着如何进行有效 的资源质量度量的挑战,这构成了当前信息检索技术发展面临的第二个关键问题。

1.3 结果匹配排序

近年来,随着网络技术的进步,信息检索系统(尤其是搜索引擎)涉及的数据对象相应 的变得多样化、异质化,这也造成了传统的以文本内容匹配为主要手段的结果排序方法面临着巨大的挑战。高度动态繁杂的泛在网络内容使得文本相似度计算方法无法适用;整合复杂 异构网络资源作为结果使得基于同质性假设构建的用户行为模型难以应对;多模态的交互方 式则使得传统的基于单一维度的结果分布规律的用户行为假设大量失效。因此,在大数据时 代信息进一步多样化、异质化的背景下,迫切需要构建适应现代信息资源环境的检索结果匹 配排序方法,这是当前信息检索技术发展面临的第三个关键问题。

1.4 信息检索评价

信息检索评价是信息检索和信息获取领域研究的核心问题之一。信息检索和信息获取系 统核心的目标是帮助用户获取到满足他们需求的信息,而评价系统的作用是帮助和监督研究 开发人员向这一核心目标前进,以逐步开发出更好的系统,进而缩小系统反馈和用户需求之 间的差距,提高用户满意度。因此,如何设计合理的评价框架、评价手段、评价指标,是当 前信息检索技术发展面临的第四个关键问题。

2. 个性化搜索

现有的主要个性化搜索算法可分为基于内容分析的算法、基于链接分析的方法和基于协作过滤的算法。

基于内容的个性化搜索算法通过比较用户兴趣爱好和结果文档的内容相似性来对文档的用户相关性进行判断进而对搜索结果进行重排。用户模型一般表述为关键词或主题向量或 层次的形式。个性化算法通过比较用户模型和文档的相似性,判断真实的搜索意图,并估计 文档对用户需求的匹配程度。

基于链接分析的方法主要是利用互联网上网页之间的链接关系,并假设用户点击和访问 过的网页为用户感兴趣的网页,通过链接分析算法进行迭代最终计算出用户对每个网页的喜好度。

基于协作过滤的个性化搜索算法主要借鉴了基于协作过滤的推荐系统的思想,这种方法 考虑到能够收集到的用户的个人信息有限,因此它不仅仅利用用户个人的信息,还利用与用户相似的其它用户或群组的信息,并基于用户群组和相似用户的兴趣偏好来个性化当前用户 的搜索结果。用户之间的相似性可以通过用户的兴趣爱好、历史查询、点击过的网页等内容计算得出。

3. 语义搜索技术

随着互联网信息的爆炸式增长,传统的以关键字匹配为基础的搜索引擎,已越来越难以满足用户快速查找信息的需求。同时由于没有知识引导及对网页内容的深入整理,传统网页 搜索返回的网页结果也不能精准给出所需信息。针对这些问题,以知识图谱为代表的语义搜索(Semantic Search)将语义 Web 技术和传统的搜索引擎技术结合,是一个很有研究价值 但还处于初期阶段的课题。

在未来的一段时间,结合互联网应用需求的实际和技术、产品运营能力的实际发展水平,语义搜索技术的发展重点将有可能集中在以各种情境的垂直搜索资源为基础,知识化推理为检索运行方式,自然语言多媒体交互为手段的智能化搜索与推荐技术。首先将包括各类垂直搜索资源在内的深度万维网数据源整合成为提供搜索服务的资源池;随后利用广泛分布在公众终端计算设备上的浏览器作为客户端载体,通过构建的复杂情境知识库来开发多层次查询技术,并以此管理、调度、整合搜索云端的搜索服务资源,满足用户的多样化、多模态查询需求;最后基于面向情境体验的用户行为模型构建,以多模态信息推荐的形式实现对用户信息需求的主动满足。

六. 信息抽取

信息抽取(Information Extraction)是指从非结构化/半结构化文本(如网页、新闻、 论文文献、微博等)中提取指定类型的信息(如实体、属性、关系、事件、商品记录等), 并通过信息归并、冗余消除和冲突消解等手段将非结构化文本转换为结构化信息的一项综合技术。例如:

从相关新闻报道中抽取出恐怖事件信息:时间、地点、袭击者、受害人、袭击 目标、后果等;

从体育新闻中抽取体育赛事信息:主队、客队、赛场、比分等;

从论文和医疗文献中抽取疾病信息:病因、病原、症状、药物等

被抽取出来的信息通常以结构化的形式描述,可以为计算机直接处理,从而实现对海量非结构化数据的分析、组织、管理、计算、 查询和推理,并进一步为更高层面的应用和任务(如自然语言理解、知识库构建、智能问答 系统、舆情分析系统)提供支撑。

目前信息抽取已被广泛应用于舆情监控、网络搜索、智能问答等多个重要领域。与此同时,信息抽取技术是中文信息处理和人工智能的核心技术,具有重要的科学意义。

一直以来,人工智能的关键核心部件之一是构建可支撑类人推理和自然语言理解的大规模常识知识库。然而,由于人类知识的复杂性、开放性、多样性和巨大的规模,目前仍然无法构建满足上述需求的大规模知识库。信息抽取技术通过结构化自然语言表述的语义知识,并整合来自海量文本中的不同语义知识,是构建大规模知识库最有效的技术之一。每一段文本内所包含的寓意可以描述为其中的一组实体以及这些实体相互之间的关联和交互,因此抽取文本中的实体和它们之间的语义关系也就成为了理解文本意义的基础。

信息抽取可以通过抽取实体和实体之间的语义关系,表示这些语义关系承载的信息,并基于这些信息进行计算和推理来有效的理解一段文本所承载的语义。

1. 命名实体识别

命名实体识别的目的是识别文本中指定类别的实体,主要包括人名、地名、机构名、专有名词等的任务。

命名实体识别系统通常包含两个部分:实体边界识别和实体分类。

其中实体边界识别判断一个字符串是否是一个实体,而实体分类将识别出的实体划分到预先给定的不同类别中去。命名实体识别是一项极具实用价值的技术,目前中英文上通用命名实 体识别(人名、地名、机构名)的F1值都能达到 90%以上。命名实体识别的主要难点在于 表达不规律、且缺乏训练语料的开放域命名实体类别(如电影、歌曲名)等。

2. 关系抽取

关系抽取指的是检测和识别文本中实体之间的语义关系,并将表示同一语义关系的提及(mention)链接起来的任务。关系抽取的输出通常是一个三元组(实体 1,关系类别,实体 2),表示实体 1 和实体 2 之间存在特定类别的语义关系。

例如,句子“北京是中国的首都、政治中心和文化中心”中表述的关系可以表示为(中国,首都,北京),(中国,政治中心,北京)和(中国,文化中心,北京)。语义关系类别可以预先给定(如 ACE 评测中的七大类关系),也可以按需自动发现(开放域信息抽取)。

关系抽取通常包含两个核心模块:关系检测和关系分类。

其中关系检测判断两个实体之间是否存在语义关系,而关系分类将存在语义关系的实体对划分到预先指定的类别中。在某些场景和任务下,关系抽取系统也可能包含关系发现模块,其主要目的是发现实体和实体之间存在的语义关系类别。例如,发现人物和公司之间存在雇员、CEO、CTO、创始人、董事长等关系类别。

3. 事件抽取

事件抽取指的是从非结构化文本中抽取事件信息,并将其以结构化形式呈现出来的任务。

例如,从“毛泽东 1893 年出生于湖南湘潭”这句话中抽取事件{类型:出生, 人物:毛泽东,时间:1893 年,出生地:湖南湘潭}。

事件抽取任务通常包含事件类型识别和事件元素填充两个子任务。

事件类型识别判断一句话是否表达了特定类型的事件。事件类型决定了事件表示的模板,不同类型的事件具有不同的模板。例如出生事件的模板是{人物, 时间,出生地},而恐怖袭击事件的模板是{地点,时间,袭击者,受害者,受伤人数,…}。 事件元素指组成事件的关键元素,事件元素识别指的是根据所属的事件模板,抽取相应的元素,并为其标上正确元素标签的任务。

4. 信息集成

实体、关系和事件分别表示了单篇文本中不同粒度的信息。在很多应用中,需要将来自不同数据源、不同文本的信息综合起来进行决策,这就需要研究信息集成技术。

目前,信息抽取研究中的信息集成技术主要包括共指消解技术和实体链接技术。

共指消解指的是检测同一实体/关系/事件的不同提及,并将其链接在一起的任务,例如,识别“乔布斯是苹果的创始人之一,他经历了苹果公司几十年的起落与兴衰”这句话中的“乔布斯”和“他”指的是同一实体。实体链接的目的是确定实体名所指向的真实世界实体。例如识别上一句话中的“苹果”和“乔布斯”分别指向真实世界中的苹果公司和其 CEO 史蒂夫·乔布斯。

七. 问答系统

自动问答(Question Answering, QA)是指利用计算机自动回答用户所提出的问题以满足用户知识需求的任务。不同于现有搜索引擎,问答系统是信息服务的一种高级形式,系统返回用户的不再是基于关键词匹配排序的文档列表,而是精准的自然语言答案。

近年来,随着人工智能的飞速发展,自动问答已经成为倍受关注且发展前景广泛的研究方向。自动问答的研究历史可以溯源到人工智能的原点。1950 年,人工智能之父阿兰图灵(Alan M. Turing)在《Mind》上发表文章《Computing Machinery and Intelligence》, 文章开篇提出通过让机器参与一个模仿游戏(Imitation Game)来验证“机器”能否“思考”,进而提出了经典的图灵测试(Turing Test),用以检验机器是否具备智能。

同样,在自然语言处理研究领域,问答系统被认为是验证机器是否具备自然语言理解能力的四个任务之一(其它三个是机器翻译、复述和文本摘要)。自动问答研究既有利于推动人工智能相关学科的发展,也具有非常重要的学术意义。从应用上讲,现有基于关键词匹配和浅层语义分析的信息服务技术已经难以满足用户日益增长的精准化和智能化信息需求,已有的信息服务范式急需一场变革。

2011年,华盛顿大学图灵中心主任 Etzioni 在 Nature 上发表的《Search Needs a Shake-Up》中明确指出: 在万维网诞生 20 周年之际,互联网搜索正处于从简单关键词搜索走向深度问答的深刻变革的风口浪尖上。以直接而准确的方式回答用户自然语言提问的自动问答系统将构成下一代搜索引擎的基本形态。同一年,以深度问答技术为核心的 IBM Watson 自动问答机器人在美国智力竞赛节目 Jeopardy 中战胜人类选手,引起了业内的巨大轰动。Watson 自动问答系统让人们看到已有信息服务模式被颠覆的可能性,成为了问答系统发展的一个里程碑。

此外,随着移动互联网崛起与发展,以苹果公司 Siri、Google Now、微软 Cortana 等为代表的移动生活助手爆发式涌现,上述系统都把以自然语言为基本输入方式的问答系统看作是下一代信息服务的新形态和突破口,并均加大人员、资金的投入,试图在这一次人工智能浪潮中取得领先。

1. 关键问题

自动问答系统在回答用户问题时,需要正确理解用户所提的自然语言问题,抽取其中的 关键语义信息,然后在已有语料库、知识库或问答库中通过检索、匹配、推理的手段获取答 案并返回给用户。上述过程涉及词法分析、句法分析、语义分析、信息检索、逻辑推理、知识工程、语言生成等多项关键技术。传统自动问答多集中在限定领域,针对限定类型的问题 进行回答。伴随着互联网和大数据的飞速发展,现有研究趋向于开放域、面向开放类型问题 的自动问答。概括地讲,自动问答的主要研究任务和相应关键科学问题如下。

1.1 问句理解

给定用户问题,自动问答首先需要理解用户所提问题。用户问句的语义理解包含词法分析、句法分析、语义分析等多项关键技术,需要从文本的多个维度理解其中包含的语义内容。

在词语层面,需要在开放域环境下,研究命名实体识别(Named Entity Recognition)、术语识别(Term Extraction)、词汇化答案类型词识别(Lexical Answer Type Recognition)、 实体消歧(Entity Disambiguation)、关键词权重计算(Keyword Weight Estimation)、答案集中词识别(Focused Word Detection)等关键问题。

在句法层面,需要解析句子中词与词之间、短语与短语之间的句法关系,分析句子句法结构。在语义层面,需要根据词语层面、句法层面的分析结果,将自然语言问句解析成可计算、结构化的逻辑表达形式(如一阶谓词逻辑表达式)。

1.2 文本信息抽取

给定问句语义分析结果,自动问答系统需要在已有语料库、知识库或问答库中匹配相关的信息,并抽取出相应的答案。传统答案抽取构建在浅层语义分析基础之上,采用关键词匹配策略,往往只能处理限定类型的答案,系统的准确率和效率都难以满足实际应用需求。为保证信息匹配以及答案抽取的准确度,需要分析语义单元之间的语义关系,抽取文本中的结构化知识。早期基于规则模板的知识抽取方法难以突破领域和问题类型的限制,远远不能满足开放领域自动问答的知识需求。为了适应互联网实际应用的需求,越来越多的研究者和开发者开始关注开放域知识抽取技术,其特点在于:

文本领域开放:处理的文本是不限定领域的网络文本

内容单元类型开放:不限定所抽取的内容单元类型,而是自动地从网络中挖掘内容单元的类型,例如实体类型、事件类型和关系类型等。

1.3 知识推理

自动问答中,由于语料库、知识库和问答库本身的覆盖度有限,并不是所有问题都能直 接找到答案。这就需要在已有的知识体系中,通过知识推理的手段获取这些隐含的答案。

例如,知识库中可能包括了一个人的“出生地”信息,但是没包括这个人的“国籍”信息,因此无法直接回答诸如“某某人是哪国人?”这样的问题。但是一般情况下,一个人的“出生地”所属的国家就是他(她)的“国籍”。在自动问答中,就需要通过推理的方式学习到这样的模式。传统推理方法采用基于符号的知识表示形式,通过人工构建的推理规则得到答案。

但是面对大规模、开放域的问答场景,如何自动进行规则学习,如何解决规则冲突仍然是亟待解决的难点问题。目前,基于分布式表示的知识表示学习方法能够将实体、概念以及它们之间的语义关系表示为低维空间中的对象(向量、矩阵等),并通过低维空间中的数值计算完成知识推理任务。

虽然这类推理的效果离实用还有距离,但是我们认为这是值得探寻的方法,特别是如何将已有的基于符号表示的逻辑推理与基于分布式表示的数值推理相结合,研究融合符号逻辑和表示学习的知识推理技术,是知识推理任务中的关键科学问题。

2. 技术方法

根据目标数据源的不同,已有自动问答技术大致可以分为三类:

检索式问答;

社区问答;

知识库问答。

以下分别就这几个方面对研究现状进行简要阐述。

2.1 检索式问答

检索式问答研究伴随搜索引擎的发展不断推进。1999 年,随着 TREC QA 任务的发起, 检索式问答系统迎来了真正的研究进展。TREC QA 的任务是给定特定 WEB 数据集,从中找到能够回答问题的答案。这类方法是以检索和答案抽取为基本过程的问答系统,具体过程包括问题分析、篇章检索和答案抽取。

根据抽取方法的不同,已有检索式问答可以分为基于模式匹配的问答方法和基于统计文本信息抽取的问答方法。

基于模式匹配的方法往往先离线地获得各类提问答案的模式。在运行阶段,系统首先判断当前提问属于哪一类,然后使用这类提问的模式来对抽取的候选答案进行验证。同时为了提高问答系统的性能,人们也引入自然语言处理技术。由于自然语言处理的技术还未成熟,现有大多数系统都基于浅层句子分析。

基于统计文本信息抽取的问答系统的典型代表是美国 Language Computer Corporation 公司的 LCC 系统。该系统使用词汇链和逻辑形式转换技术,把提问句和答案句转化成统一的逻辑形式(Logic Form),通过词汇链,实现答案的推理验证。LCC 系统在 TREC QA Track 2001 ~ 2004 连续三年的评测中以较大领先优势获得第一名的成绩。 2011 年,IBM 研发的问答机器人 Watson在美国智力竞赛节目《危险边缘 Jeopardy!》中战胜人类选手,成为问答系统发展的一个里程碑。

Watson 的技术优势大致可以分为以下三个方面:

强大的硬件平台:包括 90 台 IBM 服务器,分布式计算环境;

强大的知识资源:存储了大约 2 亿页的图书、新闻、电影剧本、辞海、文选和《世界图书百科全书》等资料;

深层问答技术(DeepQA):涉及统计机器学习、句法分析、主题分析、信息抽取、 知识库集成和知识推理等深层技术。

然而,Watson 并没有突破传统问答式检索系统的局限性,使用的技术主要还是检索和匹配,回答的问题类型大多是简单的实体或词语类问题,而推理能力不强。

2.2 社区问答

随着 Web2.0 的兴起,基于用户生成内容(User-Generated Content, UGC)的互联网 服务越来越流行,社区问答系统应运而生,例如 Yahoo! Answers、百度知道等。问答社区的出现为问答技术的发展带来了新的机遇。据统计 2010 年 Yahoo! Answers 上已解决的问题量达到 10 亿,2011 年“百度知道”已解决的问题量达到 3 亿,这些社区问答数据覆盖了方方面面的用户知识和信息需求。

此外,社区问答与传统自动问答的另一个显著区别是:社区问答系统有大量的用户参与,存在丰富的用户行为信息,例如用户投票信息、用户评价信息、回答者的问题采纳率、用户推荐次数、页面点击次数以及用户、问题、答案之间的相互关联信息等等,这些用户行为信息对于社区中问题和答案的文本内容分析具有重要的价值。

一般来讲,社区问答的核心问题是从大规模历史问答对数据中找出与用户提问问题语义相似的历史问题并将其答案返回提问用户。假设用户查询问题为q0,用于检索的问答对数据为SQ,A = {(q1 , a1 ), (q2 , a2 )}, … , (qn, an)}},相似问答对检索的目标是从SQ,A中检索出能够解答问题q0的问答对(qi , ai )。 针对这一问题,传统的信息检索模型,如向量空间模型、语言模型等,都可以得到应用。

但是,相对于传统的文档检索,社区问答的特点在于:用户问题和已有问句相对来说都非常短,用户问题和已有问句之间存在“词汇鸿沟”问题,基于关键词匹配的检索模型很难达到较好的问答准确度。目前,很多研究工作在已有检索框架中针对这一问题引入单语言翻译概率模型,通过 IBM 翻译模型,从海量单语问答语料中获得同种语言中两个不同词语之间的语义转换概率,从而在一定程度上解决词汇语义鸿沟问题。例如和“减肥”对应的概率高的相关词有“瘦身”、“跑步”、“饮食”、“健康”、“远动”等等。 除此之外,也有许多关于问句检索中词重要性的研究和基于句法结构的问题匹配研究。

2.3 知识库问答

检索式问答和社区问答尽管在某些特定领域或者商业领域有所应用,但是其核心还是关键词匹配和浅层语义分析技术,难以实现知识的深层逻辑推理,无法达到人工智能的高级目标。因此,近些年来,无论是学术界或工业界,研究者们逐步把注意力投向知识图谱或知识库(Knowledge Graph)。其目标是把互联网文本内容组织成为以实体为基本语义单元(节点)的图结构,其中图上的边表示实体之间语义关系。

目前互联网中已有的大规模知识库包括 DBpedia、Freebase、YAGO 等。这些知识库多是以“实体-关系-实体”三元组为基本单元所组成的图结构。基于这样的结构化知识,问答系统的任务就是要根据用户问题的语义直接在知识库上查找、推理出相匹配的答案,这一任务称为面向知识库的问答系统或知识库问答。要完成在结构化数据上的查询、匹配、推理等操作,最有效的方式是利用结构化的查询语句,例如:SQL、SPARQL 等。

然而,这些语句通常是由专家编写,普通用户很难掌握并正确运用。对普通用户来说,自然语言仍然是最自然的交互方式。因此,如何把用户的自然语言问句转化为结构化的查询语句是知识库问答的核心所在,其关键是对于自然语言问句进行语义理解。目前,主流方法是通过语义分析,将用户的自然语言问句转化成结构化的语义表示,如范式和 DCS-Tree。相对应的语义解析语法或方法包括组合范畴语法( Category Compositional Grammar, CCG )以 及 依 存 组 合 语 法( Dependency-based Compositional Semantics, DCS)等。

八. 机器翻译

1. 理论应用

机器翻译(machine translation,MT)是指利用计算机实现从一种自然语言到另外一种自然语言的自动翻译。被翻译的语言称为源语言(source language),翻译到的语言称作目标语言(target language)。

简单地讲,机器翻译研究的目标就是建立有效的自动翻译方法、模型和系统,打破语言壁垒,最终实现任意时间、任意地点和任意语言的自动翻译,完成人们无障碍自由交流的梦想。

人们通常习惯于感知(听、看和读)自己母语的声音和文字,很多人甚至只能感知自己的母语,因此,机器翻译在现实生活和工作中具有重要的社会需求。

从理论上讲,机器翻译涉及语言学、计算语言学、人工智能、机器学习,甚至认知语言学等多个学科,是一个典型的多学科交叉研究课题,因此开展这项研究具有非常重要的理论意义,既有利于推动相关学科的发展,揭示人脑实现跨语言理解的奥秘,又有助于促进其他自然语言处理任务,包括中文信息处理技术的快速发展。

从应用上讲,无论是社会大众、政府企业还是国家机构,都迫切需要机器翻译技术。特别是在“互联网+”时代,以多语言多领域呈现的大数据已成为我们面临的常态问题,机器翻译成为众多应用领域革新的关键技术之一。例如,在商贸、体育、文化、旅游和教育等各个领域,人们接触到越来越多的外文资料,越来越频繁地与持各种语言的人通信和交流,从而对机器翻译的需求越来越强烈;在国家信息安全和军事情报领域,机器翻译技术也扮演着非常重要的角色。

可以说离开机器翻译,基于大数据的多语言信息获取、挖掘、分析和决策等其他应用都将成为空中楼阁。尤其值得提出的是,在未来很长一段时间里,建立于丝绸之路这一历史资源之上的“一带一路”将是我国与周边国家发展政治、经济,进行文化交流的主要战略。据统计,“一带一路”涉及 60 多个国家、44 亿人口、53 种语言,可见机器翻译是“一带一路”战略实施中不可或缺的重要技术。

2. 技术现状

基于规则的机器翻译方法需要人工设计和编纂翻译规则,统计机器翻译方法能够自动获取翻译规则,但需要人工定义规则的形式,而端到端的神经网络机器翻译方法可以直接通过编码网络和解码网络自动学习语言之间的转换算法。

从某种角度讲,其自动化程度和智能化程度在不断提升,机器翻译质量也得到了显著改善。机器翻译技术的研究现状可从欧盟组织的国际机器翻译评测(WMT)的结果中窥得一斑。 该评测主要针对欧洲语言之间的互译,2006 年至 2016 年每年举办一次。对比法语到英语历年的机器翻译评测结果可以发现,译文质量已经在自动评价指标 BLEU 值上从最初小于 0.3 到目前接近 0.4(大量的人工评测对比说明,BLEU 值接近 0.4 的译文能够达到人类基本可以理解的程度)。

另外,中国中文信息学会组织的全国机器翻译评测(CWMT)每两年组织一次, 除了英汉、日汉翻译评测以外,CWMT 还关注我国少数民族语言(藏、蒙、维)和汉语之间的翻译。相对而言,由于数据规模和语言复杂性的问题,少数民族与汉语之间的翻译性能要低于汉英、汉日之间的翻译性能。虽然机器翻译系统评测的分值呈逐年增长的趋势,译文质量越来越好,但与专业译员的翻译结果相比,机器翻译还有很长的路要走,可以说,在奔向“信、达、雅”翻译目标的征程上,目前的机器翻译基本挣扎在“信”的阶段,很多理论和技术问题仍有待于更深入的研究和探索。

九. 自动摘要

自动文摘(又称自动文档摘要)是指通过自动分析给定的一篇文档或多篇文档,提炼、总结其中的要点信息,最终输出一篇长度较短、可读性良好的摘要(通常包含几句话或数百字),该摘要中的句子可直接出自原文,也可重新撰写所得。简言之,文摘的目的是通过对原文本进行压缩、提炼,为用户提供简明扼要的文字描述。用户可以通过阅读简短的摘要而知晓原文中所表达的主要内容,从而大幅节省阅读时间。

自动文摘研究的目标是建立有效的自动文摘方法与模型,实现高性能的自动文摘系统。 近二十年来,业界提出了各类自动文摘方法与模型,用于解决各类自动摘要问题,在部分自动摘要问题的研究上取得了明显的进展,并成功将自动文摘技术应用于搜索引擎、新闻阅读 等产品与服务中。例如谷歌、百度等搜索引擎均会为每项检索结果提供一个短摘要,方便用 户判断检索结果相关性。在新闻阅读软件中,为新闻事件提供摘要也能够方便用户快速了解 该事件。2013 年雅虎耗资 3000 万美元收购了一项自动新闻摘要应用 Summly,则标志着自动文摘技术的应用走向成熟。

自动文摘的研究在图书馆领域和自然语言处理领域一直都很活跃,最早的应用需求来自 于图书馆。图书馆需要为大量文献书籍生成摘要,而人工摘要的效率很低,因此亟需自动摘 要方法取代人工高效地完成文献摘要任务。随着信息检索技术的发展,自动文摘在信息检索 系统中的重要性越来越大,逐渐成为研究热点之一。经过数十年的发展,同时在 DUC 与 TAC 等自动文摘国际评测的推动下,文本摘要技术已经取得长足的进步。国际上自动文摘方面比较著名的几个系统包括 ISI 的 NeATS 系统,哥伦比亚大学的 NewsBlaster 系统,密歇根大学的 NewsInEssence 系统等。

1. 方法

自动文摘所采用的方法从实现上考虑可以分为抽取式摘要(extractive summarization) 和生成式摘要(abstractive summarization)。抽取式方法相对比较简单,通常利用不同方法对文档结构单元(句子、段落等)进行评价,对每个结构单元赋予一定权重,然后选择最重要的结构单元组成摘要。而生成式方法通常需要利用自然语言理解技术对文本进行语法、 语义分析,对信息进行融合,利用自然语言生成技术生成新的摘要句子。目前的自动文摘方法主要基于句子抽取,也就是以原文中的句子作为单位进行评估与选取。抽取式方法的好处是易于实现,能保证摘要中的每个句子具有良好的可读性。

为解决如前所述的要点筛选和文摘合成这两个关键科学问题,目前主流自动文摘研究工作大致遵循如下技术框架: 内容表示 → 权重计算 → 内容选择 → 内容组织。

首先将原始文本表示为便于后续处理的表达方式,然后由模型对不同的句法或语义单元 进行重要性计算,再根据重要性权重选取一部分单元,经过内容上的组织形成最后的摘要。

1.1 内容表示与权重计算

原文档中的每个句子由多个词汇或单元构成,后续处理过程中也以词汇等元素为基本单 位,对所在句子给出综合评价分数。

以基于句子选取的抽取式方法为例,句子的重要性得分由其组成部分的重要性衡量。由于词汇在文档中的出现频次可以在一定程度上反映其重要性, 我们可以使用每个句子中出现某词的概率作为该词的得分,通过将所有包含词的概率求和得到句子得分。

也有一些工作考虑更多细节,利用扩展性较强的贝叶斯话题模型,对词汇本身的话题相关性概率进行建模。 一些方法将每个句子表示为向量,维数为总词表大小。 通常使用加权频数作为句子向量相应维上的取值。加权频数的定义可以有多种,如信息检索中常用的词频-逆文档频率 (TF-IDF)权重。

也有研究工作考虑利用隐语义分析或其他矩阵分解技术,得到低维隐含语义表示并加以利用。得到向量表示后计算两两之间的某种相似度(例如余弦相似度)。随后根据计算出的相似度构建带权图,图中每个节点对应每个句子。在多文档摘要任务中,重要的句子可能和更多其他句子较为相似,所以可以用相似度作为节点之间的边权,通过迭代求解基于图的排序算法来得到句子的重要性得分。

也有很多工作尝试捕捉每个句子中所描述的概念,例如句子中所包含的命名实体或动词。

出于简化考虑,现有工作中更多将二元词(bigram)作为概念。近期则有工作提出利用频繁图挖掘算法从文档集中挖掘得到深层依存子结构作为语义表示单元。

另一方面,很多摘要任务已经具备一定数量的公开数据集,可用于训练有监督打分模型。例如对于抽取式摘要,我们可以将人工撰写的摘要贪心匹配原文档中的句子或概念,从而得到不同单元是否应当被选作摘要句的数据。然后对各单元人工抽取若干特征,利用回归模型或排序学习模型进行有监督学习,得到句子或概念对应的得分。

文档内容描述具有结构性,因此也有利用隐马尔科夫模型(HMM)、条件随机场(CRF)、结构化支持向量机(Structural SVM)等常见序列标注或一般结构预测模型进行抽取式摘要有监督训练的工作。所提取的特征包括所在位置、包含词汇、与邻句的相似度等等。对特定摘要任务一般也会引入与具体设定相关的特征,例如查询相关摘要任务中需要考虑与查询的匹配或相似程度。

1.2 内容选择

无论从效果评价还是从实用性的角度考虑,最终生成的摘要一般在长度上会有限制。在 获取到句子或其他单元的重要性得分以后,需要考虑如何在尽可能短的长度里容纳尽可能多 的重要信息,在此基础上对原文内容进行选取。内容选择方法包括贪心选择和全局优化。

2. 技术现状

相比机器翻译、自动问答、知识图谱、情感分析等热门领域,自动文摘在国内并没有受 到足够的重视。国内早期的基础资源与评测举办过中文单文档摘要的评测任务,但测试集规 模比较小,而且没有提供自动化评价工具。2015 年 CCF 中文信息技术专委会组织了 NLPCC 评测,其中包括了面向中文微博的新闻摘要任务,提供了规模相对较大的样例数据和测试数据,并采用自动评价方法,吸引了多支队伍参加评测,目前这些数据可以公开获得。但上述中文摘要评测任务均针对单文档摘要任务,目前还没有业界认可的中文多文档摘要数据,这在事实上阻碍了中文自动摘要技术的发展。

近些年,市面上出现了一些文本挖掘产品,能够提供中文文档摘要功能(尤其是单文档 摘要),例如方正智思、拓尔思(TRS),海量科技等公司的产品。百度等搜索引擎也能为检索到的文档提供简单的单文档摘要。这些文档摘要功能均被看作是系统的附属功能,其实现方法均比较简单。

十. 学习资料

1. 书籍

1.1 李航《统计学习方法》

这本经典书值得反复读,从公式推导到定理证明逻辑严谨,通俗易懂。

推荐指数:五颗星

1.1 宗成庆《统计自然语言处理》

推荐指数:四颗星

2. 博客

斯坦福cs224d:

中文版博客专栏

3. 会议

ACL 2015:

ACL 2016:

EMNLP 2015:

4. 实践案例

十一. 进一步学习

论文下载地址:

校对:闵黎

编辑:黄继彦

作者简介

王奇奇 就读于北京航空航天大学经管学院,研究方向是统计与优化。喜欢读诗,喜欢尝试与挑战,对自然语言处理领域相关的理论与实践有兴趣,并在不断学习中。

更多精彩请关注清华-青岛数据科学研究院微信官方公众平台”THU数据派“

标签: #php数组降维 #nlp算法和自然语言的区别 #nlp语义分析算法