APP下载

自然语言处理中的深度学习分析方法及应用

2018-12-26鲍舒恬

数码设计 2018年2期
关键词:三元组层级向量

鲍舒恬

(北京语言大学信息科学学院,北京,100083)

引言

目前,基于深度学习技术而面向自然语言的处理任务为该领域提供了许多新的研究思路与方向。自然语言处理技术作为一种交叉学科出现,研究中既包含有最主要的计算机科学,同时也涉及到人工智能学、语言学以及心理学、逻辑学等重要领域。在研究方面,人工智能为了能够对自然语言进行处理,必须具备实体识别、机器翻译、词性标注等能力,因此需要选用专门的深度学习方法。

1 人工智能领域自然语言处理的深度学习方法

1.1 前馈神经网络应用

前馈神经网络(Feed Forward Neural Network,FNN)又被称为多层感知机模型,这种神经网络模型主要应用于多任务环境之中。但是随着处理环境的复杂化,模型内部结构的复杂程度也逐渐提高,很可能导致神经网络训练困难。而在图形处理技术的突破下,前馈神经网络被再次提起,且开始广泛应用于自然语言处理。在计算机技术领域,前馈神经网络当中的反向传播算法(Back Propaganda)能够在深度学习过程中对不同层级之间存在的错误驱动进行优化,最终完成对网络参数的调整。

卷积神经网络(Convolutional Neural Network,CNN)作为一种FNN已成为了主流模型之一,相较于其他模型它可以使用卷积核来扩展描述空间,增加模型深度,并且训练过程中所需要调整的参数也较少,进行自然语言处理时,通常将文本中的句子向量化为矩阵,卷积后得到句向量特征。

1.2 递归神经网络

在技术的发展中前馈神经网络受到技术制约形成瓶颈,导致其只能单独处理一个输入。为了提高神经网络的处理系列数据的能力,技术人员希望通过递归神经网络(Recurent Neural Network,RNN)来对时间递归结构进行表达,从而使数据学习能够拥有明确的时间序列关系,同时使训练模型拥有记忆性,将前后的输入关联起来。在RNN当中,为了能够完成深度学习的建模,需要通过包含三个隐含层的神经网络进行模型组建。在时序信息方面,不同的时刻都可以依照隐含层当中所含有的激活值(Activation)进行递归,从而形成具有输入层到隐含层连接权的权值参数矩阵,并能够计算得出偏置向量(Bias Vector)以及激活函数(activation function)[1]。根据RNN的特征,可以实现损失函数的时域反向传播,最终再借助低度下降发完成学习网络参数的确定。这种神经网络方法在元模型学习、机器翻译以及语义标注方面,均有着良好的效果。

不过普通的 RNN在实际应用中经常因为无法处理远距离依赖而导致训练效果不佳,而长短时记忆网络(Long Short Term Memory Network, LSTM)则解决了这一缺陷。但是这种改进使得LSTM的模型变得十分复杂,于是GRU(Gated Recurrent Unit)随之被提出,这是一种RNN的变体,它简化了LSTM模型且能达到较好的自然语言处理效果,因此被广泛应用。

1.3 神经网络词向量

在人工智能神经网络的自然语言处理技术研究中,通过神经网络的方式对文本稀疏性较小的大规模语料进行分析,从而获取复杂的上下文关系时一种具有分布式特征的词编码技术,这种技术被称为神经网络中的“词向量”,用来进行分词工作,这在自然语言处理中是极为重要的准备工作之一。在技术研究领域,目前广为人所知的词向量主要有glove词向量、word2vec词向量、HLBL词向量以及SENNA词向量等。在相关的研究中,研究人员发现,不同的词向量规则具有不同的特点。例如word2vec词向量中,词向量之间具有语义上的联系,表现为词向量之间的加减关系,这种关系的存在使其具有高科用量。相较于前者,于2014年所提出的glove词向量通过矩阵的方式实现更为优异的性能,除了能够使测评指标更具优势之外,还能够解决诸多自然语言的测评任务。

2 人工智能自然语言处理深度学习的应用方法

2.1 神经网络的模型建设

在现阶段的深度学习模型建构中,通常采用Nivre分析方法作为主要的确定性分析方法,这种分析方法能够通过对自然语言进行特征提取的方式进行分类,而其所提取的数据则能够表示当前文本上下文的依存关系,进而完成句法分析。依据Nivre分析方法,本文在进行模型建设时采用了三元组的方式对分析过程格局进行表示。三元组主要包含有堆栈、节点序列以及依存弧集合三个部分,分别以字母S、I、A进行表示。在分析动作中,通过模型的特征向量进行三元组特征的提取能够实现句法分析,最终实现分析决策。在三元组信息当中,需要包含以下几个方面的信息内容。

