关键词不能为空

位置:爱淘啦励志网 > 励志名言 > 关于自然成语-入门解读|自然语言处理技术的详细概述

关于自然成语-入门解读|自然语言处理技术的详细概述

作者:车型网
日期:2020-01-08 01:51:01
阅读:

深入的学习带来了AI的狂潮,AI技术近年来有了很大的发展。 然而,目前相对成熟的AI技术集中在感知层,例如语音和图像的识别上。 这些技术的发展引起了AI的关注,开拓了早期市场。 但是,这些技术不能实现真正的“智能”。 这种差距是语言的理解。 因此,未来十年,自然语言理解( NLP )技术是最重要和最受关注的领域之一。 但是,古语中却有这样一句话:“不踏足,无数千英里。 由于技术的飞跃性出现依赖于“巨人的肩膀”,本文将介绍现在主流的NLP技术。 根据语言习惯,NLP技术从下到上分为词句、句法、语义3个层次。

1 .因为词汇是语言的最小单位,所以词法技术可以作为NLP技术的基础,也是其馀NLP技术的基础。 词法技术的核心任务是识别文本中的单词,对单词进行一些预处理。 因为语言有固定的形式,通过规则匹配可以比较正确的认识。 但是,现阶段分词结果对语义的理解支持不够,如何更好地辅助理解语义是分词技术的关键。

2 .词汇组织成句子,句法技术沿章划分为NLP的第二级。 句法是深刻理解语言的基础,尤其对机器翻译至关重要。 句法技术的主要任务是识别句子中包含的句法成分和这些成分之间的关系,一般用句法树来表示句法分析的结果。 句法分析是NLP技术前进的一大障碍,主要有两个难点。 一个是暧昧,自然语言有很多暧昧。 虽然人类本身可以通过很多先验知识有效地消除各种歧义,但是由于机器在知识表示和获取方面存在严重的不足,因此很难像人类一样消除句法上的歧义。 二是搜索空间,句法分析是极其复杂的任务,候补树的数量随句子的增加呈指数增加,搜索空间巨大。 因此,必须设计适当的解码器,以便能够在允许的时间内搜索模型定义的最佳解。

无论是英语还是汉语,语言的目的都是为了表达意思。 因此,语义理解是NLP技术的终极目标,可以说各种NLP技术以不同的方式为其目的服务。 语义技术与上述两个水平不同,有明确的评价结果,对机器语义的理解是否合适,只能在几个具体情况下判断。 例如在文本关键字提取中,通过分析并比较提取结果,可以测定机器对浅层意义的理解力。

其次依次介绍词法、句法的关键技术,然后介绍现在热机学习语向量和深度学习的NLP技术。

1 .字句

词法技术的核心任务是识别和区分文本中的单词,其过程是分词的过程,因此词法技术主要是各种各样的分词技术。 主要分为两个类别,规则分词和统计分词。 并且,因为每个语言的词法水平的差异很大,所以每个语言的分词技术也不一样。 例如在英语中,可以用空格区分单词。 但是,在汉语中,因为语言是连接的,所以必须用一定程度的技术来区别,而且区别精度比英语稍差。 以下主要介绍中文分词技术。

2 .规则分词

规则分词用词典库+字符串匹配分词文本。 因为语言有固定的形式,这个分词方式可以达到比较高的精度。 根据SunM.S .和Benjamin K.T.(1995 )的研究,在汉语中,90.0%左右的句子,前向最大匹配法和反向最大匹配法完全一致,正确,只能得到约9.0%的句子的两个分割方法的结果不同,但其中一个是正确的(模糊检测成功), 只有不到1.0%的句子,前向最大匹配法和使用反向最大匹配法的分割是一致的,但是错误的,或者前向最大匹配法和反向最大匹配法不同,但是根据两者以上的结论,该方法能够正确地分割约90%的文本内容。 同时,由于算法简单,该方法具有较快的速度。

但是,这种方式也有明显的缺点,因为是用辞典分隔的,所以不能识别辞典中不存在的词语。 另外,在存在多个分割方式的情况下,不能判断应该使用哪个分割方式,即歧义检测能力弱。

