网站首页 > 情感社区> 文章内容

史上最强NLP知识集合:知识结构、发展历程、导师名单

※发布时间:2018-11-18 0:37:56   ※发布作者:habao   ※出自何处: 

  自然语言处理(NaturalLanguage Processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向,旨在研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。用自然语言与计算机进行通信,有着十分重要的实际应用意义,也有着性的理论意义。

  由于理解自然语言,需要关于外界的广泛知识以及运用操作这些知识的能力,所以自然语言处理,也被视为解决人工智能完备(AI-complete)的核心问题之一。对自然语言处理的研究也是充满魅力和挑战的。

  微软亚洲研究院黄昌宁、张小凤在2013年发表论文,就过去50年以来自然语言处理(NLP)研究领域中的发现和发展要点进行阐述,其中包括两个事实和三大重要。

  (1)对于句法分析来说,基于单一标记的短语结构规则是不充分的;单个标记的PSG规则不足以进行自然语言描述;

  (2)PSG规则在文本语料库中具有偏差分布,即PSG规则的总数似乎不能够涵盖大型语料库中发现的语言现象,这不符合语言学家的期望。短语结构规则在真实文本中的分布呈现严重扭曲。换言之,有限数目的短语结构规则不能覆盖大规模语料中的语法现象。这与原先人们的预期大相径庭。

  NLP技术发展历程在很大程度上受到以上两个事实的影响,在该领域中可以称得上里程碑式的有如下三个:

  (3)语料库方法和统计语言模型。业内人士普遍认为,大规模语言知识的开发和自动获取是NLP技术的瓶颈问题。因此,语料库建设和统计学习理论将成为该领域中的关键课题。

  自然语言处理(NLP)是计算机科学、信息工程和人工智能的子领域,涉及计算机和人类(自然)语言之间的交互,尤其是编程实现计算机处理和分析大量自然语言数据。自然语言处理的挑战包括语音识别,自然语言理解和自然语言生成。

  信息输入、检索、人机对话等需求增多,使自然语言处理(NLP)成为21世纪初的热门学科。从50年代机器翻译和人工智能研究算起,NLP至今有长达半个世纪的历史了。

  这三个将继续对语言学、计算语言学和NLP的研究产生深远影响。为了理解这些的意义,先介绍一下两个相关事实。

  (4)判断每个短语的句能,如主语、谓语、宾语等,及其语义角色,最终得到句子的意义表示,如逻辑语义表达式。

  第一个事实(黄昌宁,张小凤,2013)是:短语结构语法(PhraseStructure Grammar,简称PSG)不能有效地描写自然语言。

  PSG在Chomsky的语言学理论[1]中占有重要地位,并且在自然语言的句法描写中担当着举足轻重的角色。但是它有一些根本性的弱点,主要表现为它使用的是像词类和短语类那样的单一标记,因此不能有效地指明和解释自然语言中的结构歧义问题。

  让我们先来看一看汉语中“V+N”组合。假如我们把“打击,委托,调查”等词为动词(V);把“力度,方式,盗版,甲方”等词视为名词(N),而且同意“打击力度”、“委托方式”是名词短语(NP),“打击盗版”、“委托甲方”是动词短语(VP),那么就会产生如下两条有歧义的句法规则:

  换句话讲,当计算机观察到文本中相邻出现的“V+N”词类序列时,仍不能确定它们组成的究竟是NP还是VP。我们把这样的歧义叫做“短语类型歧义”。例如:

  不仅如此,有时当机器观察到相邻出现的“N+V”词类序列时,甚至不能判断它们是不是在同一个短语中。也就是说,“N+V”词类序列可能组成名词短语NP或小句S,也有可能根本就不在同一个短语里。后面这种歧义称为“短语边界歧义”。下面是两个相关的例句:

  前一个例句中,“铁建设”组成一个NP;而在后一个例句中,这两个相邻的词却分属于两个不同的短语。这足以说明,基于单一标记的PSG不能充分地描述自然语言中的句法歧义现象。下面让我们再来看一些这样的例子。

  其中de代表结构助词“的”。例如,“[削苹果]VP的刀”是NP; 而“削[苹果的皮]NP”则是VP。这里既有短语类型歧义,又有短语边界歧义。比如,“削V苹果N”这两个相邻的词,可能构成一个VP,也可能分处于两个相邻的短语中。

  规则中P和PP分别表示介词和介词短语。例如,“[对上海]PP的印象”是NP; 而“对[上海的学生]NP”则是PP。相邻词“对P 上海N”可能组成一个PP,也可能分处于两个短语中。

  规则(10)表示的也是一个NP,但“N1+ N2”先结合,还是“N2 +N3”先结合,会出现两种不同的结构方式和意义,即:

  ! 由于约束力不够,单一标记的PSG规则不能充分消解短语类型和短语边界的歧义。用数学的语言来讲,PSG规则是必要的,却不是充分的。因此机器仅仅根据规则右边的一个词类序列来判断它是不是一个短语,或者是什么短语,其实都有某种不确定性。

  ! 采用复杂特征集和词汇主义方法来重建自然语言的语法系统,是近二十年来全球语言学界就此作出的最重要的努力。

  通过大规模语料的调查,人们发现一种语言的短语规则的分布也符合所谓的齐夫率(Zipf’s Law)。

  Zipf是一个统计学家和语言学家。他提出,如果对某个语言单位(不论是英语的字母或词)进行统计,把这个语言单位在一个语料库里出现的频度(frequency)记作F,而且根据频度的降序对每个单元一个整数的阶次(rank) R。结果发现R和F的乘积近似为一个。即

  被观察的语言单元的阶次R与其频度F成反比关系。词频统计方面齐夫律显示,不管被考察的语料仅仅一本长篇小说,还是一个大规模的语料库,最常出现的100个词的出现次数会占到语料库总词次数(tokens)的近一半。

  假如语料库的规模是100万词次,那么其中频度最高的100个词的累计出现次数大概是50万词次。如果整个语料库含有5万词型(types),那么其中的一半(也就是2.5万条左右)在该语料库中只出现过一次。即使把语料库的规模加大十倍,变成1000万词次,统计规律大体不变。

  有趣的是,80年代英国人Sampson对英语语料库中的PSG规则进行统计,发现它们的分布同样是扭曲的,大体表现为齐夫率。也就是说,一方面经常遇到的语法规则只有几十条左右,它们的出现频度非常非常高;另一方面,规则库中大约一半左右的规则在语料库中只出现过一次。

  随着语料库规模的扩大,新的规则仍不断呈现。Noam Chomsky曾提出过这样的假设,认为对一种自然语言来说,其语法规则的数目总是有限的,但据此生成的句子数目却是无限的。但语料库调查的结果不是这个样子。这个发现至少说明,单纯依靠语言学家的语感来编写语法规则不可能胜任大规模真实文本处理的需求,必须寻找可以从语料库中直接获取大规模语言知识的新方法。

  几十年来,NLP学界曾发表过许多灿烂,有词、语、语义学的,有句法分析算法的,还有众多著名的自然语言应用系统。那么究竟什么是对该领域影响最大的、里程碑式的呢?

  现在在语言学界、计算语言学界,语法系统在词汇层的描写中常采用复杂特征集,利用这些属性来强化句法规则的约束力。一个复杂特征集F包含任意多个特征名fi和特征值vi对。其形式如:

  特征值vi既可以是一个简单的数字或符号,也可以是另外一个复杂特征集。这种递归式的定义使复杂特征集获得了强大的表现能力。举例来说,大学俞士汶开发的《现代汉语语法信息词典》[10],对一个动词定义了约40项属性描写,对一个名词定义了约27项属性描写。

  一般来说,PSG规则包括右部(条件:符号序列的匹配模式)和左部(动作:短语归并结果)。词语的“属性约束”直接来自系统的词库,而短语的“属性约束”则是在自底向上的短语归并过程中从其构成成分的中心语(head)那里继承过来的。在Chomsky的理论中这叫做X-bar理论。

  X-bar代表某个词类X所构成的、仍具有该词类属性的一个成分。如果X=N,就是一个具有名词特性的N-bar。当一条PSG规则的右部匹配成功,且“属性约束”部分得到满足,这条规则才能被执行。此时,规则左部所命名的的短语被生成,该短语的复杂特征集通过“属性传递”部分动态生成。

  80年代末、90年代初学术界提出了一系列新的语法,如广义短语结构语法(GPSG)、中心语驱动的短语结构语法(HPSG)、词汇功能语法(LFG)等等。这些形式语法其实都是在词汇和短语的复杂特征集描写背景下产生的。合一(unification)算是针对复杂特征集的运算而提出来的。“合一”是实现属性匹配和赋值的一种算法,所以上述这些新语法又统称为“基于合一的语法”。

  1966年,韩礼德(Halliday)提出词汇不是用来填充语法确定的一套“空位”(slots),而是一个的语言学层面;词汇研究可以作为对语论的补充,却不是语论的一部分,他主张把词汇从语法研究中地分离出来。

  语言学家Hudson,词汇主义是当今语言学理论头号发展倾向。出现原因也同上节两事实有关。词汇主义方法不仅提出一种颗粒度更细的语言知识表示形式,而且体现一语言知识递增式开发和积累的新思。

  一方面,语言学界一向认为,不划分词类就无法讲语法,如前面介绍的短语结构语法,语法“不可能”根据个别单独的词来写规则。但是另一方面,人们近来又注意到,任何归类其实都会丢失个体的某些重要信息。所以从前文提到的第一个事实出发,要想强化语法约束能力,词汇的描写应当深入到比词类更细微的词语本身上来。

  换句话讲,语言学在词汇层采用颗粒度更小的描写单元。从本质上来说,词汇主义倾向反映了语言描写的主体已经从句法层转移到了词汇层;这也就是所谓的“小语法,大词库”的思想。下面让我们来看与词汇主义有关的一些工作。

  • 每一类动词都有一个特定的矩阵, 其中每个动词都用400个不同句式来逐一描写(“+”代表可进入该句式;“-”表示不能)。

  Fillmore是格语法(Case Grammar)创始人,前几年主持美国自然科学基金的一个名为框架语义学的项目(。该项目从WordNet上选取了2000个动词,从中得到75个语义框架。例如,动词”categorize”的框架被定义为:

  同原先的格框架相比,原来一般化的动作主体被具体化为认知者Cognizer,动作客体被具体化为事物Item,并根据特定体动词的性质增加了一个作为分类结果的语义角色Category。

  项目组还从英国国家语料库中挑出50,000个相关句子,通过人工给每个句子标注了相应的语义角色。例句:

  WordNet(是一个描写英语词汇层语义关系的词库,1990年由普林斯顿大学Miller开发。至今有很多版本,全部公布在因特网上,供研究人员下载。

  欧洲有一个Euro-WordNet,以类似的格式来表现各种欧洲语言的词汇层语义关系。WordNet刻意描写的是词语之间的各种语义关系,如同义关系(synonymy)、反义关系(antonymy)、上下位关系(hyponymy),部分-整体关系(part-of)等等。

  这种词汇语义学又叫做关系语义学,这一学派同传统的语义场理论和和语义属性描写理论相比,其最大的优势在于第一次在一种语言的整个词汇表上实现了词汇层的语义描写。这是其他学派从来没有做到的。其他理论迄今仅仅停留在教科书或某些学术论文中,从来就没有得到工程规模的应用。下面是WordNet的概况:

  知点是既有WordNet所描写的同一类词间语义关系(如:同义、反义、上下位、部分-整体等),又描写不同类词之间的论旨关系和语义角色。

  MindNet是微软研究院NLP组设计的词汇语义网(,用三元组(triple)作为全部知识的表示基元。一个三元组由两个节点和一条连接边组成。每个节点代表一个概念,连接两个概念节点的边表示概念之间的语义依存关系。全部三元组通过句法分析器自动获取。

  这种资源是完全自动做出来的,所得三元组不可能没有错误。但是那些出现频度很高的三元组一般来说正确。MindNet已经应用到像语法检查、句法结构排歧、词义排歧、机器翻译等许多场合。

  首先成功利用数学方决自然语言处理问题的是语音和语言处理大师弗雷德·贾里尼克(Fred Jelinek)。1968年始在IBM研究中心兼职1974年全职加入,他领导一批杰出科学家利用大型计算机处理人类语言问题,学术休假(SabbaticalLeave)时(约1972-1976年间)提出统计语言模型。

  1990s李开复用统计语言模型把997个词的语音识别问题简化成了20词识别问题,实现了有史以来第一次大词汇量非特定人连续语言的识别。常用统计语言模型,包括N元文法模型(N-gram Model)、隐马尔科夫模型(Hidden MarkovModel,简称HMM)、最大熵模型(MaximumEntropy Model)等。

  如果用变量W代表一个文本中顺序排列的n个词,即W = w1w2…wn,则统计语言模型的任务是给出任意一个词序列W在文本中出现的概率P(W)。

  式中P(w1)表示第一个词w1的出现概率,P(w2/w1)表示在w1出现的情况下第二个词w2出现的条件概率,依此类推。

  不难看出,为了预测词wn的出现概率,必须已知它前面所有词的出现概率。从计算上来看,这太复杂了。如果近似认为任意一个词wi的出现概率只同它紧邻的前一个词有关,那么计算就得以大大简化。这就是所谓的二元模型(bigram),由(1)式得:

  式中count(…)表示一个特定词序列在整个语料库中出现的累计次数。若语料库的总词次数为N,则任意词wi在该语料库中的出现概率可估计如下:

  同理,如果近似认为任意词wi的出现只同它紧邻前两个词有关,就得到一个三元模型(trigram):

  统计语言模型的方法有点像天气预报。用来估计概率参数的大规模语料库好比是一个地区历年积累起来的气象记录,而用三元模型来做天气预报,就像是根据前两天的天气情况来预测当天的天气。天气预报当然不可能百分之百正确。这也算是概率统计方法的一个特点。

  语音识别作为计算机汉字键盘输入的一种图代方式,越来越受到信息界人士的青睐。所谓听写机就是这样的商品。据报道中国的移动电话用户已超过一亿,随着移动电话和个人数字助理(PDA)的普及,尤其是当这些随身携带的器件都可以无线上网的时候,广大用户更迫切期望通过语音识别或手写板而不是小键盘来输入简短的文字信息。

  式中数学符号argmaxW表示对不同的候选词序列W计算条件概率P(W/speech signal)的值,从而使W*成为其中条件概率值最大的那个词序列,这也就是计算机选定的识别结果。换句线)的计算,计算机找到了最适合当前输入语音信号speech signal的词串W。

  式(6)第二行是利用贝叶斯定律转写的结果,因为条件概率P(speech signal/W)比较容易估值。公式的分母P(speech signa)对给定的语音信号是一个,不影响极大值的计算,故可以从公式中删除。在第三行所示的结果中,P(W)就是前面所讲得统计语言模型,一般采用式(5)所示的三元模型;P(speechsignal/W)叫做声学模型。

  讲到这儿,细心的读者可能已经明白,汉语拼音输入法中的拼音-汉字转换任务其实也是用同样方法实现的,而且两者所用的汉语语言模型(即二元或三元模型)是同一个模型。

  据笔者所知,目前市场上的听写机产品和微软拼音输入法(3.0版)都是用词的三元模型实现的,几乎完全不用句法-语义分析手段。为什么会出现这样的局面呢?这是优胜劣汰的客观规律所决定的。可比的评测结果表明,用三元模型实现的拼音-汉字转换系统,其出错率比其它产品减少约50%。

  一个词库中大约14%的词型具有不只一个词性。而在一个语料库中,占总词次数约30%的词具有不止一个词性。所以对一个文本中的每一个词进行词性标注,就是通过上下文的约束,实现词性歧义的消解。历史上曾经先后出现过两个自动词性标注系统。一个采用上下文相关的规则,叫做TAGGIT(1971),另一个应用词类的二元模型,叫做CLAWS(1987)。

  两个系统都分别对100万词次的英语非受限文本实施了词性标注。结果显示,采用统计语言模型的CLAWS系统的标注正确率大大高于基于规则方法的TAGGIT系统。请看下表的对比:

  式中P(C/W)是已知输入词序列W的情况下,出现词类标记序列C的条件概率。数学符号argmaxC表示通过考察不同的候选词类标记序列C,来寻找使条件概率取最大值的那个词类标记序列C*。后者应当就是对W的词性标注结果。

  公式第二行是利用贝叶斯定律转写的结果,由于分母P(W)对给定的W是一个,不影响极大值的计算,可以从公式中删除。接着对公式进行近似。首先,引入性假设,认为任意一个词wi的出现概率近似只同当前词的词类标记ci有关,而与周围(上下文)的词类标记无关。于是词汇概率可计算如下:

  其次,采用二元假设,即近似认为任意一个词类标记ci的出现概率只同它紧邻的前一个词类标记ci-1有关。有

  英语中介词短语究竟依附于前面的名词还是前面的动词,是句法分析中常见的结构歧义问题。下例用语料库方法来解决这个问题,以及这种方法究竟能达到多高的正确率。

  令V, N1, N2分别代表句中动词短语、宾语短语、介宾短语的中心词,并在一个带有句法标注的语料库(又称树库)中统计如下四元组的概率Pr:

  Collins和Brooks实验使用的语料库是大学标注的华尔街日报(WSJ)树库,包括:训练集20,801个四元组,测试集3,097个四元组。他们对PP依附自动判定精度的上下限作了如下分析:

  很明显,自动判断精确率的下限是72.2%,因为机器不会比只考虑句中介词p的最常见依附做得更差了;上限是88.2%,因为机器不可能比三位专家根据四个中心词作出的判断更高明。

  论文报告,在被测试的3,097个四元组中,系统正确判断的四元组为2,606个,因此平均精确率为84.1%。这与提到的上限值88.2%相比,应该说是相当不错的结果。

  语言学家在不论是复杂特征集和合一语法,还是词汇主义方法,都是原先所谓的主义框架下做出的重大贡献。词汇主义方法提出了一种颗粒度更细的语言知识表示形式,而且体现了一种语言知识递增式开发和积累的新思,值得特别推崇。

  尤其值得重视的是,在众多词汇资源的开发过程中,语料库和统计学习方法发挥了很大的作用。这是经验主义方法和主义方法相互融合的可喜开端,也是国内知名语言学者冯志伟等人认可的研究范式。

  语料库方法和统计语言模型,国内同行中实际上存在不同评价。有种观点认为NLP必须建立在语言理解基础上,他们不大相信统计语言模型在语音识别、词性标注、信息检索等应用领域中所取得的进展。这些争论不能,是因为同行间缺少统一评测。有评测才会有鉴别。

  评判某方法优劣应公开、公平、相互可比的评测标准,而非研究员设计“自评”。黄昌宁、张小凤2013年论文表示,语料库方法和统计语言模型是当前自然语言处理技术的主流,其实用价值已在很多应用系统中得到充分。统计语言模型研究在结构化对象的统计建模方面,仍有广阔发展空间。

  自然语言处理领域业界知名博主Sebatian Ruder在2018年文章从神经网络技术角度,总结NLP领域近15年重大进展、8大里程碑事件,提及很多神经网络模型。这些模型建立在同一时期非神经网络技术之上,如上述三大里程碑。下面接着看后续NLP技术的发展。

  语言模型解决的是在给定已出现词语的文本中,预测下一个单词的任务。这是最简单的语言处理任务,有许多具体实际应用,如智能键盘、电子邮件回复等。语言模型历史由来已久,经典方法基于n-grams模型(利用前面n个词语预测下一个单词),并利用平滑操作处理不可见的n-grams。

  第一个神经语言模型,前馈神经网络(feed-forward neural network),是Bengio等人于2001年提出的。模型以某词语之前出现的n个词语作为输入向量,也就是现在大家说的词嵌入(word embeddings)向量。这些词嵌入在级联后进入一个隐藏层,该层的输出然后通过一个softmax层。如图3所示。

  而现在构建语言模型的前馈神经网络,已被循环神经网络(RNNs)和长短期记忆神经网络(LSTMs)取代。

  虽然后来提出许多新模型在经典LSTM上进行了扩展,但它仍然是强有力的基础模型。甚至Bengio等人的经典前馈神经网络在某些设定下也和更复杂的模型效果相当,因为这些任务只需要考虑邻近的词语。理解这些语言模型究竟捕捉了哪些信息,也是当今一个活跃的研究领域。

  关于语言模型最引人注目的是,尽管它很简单,但却与后文许多核心进展息息相关。反过来,这也意味着NLP领域许多重要进展都可以简化为某种形式的语言模型构建。但要实现对自然语言真正意义上的理解,仅仅从原始文本中进行学习是不够的,我们需要新的方法和模型。

  多任务学习是在多个任务下训练的模型之间共享参数的方法,在神经网络中通过不同层的权重轻松实现。多任务学习思想1993年Rich Caruana首次提出,并应用于道追踪和肺炎预测。多任务学习鼓励模型学习对多个任务有效的表征描述。这对于学习一般的、低级的描述形式、集中模型的注意力或在训练数据有限的中特别有用。

  多任务学习2008年被Collobert和Weston等人首次在自然语言处理领域应用于神经网络。在他们的模型中,词嵌入矩阵被两个在不同任务下训练的模型共享,如图4所示。

  共享的词嵌入矩阵使模型可以相互协作,共享矩阵中的低层级信息,而词嵌入矩阵往往构成了模型中需要训练的绝大部分参数。

  Collobert和Weston发表于2008年的论文,影响远远超过了它在多任务学习中的应用。它开创的诸如预训练词嵌入和使用卷积神经网络处理文本的方法,在接下来的几年被广泛应用。他们也因此获得2018年机器学习国际会议(ICML)的test-of-time。

  如今,多任务学习在自然语言处理领域广泛使用,而利用现有或“人工”任务已经成为NLP指令库中的一个有用工具。

  虽然参数的共享是预先定义好的,但在优化的过程中却可以学习不同的共享模式。当模型越来越多地在多个任务上进行测评以评估其泛化能力时,多任务学习就变得愈加重要,近年来也涌现出更多针对多任务学习的评估基准。

  稀疏向量对文本进行表示的词袋模型,在自然语言处理领域有很长历史。而用稠密的向量对词语进行描述,也就是词嵌入,则在2001年首次出现。2013年Mikolov等人工作主要创新之处在于,通过去除隐藏层和近似计算目标使词嵌入模型的训练更为高效。

  尽管这些改变本质上十分简单,但它们与高效的word2vec(wordto vector用来产生词向量的相关模型)组合在一起,使得大规模的词嵌入模型训练成为可能。

  Word2vec有两种不同的实现方法:CBOW(continuousbag-of-words)和skip-gram。它们在预测目标上有所不同:一个是根据周围的词语预测中心词语,另一个则恰恰相反。如图5所示。

  虽然这些嵌入与使用前馈神经网络学习的嵌入在概念上没有区别,但是在一个非常大语料库上的训练使它们能够获取诸如性别、动词时态和国际事务等单词之间的特定关系。如下图 4 所示。

  这些关系和它们背后的意义激起了人们对词嵌入的兴趣,许多研究都在关注这些线性关系的来源。然而,使词嵌入成为目前自然语言处理领域中流砥柱的,是将预训练的词嵌入矩阵用于初始化可以提高大量下游任务性能的事实。

  虽然word2vec捕捉到的关系具有直观且几乎不可思议的特性,但后来的研究表明,word2vec本身并没有什么特殊之处:词嵌入也可以通过矩阵分解来学习,经过适当的调试,经典的矩阵分解方法SVD和LSA都可以获得相似的结果。从那时起,大量的工作开始探索词嵌入的不同方面。尽管有很多发展,word2vec仍是目前应用最为广泛的选择。

  Word2vec应用范围也超出了词语级别:带有负采样的skip-gram——一个基于上下文学习词嵌入的方便目标,已经被用于学习句子的表征。它甚至超越了自然语言处理的范围,被应用于网络和生物序列等领域。

  一个激动的研究方向是在同一空间中构建不同语言的词嵌入模型,以达到(零样本)跨语言转换的目的。通过无监督学习构建这样的映射变得越来越有希望(至少对于相似的语言来说),这也为语料资源较少的语言和无监督机器翻译的应用程序创造可能。

  循环神经网络是NLP领域处理动态输入序列最自然的选择。Vanilla循环神经网络很快被经典的长短期记忆网络(long-shorttermmemory networks,LSTM)代替,该模型能更好地解决梯度消失和梯度爆炸问题。

  在2013年之前,人们仍认为循环神经网络很难训练,直到Ilya Sutskever博士的论文改变了循环神经网络这一名声。双向的长短期记忆记忆网络通常被用于同时处理出现在左侧和右侧的文本内容。LSTM 结构如图7所示。

  应用于文本的卷积神经网络只在两个维度上进行操作,卷积层只需要在时序维度上移动即可。图8展示了应用于自然语言处理的卷积神经网络的典型结构。

  因为卷积操作中每个时间步的状态只依赖于局部上下文,而不是循环神经网络中那样依赖于所有过去的状态。卷积神经网络可以使用更大的卷积层涵盖更广泛的上下文内容。卷积神经网络也可以和长短期记忆网络进行组合和堆叠,还可以用来加速长短期记忆网络的训练。

  循环神经网络和卷积神经网络都将语言视为一个序列。但从语言学的角度来看,语言是具有层级结构的:词语组成高阶的短语和小句,它们本身可以根据一定的产生规则递归地组合。这激发了利用结构递归神经网络,以树形结构取代序列来表示语言的想法,如图9所示。

  结构递归神经网络自下而上构建序列的表示,与从左至右或从右至左对序列进行处理的循环神经网络形成鲜明的对比。树中的每个节点是通过子节点的表征计算得到的。一个树也可以视为在循环神经网络上不同的处理顺序,所以长短期记忆网络则可以很容易地被扩展为一棵树。

  不只是循环神经网络和长短期记忆网络可以扩展到使用层次结构,词嵌入也可以在语法语境中学习,语言模型可以基于句法堆栈生成词汇,图形卷积神经网络可以树状结构运行。

  2014年,Sutskever等人提出序列到序列学习,即使用神经网络将一个序列映射到另一个序列的一般化框架。在这个框架中,一个作为编码器的神经网络对句子符号进行处理,并将其压缩成向量表示;然后,一个作为解码器的神经网络根据编码器的状态逐个预测输出符号,并将前一个预测得到的输出符号作为预测下一个输出符号的输入。如图10所示。

  机器翻译是这一框架的杀手级应用。2016年,谷歌宣布他们将用神经机器翻译模型取代基于短语的整句机器翻译模型。谷歌大脑负责人Jeff Dean表示,这意味着用500行神经网络模型代码取代50万行基于短语的机器翻译代码。

  由于其灵活性,该框架在自然语言生成任务上被广泛应用,其编码器和解码器分别由不同的模型来担任。更重要的是,解码器不仅可以适用于序列,在任意表示上均可以应用。比如基于图片生成描述(如图11)、基于表格生成文本、根据源代码改变生成描述,以及众多其他应用。

  序列到序列的学习甚至可以应用到自然语言处理领域常见的结构化预测任务中,也就是输出具有特定的结构。为简单起见,输出就像解析一样被线)。在给定足够多训练数据用于语析的情况下,神经网络已经被证明具有产生线性输出和识别命名实体的能力。

  序列的编码器和解码器通常都是基于循环神经网络,但也可以使用其他模型。新的结构主要都从机器翻译的工作中诞生,它已经成了序列到序列模型的培养基。近期提出的模型有深度长短期记忆网络、卷积编码器、Transformer(一个基于自注意力机制的全新神经网络架构)以及长短期记忆依赖网络和的 Transformer 结合体等。

  注意力机制是神经网络机器翻译(NMT)的核心创新之一,也是使神经网络机器翻译优于经典的基于短语的机器翻译的关键。序列到序列学习的主要瓶颈是,需要将源序列的全部内容压缩为固定大小的向量。注意力机制通过让解码器回顾源序列的隐藏状态,以此为解码器提供加权平均值的输入来缓解这一问题,如图13所示。

  之后,各种形式的注意力机制涌现而出。注意力机制被广泛接受,在各种需要根据输入的特定部分做出决策的任务上都有潜在的应用。它已经被应用于句法分析、阅读理解、单样本学习等任务中。它的输入甚至不需要是一个序列,而可以包含其他表示,比如图像的描述(图14)。

  注意力机制一个有用的附带作用是它通过注意力权重来检测输入的哪一部分与特定的输出相关,从而提供了一种罕见的虽然还是比较浅层次的,对模型内部运作机制的窥探。

  注意力机制不仅仅局限于输入序列。自注意力机制可用来观察句子或文档中周围的单词,获得包含更多上下文信息的词语表示。多层的自注意力机制是神经机器翻译前沿模型Transformer的核心。

  注意力机制可以视为模糊记忆的一种形式,其记忆的内容包括模型之前的隐藏状态,由模型选择从记忆中检索哪些内容。与此同时,更多具有明确记忆单元的模型被提出。

  记忆的存取通常与注意力机制相似,基于与当前状态且可以读取和写入。这些模型之间的差异体现在它们如何实现和利用存储模块。

  比如说,端到端的记忆网络对输入进行多次处理并更新内存,以实行多次推理。神经图灵机也有一个基于的寻址方式,使它们可以学习简单的计算机程序,比如排序。

  基于记忆的模型通常用于需要长时间保留信息的任务中,例如语言模型构建和阅读理解。记忆模块的概念非常通用,知识库和表格都可以作为记忆模块,记忆模块也可以基于输入的全部或部分内容进行填充。

  预训练的词嵌入与上下文无关,仅用于初始化模型中的第一层。近几个月以来,许多有监督的任务被用来预训练神经网络。相比之下,语言模型只需要未标记的文本,因此其训练可以扩展到数十亿单词的语料、新的领域、新的语言。预训练的语言模型于 2015年被首次提出,但直到最近它才被证明在大量不同类型的任务中均十分有效。语言模型嵌入可以作为目标模型中的特征,或者根据具体任务进行调整。如下图所示,语言模型嵌入为许多任务的效果带来了巨大的改进。

  使用预训练的语言模型可以在数据量十分少的情况下有效学习。由于语言模型的训练只需要无标签的数据,因此他们对于数据稀缺的低资源语言特别有利。

  基于字符的描述(Character-based representations),在字符层级上使用卷积神经网络和长短期记忆网络,以获得一个基于字符的词语描述,目前已经相当常见了,特别是对于那些语言形态丰富的语种或那些形态信息十分重要、包含许多未知单词的任务。据目前所知,基于字符的描述最初用于序列标注,现在,基于字符的描述方法,减轻了必须以增加计算成本为代价建立固定词汇表的问题,并使完全基于字符的机器翻译的应用成为可能。

  对抗学习(Adversarial learning),在机器学习领域已经取得了广泛应用,在自然语言处理领域也被应用于不同的任务中。对抗样例的应用也日益广泛,他们不仅仅是探测模型弱点的工具,更能使模型更具鲁棒性(robust)。(虚拟的)对抗性训练,也就是最坏情况的扰动,和域对抗性损失(domain-adversariallosses)都是可以使模型更具鲁棒性的有效正则化方式。生成对抗网络(GANs)目前在自然语言生成任务上还不太有效,但在匹配分布上十分有用。

  强化学习(Reinforcement learning),在具有时间依赖性任务上证明有效,比如在训练期间选择数据和对话建模。在机器翻译和概括任务中,强化学习可以有效地直接优化“红色”和“蓝色”这样不可微的度量,不必去优化像交叉熵这样的代理损失函数。同样,逆向强化学习(inversereinforcement learning)在类似视频故事描述这样的励机制非常复杂且难以具体化的任务中,也非常有用。

  自然语言处理(计算机语言学、自然语言理解)涉及:字处理,词处理,语句处理,篇章处理词处理分词、词性标注、实体识别、词义消歧语句处理句法分析(SyntacticAnalysis)、语义分析(SenmanticAnalysis)等。其中,重点有:

  7.对话系统…本文总结的自然语言处理历史、模型、知识体系结构内容,涉及NLP的语言理论、算法和工程实践各方面,内容繁杂。参考黄志洪老师自然语言处理课程、成庆老师《统计自然语言处理》,郑捷2017年电子工业出版社出版的图书《NLP汉语自然语言处理原理与实践》,以及国外著名NLP书籍的英文资料、汉译版资料。

  1)自然语言处理:利用计算机为工具,对书面实行或者口头形式进行各种各样的处理和加工的技术,是研究人与人交际中以及人与计算机交际中的演员问题的一门学科,是人工智能的主要内容。

  2)自然语言处理是研究语言能力和语言应用的模型,建立计算机(算法)框架来实现这样的语言模型,星期四左眼跳并完善、评测、最终用于设计各种实用系统。

  形式语言理论朱啊哟研究的是内部结构模式这类语言的纯粹的语法领域,从语言学而来,作为一种理解自然语言的句法规律,在计算机科学中,形式语言通常作为定义编程和语法结构的基础

  1)语言模型(重要):通过语料计算某个句子出现的概率(概率表示),常用的有2-元模型,3-元模型

  注:第一个问题,涉及最大似然估计法,第二个问题涉及EM算法,第三个问题涉及维特比算法,内容很多,要重点理解,(参考书李航《统计学习方法》,网上博客,笔者github)

  训练阶段:确定特征模板,不同场景(人名,地名等)所使用的特征模板不同,对现有语料进行分词,在分词结果基础上进行词性标注(可能手工),NER对应的标注问题是基于词的,然后训练CRF模型,得到对应权值参数值

  识别过程:将待识别文档分词,然后送入CRF模型进行识别计算(维特比算法),得到标注序列,然后根据标注划分出命名实体

  4)词性标注(理解含义,意义)及其一致性检查方法(属性向量,词性标注序列向量,聚类或者分类算法)

  LDA模型十分强大,基于贝叶斯改进了PLSA,可以提取出本章的主题词和关键词,建模过程复杂,难以理解。

  借助计算机帮助用户快速获取,整理和分析相关评论信息,对带有感彩的主观文本进行分析,处理和归纳例如,评论自动分析,水军识别。

  1)信息检索起源于图书馆资料查询检索,引入计算机技术后,从单纯的文本查询扩展到包含图片,音视频等多信息检索,检索对象由数据库扩展到互联网。

  数字、文字和自然语言一样,都是信息的载体,他们之间原本有着天然的联系。语言和数学的产生都是为了交流,从文字、数字和语言的发展历史,可以了解到语言、文字和数字有着内在的联系。自然语言处理NLP主要涉及三种文本,

  自然语言理解Natural Language Understanding(NLU),实现人机间自然语言通信,意味着要使计算机既能理解自然语言文本的意义,也能以自然语言文本表达给定的意图、思想等。自然语言生成NLG,是人工或机器生成语言。斯坦福自然语言处理NLP工具资料收集、斯坦词、Stanford中文实体识别,最早做自然语言处理的网址。工业大学智能技术与自然语言处理研究室(IntelligentTechnology & Natural Language Processing Lab, ITNLPLab)是国内较早从事自然语言处理和语言智能技术的研究室。除了新兴的文本数据简化领域:秦陇纪(数据简化技术中心筹),自然语言处理NaturalLanguage Processing领域主要包括基础研究和应用研究。

  本文由来源于325棋牌 325游戏中心唯一官方网站