首先,三元组应当包含有词信息。无论是堆栈还是节点序列缓存,其内部都包含有大量的词信息,这些词信息可能已被处理,也可能尚未进行处理。同时词带有的特征十分明显,因此在对模型潜入之前,这类词往往需要通过稀疏的方式进行表达,但在完成了潜入之后,词所拥有的特征则以稠密的方式进行表述,即Dense Representation;其次,在词内部还具有一定量的词性信息,这种词性信息在模型中与前者的保持一一对应,从而实现每一个词都拥有一个相对固定的对应词性;最后,在三元组当中还应具有依存弧信息,这种信息的主要功能在于对已经完成处理的词信息进行依存关系的表现。

通过这些信息,可以使三元组得到重新组合,并拥有二阶特征(Second Order),使得不同的词的特征在进行模型组合时更加具有效率。与传统的句法分析方式不同,在应用了三元组的神经网络模型中,词的不同类型能够实现彼此之间的相互组合,并且这种组合方式能够作用于不同的层级之中。

2.2 深度学习的模型层级

在应用于自然语言处理的神经网络模型当中,人工智能可以实现非线性函数状态下的语言特征组合,而为了能够使神经网络三元组的特征表现出来,在模型当中需要依托多层级的方式进行提取特征的分类训练。本文在进行研究时发现,神经网络模型可以分为输入层、嵌入层以及隐含层和softmax层等四个层级[2]。

其中,输入层是整个神经网络模型的第一个层级,其主要的功能在与对已经完成构建的分析格局三元组进行处理,从而使神经网络能够获取其内部的元特征(Atomic Feature)内容;嵌入层则是输入层之后的处理层级,这一个层级当中,要由与三元组中各个特征相对应的子嵌入层组成,各个子嵌入层彼此独立,且负责对词信息、词性和依存弧特征进行获取,最终完成三元组特征中离散稀疏到稠密的转换;隐含层则需要对嵌入层当中完成转换的稠密特征进行处理,使其能够进行非线性的变换;而softmax层则在隐含层之后,对自然语言的非线性转换结果进行分类和预测,从而保证神经网络能够完成对于自然语言处理的训练。

2.3 深度信念网络训练

在理论研究中,研究人员发现,通过对既有的受限玻尔兹曼机(Restricted Boltzmann Machine)进行堆叠,可以形成全新的训练模型。这种模型被称为深度信念网络模型(Deep Belief Nets),该模型在应用中能够依托网络训练权重,对输入层的数据进行还原训练。在开展训练时,深度信念网络模型依据可见层RBM进行原始数据的输入,使原始的语言数据能够在层级内部进行处理。随后,深度信念网络模型会对其内部的层级数量进行检验,确认层级数量是否能够满足执行步骤,如果无法满足执行步骤,则需要重新进行原始数据获取,直到满足为止。在毛南族层级数量满足执行步骤需求后,深度信念网络则对内部层级进行微调,从而使深度学习算法模型能够实现有效收敛,最终获得局部最优解[3]。在研究领域,有研究专家指出了深度学习方法在深度信念网络之中的层数设置方式。层数设置可以通过自编码器来完成,从而实现网络的泛化和拓展。自编码器能够取代网络模型中的每一层的RBM,从而实现简单的堆叠,这种堆叠能偶成为堆叠式的自编码网格(Stacked Auto Encoders)。这种网格编码方式是神经网络中对于自然语言的稀疏特性的一种独特的隐藏方式。借助神经元的抑制状态可以实现稀疏自编码网格。在实践应用中发现,这种网格化能够具有对自然语言特征的学习能力,最终实现广泛的多模态检索。

3 结束语

综上所述,人工智能的深度学习是一项蓬勃发展的新技术,不过在目前阶段,对于自然语言的处理尚有许多亟待突破的技术瓶颈,等待技术发展予以攻克。在神经网络的研究中,仿生学对于深度学习的模拟仍然处于起步阶段,其诸多结果都是具有试验性的,需要依托未来的技术发展予以提升。

[1]吴禀雅, 魏苗.从深度学习回顾自然语言处理词嵌入方法[J].电脑知识与技术, 2016, 12(36): 184-185.

[2]赵栋材, 周雁.基于深度学习的电子文本自然语言处理系统[J].电子技术与软件工程, 2018, (03): 180.

[3]陈利民, 王金芳.学生深度学习源于教学环节的优化[J].教育, 2017,(52): 16-18.

[4]奚雪峰, 周国栋.面向自然语言处理的深度学习研究[J].自动化学报,2016, 4210: 1445-1465.

[5]乐明, 孙博洋.自然语言形式分析的作用和前景——兼评《自然语言计算机形式分析的理论与方法》[J].外语电化教学, 2017, 06: 89-96.

猜你喜欢

三元组层级向量
TransP:一种基于WordNet中PartOf关系的知识图谱嵌入方法
科室层级护理质量控制网的实施与探讨
向量的分解
时序知识图谱的增量构建
基于卷积神经网络的知识图谱补全方法研究
聚焦“向量与三角”创新题
军工企业不同层级知识管理研究实践
基于军事力量层级划分的军力对比评估
关于余挠三元组的periodic-模
职务职级并行后,科员可以努力到哪个层级