在实际应用中,这种方法进行了文本的初步分词,在一些情况下,这种方法甚至能完全满足业务需求。

3 .统计分词(语言模型)

上述规则分词的两个缺点是:1)不能分割词典中的未登录词语,2 )不能检测模糊性。 要克服这两个缺点,就需要引入统计学方法,即语言模型。

3.1什么是语言模型?

从名字可以看出,语言模型是语言的建模,其核心目的是在评价对象数据中找到与语言习惯最相符的表现(概率最大)。 该模型广泛应用于NLP领域的许多技术,包括信息检索、机器翻译和语音识别。 用概率论的专业术语描述语言模型,可以确定长度为m的字符串的概率分布,使用连锁定律简化公式化。

式1 :连锁规则计算长度为m的字符串的概率分布

3.2 n元模型

观察式1可知,文本过长时,从式右部的第3项开始的各项计算变得困难。 为了解决这个问题,提出了n维模型( n-gram model )来降低这个计算的难度。 n元模型是指在推测条件概率时忽略距离为n以上的前因语的影响,因此式1的计算能够简化为式2。

式2:n元模型

当n=1时,称为元模型( unigram model ),此时整个句子的概率表现为P(ω1,ω2,...,ωm)=P(ω1)P(ω2)…P(ωm )。 语义是各个词语相互独立,这一定是完全失去了句子的语序信息。 一维模型的效果不理想。

当n=2时,称为二元模型( bigram model ),方程式2是P(ωi|ω1,ω2,...,ωi-1)=P(ωi|ωi-1 )。 在n=3时称为三元模型( trigram model ),式3是P(ωi|ω1,ω2,…,ωi-1)=P(ωi|ωi-2,ωi-1 )。 显然n≥2时,该模型可以保持一定的词序信息,而且n越大,保持的词序信息越丰富,但计算成本也呈指数增加。

通常,使用频率计数比率来计算n元素条件的概率,如下面的表达式4所示

式4 :使用频度计数的比例来计算n元条件概率,count(ωi-(n-1 )、...、ωi-1 )表示单词ωi-(n-1 )、...、ωi-1出现在语料库中的总次数。

n元模型的思想认为每个单词都是由单词的最小单位的单词构成的,连接的单词出现在不同文本中的次数越多,连接的单词就越有可能是单词。 因此,利用单词和单词相邻出现的频率,可以反映单词的可靠性,统计词汇中相邻出现的各个单词组合的频率,组合频率超过某个阈值时,认为该单词组有可能构成单词。

除了n元模型,作为比较着名统计分词法的方法,有将分词作为字符串中的序列标记任务来实现的隐马尔可夫模型( HMM )和条件随机场( CRF )模型。

通过这种方式,可以在一定程度上弥补规则分词的缺陷,一个是可以分割词典中没有出现的词,两个是在分词时考虑了上下文的。 但该方法也有明显的缺点,计算复杂、速度慢,训练数据需要较大的语料库。

3.3混合分词

在实际应用中,大多使用规则分词+统计分词的方式,即混合分词的方式进行分词。 这样的组合不仅能够快速地分析大多数文本,还能够慢慢地细分不能分割或者模糊的文本。

3.4分词无处不在

因为语言可以被认为是语言表达的最小单位,所以在nlp的各个技术中,分词技术都被使用了。 并且,作为数据预处理的一部分分词经常服务于后续的任务。

4 .词性标注

品词是词汇的基本语法属性,通常也称为品词。 词性标注是指用给定的句子判定各词的语法类别,确定该词性并进行标注的过程。 例如,表示人、场所、事物、其他抽象概念的名称是名词,表示动作或状态的变化的词是动词,记述或修饰名词的属性或状态的词是形容词。 如果给出“这里是一个非常漂亮的公园”这样的句子,其表达结果就是“这里/代词是/动词个/量词非常漂亮/副词是漂亮/形容词的构造助词公园/名词”。

在汉语中,一个词的词性往往不固定,表现为同音同形的词在不同场合语法属性完全不同,给词性标注带来很大困难,但另一方面,从整体上看,很多词,特别是实词,一般只有1~2个词性,一个词性的使用频率 这样,我们如果能够很好地识别常用词的词类,就能够复盖绝大多数的场景,满足基本的精度要求。

现在主流的方法是像分词那样把句子的词性标注作为一个系列标注问题来解决,分词中常用的手段,例如隐马尔可夫模型、条件随机场模型等可以在词性标注任务中使用。 此外,品词标注还需要将单词分为名词、形容词、动词,用“n”、“adj”、“v”等表示的标注规范。 汉语领域没有统一的标记标准,主要有北大词性标记集和宾夕法尼亚词性标记集两种。

词性标签没有独立的应用场景,主要用于增加语义的正确表达,例如在对话系统中可以使用词性标签来提高问题相似度判定的正确性。

5 .命名实体id

与自动分词、词性标注相同,命名实体识别也是自然语言处理的基础任务,是信息提取、信息检索、机器翻译、对话系统等多种自然语言处理技术中不可或缺的组成部分。 其目的是识别词汇中的人名、地名、组织名等命名实体。 由于命名实体的数量越来越多,通常将这些单词的识别称为命名实体识别( Named Entities Recognition,NER ),因为它们不能被词典包括,并且其构造方法各自是有规律的 NER研究命名实体一般分为三个类别(实体类、时间类、数字类)和七个类别(人名、地名、组织名、时间、日期、货币、百分比)。 数量、时间、日期、货币等实体的识别通常以模式匹配方式取得良好的识别效果,比人名、地名、机构名复杂,因此近年来的研究主要以这些实体为中心。

命名实体识别现在不是热门的研究课题。 学术界的部分认为已经解决了,但有学者认为这个问题还没有得到很好的解决。 原因在于,实体命名评估单词比其它信息搜索区域(其中命名实体标识仅以有限的文本类型(主要是新闻资料)和实体类别(主要是人名和地名)获得效果)小,且容易发生拟合的命名实体标识集中在高再现率上,但是在信息搜索领域

同时,汉语命名实体的识别比英语挑战更大,目前还有很多未解决的问题。 命名图元的识别效果评估主要取决于图元边界是否正确以及图元类型是否正确。 在英语中,由于命名实体通常具有更加清晰的标志形式(例如使英语实体的每个单词的首字母大写),所以实际的主体边界识别相对容易,并且主要侧重于实体类型的确定。 汉语比实体类别的注释子任务难以识别实体边界。

汉语命名实体识别主要存在以下难点

各种命名实体的数量很多。 据日报1998年1月的语料库(共计2305896字)的统计,人名为19965人,这些人名大多为未登录词。 各种命名实体的数量很多。 据日报1998年1月的语料库(共计2305896字)的统计,人名为19965人,这些人名大多为未登录词。 嵌套情况复杂。 一个命名实体经常将一些短语与嵌套的命名实体组合在一起,以便将地名嵌套在人名中,而将人名嵌套在地名中。 嵌套现象在机构名中最为明显,机构名中不仅有很多地名,还有相当多的机构名成为嵌套。 互相嵌套的现象严重制约着复杂的命名实体的识别,各种命名实体的识别不是孤立的,而是相互纠缠的。 长度不定。 与其他类型的已命名图元相比,难以确定长度和边界,因此难以确定组织名称。 中国的人名一般是从两个字到四个字,常用的地名也多是从两个字到四个字。 但是,机构名称长度的变化范围很大,只有两个简称,也有几十字全名。 在实际资料中,由10个以上单词组成的机关名占了相当的比例。 类似地,命名实体的识别也有三种方法,即,基于规则的方法和统计混合方法。

基于规则的命名实体标识:规则和字典是初始命名实体标识的最有效方法。 依赖于手工作业规则的系统,给实体库命名,给每个规则分配权重,根据实体和规则的一致性进行类型判定。 如果提取的规则能够很好地反映语言现象,则该方法明显优于其他方法。 但是,在很多情况下,规则依赖于特定的语言、区域和文本样式,其创建过程耗时,难以复盖所有的语言现象,移植性差,维护困难等问题。 基于统计的命名实体识别:类似于分词,基于当前主流统计的命名实体识别方法包括隐马尔可夫模型、最大熵模型、条件随机场等。 其主要思想是根据人工标注的资料,将命名实体识别任务作为序列标注问题加以解决。 基于统计的方法对语料库的依赖性很大,能够用于命名实体识别系统的构建和评价的大规模通用语料库很少,这是该方法的一大制约。 混合方法:自然语言处理不是完全随机的过程,单独使用统计方法使状态搜索空间非常大,必须利用规律知识预先进行滤波处理。 目前很少有简单使用统计模型、不使用规则知识的命名实体识别系统,通常使用混合方法将规则与统计方法相结合。 命名实体认识现在多用于知识图,因为知识图主要构筑实体间的关系,所以很大程度上依赖于命名实体认识技术。

6 .词语预处理

语言预处理的核心思想是消除对文本中语义表达不起作用或引起干扰的因素,在英语文本中很常见。

Capitalization :英语使用大小写,但在大多数情况下,大小写对文本的含义没有任何影响。 此外,大小写还会影响单词比较的结果。 因此,将文本始终转换为小写字母对于后续处理非常有用。 然而,命名实体识别任务必须注意大小写。 特别是,一部分机关和人名多采用首字母大写的格式。 Stopword :这个概念也来源于英语,一个单词是文本中用于连接句子的不同成分,在不影响其表现的情况下,可以称为Stopword,例如“the”、“and”等单词。 同样,汉语中也有“的”、“的”等单词和单词等同样的无效词。 stemming/Lemmazation :因为英语有时态和词形,这两种技术只存在于英语中。 同一个单词根据时态和词形的不同而有不同的形式,虽然不会改变单词的意思,但是会影响单词的比较和统计。 例如,“leaf”这个单词有“leaves”、“leafs”等不同的表现形式。 词性标记也可以看作单词预处理技术。 7 .语法

机器翻译是自然语言处理中的重要课题,也是NLP应用的主要领域,句法分析是机器翻译的核心数据结构。 句法分析是自然语言处理的核心技术,是深入理解语言的基础。 句法分析的主要课题是识别句子中包含的句法成分和这些成分之间的关系,一般用句法树来表示句法分析的结果。 自20世纪50年代初机器翻译课题提出以来,自然语言处理研究已有60多年的历史,句法分析一直是自然语言处理前进的一大障碍。 句法分析主要有以下两个难点

暧昧性。 自然语言与人工语言差异的重要特征之一是其中存在着许多歧义。 虽然人类本身可以通过很多先验知识有效地消除各种歧义,但是由于机器在知识表示和获取方面存在严重的不足,因此很难像人类一样消除句法上的歧义。 搜索空间。 句法分析是一项极其复杂的任务,候补树的数量随句子的增加呈指数增加,搜索空间巨大。 因此,必须设计适当的解码器,以便能够在允许的时间内搜索模型定义的最佳解。 句法分析( Parsing )是从单词列中得到句法结构的过程,实现该过程的工具或程序被称为句法分析器( Parser )。 句法分析的种类很多,但在这里根据其重点目标分为完整的句法分析和局部句法分析。 仅关注局部或局部分量的差异,例如常用的从属句法分析或局部分析方法,其意在完整的句法分析可以获得整个句子的句法结构。

用于句法分析的方法可以简单地分为基于规则的方法和基于统计的方法。 基于规则的方法在处理大规模真实文本时,存在语法规则复盖有限、系统可移动等缺点。 随着大规模标签树的构建,基于统计学习模型的语法分析方法开始兴起,语法分析器的性能提高,最典型的是20世纪70年代流行的pcfg ( probabilisticcontextfreegrammar ),其在语法分析领域得到了广泛应用,在当前的语法分析中经常使用 统计语法分析模型的本质是一种针对候选树的评估方法,其能够借助于候选语法树的分数来消除歧义,其中在正确的语法树上给出高分数,在不合理的语法树上给出低分数。

8 .句法分析资料

统计学习方法大多需要词汇数据的支持,统计句法分析也不例外。 由于句法分析的数据集比分词或词类标签复杂,是树的标签构造,所以也称为树的库。 图1显示了典型的句法树。

图1语法树示例

现在使用最多的树库来自美国宾夕法尼亚大学加工的英语宾夕法尼亚树库( Penn TreeBank,PTB )。 PTB的前身是airtravelinformationsystem ( atis )和WSJ(Wall Street Journa )的树库,具有很高的一致性和标记精度。

中文树库建设缓慢,着名的是中文宾夕法尼亚库( Chinese TreeBank,CTB )、清华树库( Tsinghua Chinese TreeBank,TCT )、台湾中研院树库。 其中CTB是宾夕法尼亚大学标记的汉语句法树库,也是目前大部分汉语句法分析研究的标准语料库。 TCT是清华大学计算机系统智能技术和系统国家重点实验室的人从汉语平衡语料库中提取出100万规模的汉字词汇文本,经过自动句法分析和人工校对,形成了一个写有高质量完整句法结构的汉语句法树语料库。 Sinica TreeBank是中国台湾的中研院辞典集团从中研院的平衡语料库中提取句子,用电脑自动分析成句法树,人工修正验证的结果。

不同的树库有不同的标记体系,使用时不使用一种树库的句法分析器,用其他树库的标记体系进行说明。 因为树库很多,所以这里不叙述特定各种树库的标记规范,有兴趣的读者可以在网上搜索自己。 图2显示清华树库的部分标记集。

图2清华树库中文成分标记集(部分)

9 .依赖句法分析

依存句法分析是比较常用的句法依存技术,根据语言单位内的成分分析前的依存关系来解释句法结构,主张句子中的核心动词是支配其他成分的重要成分。 它本身不受任何其他成分的支配,所有支配成分都以某种关系从属于支配者。 直观上,依存句法分析认识句子中“主谓宾”、“定型补充”的语法成分,分析各成分之间的关系。

图3依赖句法分析示例

我的理解是,句法依存分析在语料库少的情况下分割句子,帮助理解意思。

10 .文本矢量化

文本显示是自然语言处理中的一项基础性工作,文本显示的好坏直接影响着自然语言处理系统整体的性能。 因此,研究人员为了提高自然语言处理系统的性能,投入了大量的人力物资研究了文本表示方法。 在自然语言处理研究领域,文本矢量化是文本表达的重要方法之一。 由名称可知,文本向量化是指将文本表现为能够表现文本意义的一系列向量。 无论是汉语还是英语,语言都是表现文本处理的最基本要素。 在现阶段,文本矢量化的大部分研究都是通过语言矢量化来实现的。 与此同时,相当多的研究者将文章和句子作为文本处理的基本单位,产生了doc2vec和str2vec技术。

11 .语袋模型

词汇袋( Bag Of Word )模型是以最早的词为基本处理单位的文本矢量化手法。 举例说明该方法的原理。 首先是以下两个简单的文本:

John likes to watch movies,marylikestoo.johnalsolikelstowatchfootballgames .根据上述两个文件中出现的单词,构建以下词典

{ " John ":1 " likes ":2 " to ":3 " watch ":4 " movies ":5 " also ":6 " football ":7 " games ":8 " Mary ":9 " too ":10 " }以上的字典中包含10个单词,每个单词都有唯一的索引 这将是:

图4 CBOW模型结构图

CBOW的宾语的条件概率的计算如图5所示。

图5针对5 CBOW目标词的条件概率计算公式

CBOW的目标函数为∑(ω,c)∈DlogP(ω,c )。

与CBOW模型对应的是Skip-gram模型。 这两个模型实际上是word2vec两种不同思想的实现: CBOW的目标是从上下文预测当前词的概率,上下文所有词对当前词出现概率的影响的权重相同,因此称为continuous bag-of-words模型。 如果在袋子里取词的话,可以取出足够数量的词语,取出的优先顺序并不重要。 Skip-gram正好相反,根据当前语言预测语境概率。 在实际使用中,该算法本身不具有高优先级,并且可以基于最后给出的效果来选择该算法。

Skip-gram模型的结构如图6所示,Skip-gram模型也没有隐藏层。 但是,与CBOW模型输入语境词的平均词矢量不同,Skip-gram模型从宾语的语境中选择单词,将该词矢量作为语境的表现。

图6 Skip-gram模型结构图

对于整个数据,Skip-gram模型的目标函数如图7所示。

0图7 Skip-gram模型目标函数

14 .在NLP中深入学习

深度学习在NLP中的应用多为循环神经网络( Recurrent Neural Networks,RNN ),除传统神经网络外,还可通过增加存储单元来处理任意长度的排列(理论上,结构上为常规神经网络)

RNN背后的思想是利用顺序信息。 传统神经网络假设所有输入(包括输出)都是相互独立的。 对许多任务来说,这是一个非常糟糕的假设。 如果想预测某系列的下一个单词,最好知道哪个单词在那之前。 RNN循环是因为系列中的每个元素都执行相同的操作,每个操作依赖于以前的计算结果。 另一方面,可以认为RNN至今为止计算出的信息是存储在其中的。 理论上RNN可以利用任意长的排列信息,但实际上只能回顾前几步。 例如,想象一下你想把电影中每个时刻发生的事情分类。 传统神经网络不知道如何将前一事件的推论应用于后一事件的RNN网络能够解决这个问题,具有周期性的网络,具有保持信息的作用。

15. LSTM

长时间存储网络( LSTM )是能够学习长时间依赖关系的特殊RNN。 他们由Hochreiter&Schmidhuber(1997 )提出,之后很多人进行了改良和推进。 他们在许多问题上取得了巨大的成功,现在广泛使用。

LSTM是为了避免长期依赖问题而设计的。 长期记忆信息是LSTM的默认行为,他们不努力学习

所有的循环神经网络都有连锁的迭代模块神经网络。 在标准RNN中,该迭代模块具有非常简单的结构,如图8所示。

图8 tanh层

LSTM也同样具有链结构,但其重复模块具有不同的结构。 与单独的神经网络层不同,如图9所示,具有以特殊方式相互影响的4个神经网络层。

图9 LSTMs结构图

LSTM的密钥是小区状态,如图10中水平线所示。

单元的状态像传送带。 沿着整条链从头到尾运行,途中只有一点线性的相互作用。 因为信息很容易流动,所以不会变化。

图10 LSTM组件

LSTM通过称为门的机制向单元格状态添加或删除信息。

门是有选择地通过信息的方式。 在这些输出中,如图11所示,有Sigmoid层和每个点的积分运算。

图11门结构

16. Seq2Seq模型

在NLP任务中,聊天机器人、机器翻译、自动摘要等传统方法都需要通过从候补集中选择答案来完善候补集。 随着近年来深度学习的发展,国内外学者将深度学习技术应用于NLG(Nature Language Generation,自然语言生成)和nlu ( naturelanguageunderstanding,自然语言理解),取得了一些成果。 近两年来,Encoder-Decoder在NLG和NLU中应用了许多方法。 然而,由于语言本身的复杂性,尚无能够实际解决NLG和NLU问题的模式。

总结

本文大致介绍了NLP中的常见技术,起到抛砖引玉的作用,有兴趣的读者可以阅读相关资料。 因为本论文的创作时间有限,在很多地方处理很细致,希望读者能够理解。

参考文献

1 .贪婪学院,www.greedyai.com

2.pre-processinnaturallanguagemachinelearning:towardsdatascience.com /

3.《Python自然语言处理:核心技术和算法》

4 .依赖性分析:中文依赖性语法分析关于- lpty博客- CSDN博客

5 .依赖句法分析和语义依赖分析的区别- ZH奶酪-博客园

知道原文的链接:

广岛LAN .北京hu.com/p/536406

    爱淘啦励志网相关推荐