CN113806543A - 一种基于残差跳跃连接的门控循环单元的文本分类方法 - Google Patents

一种基于残差跳跃连接的门控循环单元的文本分类方法 Download PDF

Info

Publication number
CN113806543A
CN113806543A CN202111105709.4A CN202111105709A CN113806543A CN 113806543 A CN113806543 A CN 113806543A CN 202111105709 A CN202111105709 A CN 202111105709A CN 113806543 A CN113806543 A CN 113806543A
Authority
CN
China
Prior art keywords
layer
formula
vector
unit
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111105709.4A
Other languages
English (en)
Other versions
CN113806543B (zh
Inventor
孙水发
胡枫
裴伟
董方敏
吴义熔
梅周俊森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Three Gorges University CTGU
Original Assignee
China Three Gorges University CTGU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Three Gorges University CTGU filed Critical China Three Gorges University CTGU
Priority to CN202111105709.4A priority Critical patent/CN113806543B/zh
Publication of CN113806543A publication Critical patent/CN113806543A/zh
Application granted granted Critical
Publication of CN113806543B publication Critical patent/CN113806543B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明提供了一种基于残差跳跃连接的门控循环单元的文本分类方法,在现有的门控循环单元的基础上,利用跳跃连接引入残差信息并结合高速公路网络的门控限制,同时使用非饱和激活函数以及批标准化来改进门控循环单元定义公式,使门控循环单元在应对梯度消失问题的同时能够捕获超长期依赖关系,并利用高速公路网络的门控来限制残差信息不占主要地位。本发明利用训练好的网络模型自动对中文文本进行分类,以及对电影影评正/负评价分类,以便降低人力成本。通过多组对比实验,证明了本发明在文本分类任务中有一定的适用性。

Description

一种基于残差跳跃连接的门控循环单元的文本分类方法
技术领域
本发明涉及一种基于残差跳跃连接的门控循环单元的文本分类方法。
背景技术
近年来,深度学习在天文、地理、工业等科技领域得到广泛应用。时间序列数据在我们的日常生活中无处不在,从股市走势、不同城市的气候数据、一段时间的产品销售情况、能源使用状况等等。其中,网络上的文本数据也是日益增多,这些数据主要应用于舆情监测、信息检索、及新闻文本分类等领域。如果能对这些数据进行有效分类,那么就会更有利于从中挖掘出有价值的信息,因此对文本数据的管理和整合显得尤为重要。文本分类属于自然语言处理任务中的一项基础性工作,通过利用计算机相关理论知识及技能,达到对文本资源进行整理和归类的目的。现有的文本分类技术有存在一些不完善之处,比如:FastText方法,其缺点是没有完全考虑词序信息,TextCNN方法,其缺点一方面无法建立更长的序列信息,另一方面它的超参调节额外繁琐。神经网络方法:循环神经网络(RNN)具有捕获和利用顺序依赖性的能力,广泛用于处理此类时间序列数据,尤其是在机器翻译、文本分类、语音识别和其他任务。然而,随着网络的加深,传统的RNN会出现梯度消失的问题。虽然长短期记忆网络(LSTM)及门控循环单元(GRU)方法可以捕获长期上下文信息,但它们的门结构的复杂性使得训练速度变慢。虽然简单循环单元(SRU)方法能减少神经网络的训练时间,但其精度无法满足需求。
发明内容
发明目的:为解决背景技术中存在的技术问题,本发明提出一种基于残差跳跃连接的门控循环单元的文本分类方法。包括以下所述步骤:
步骤1,定义数据集的词汇表并将词汇表的文本数据进行预处理,去除文本中的不规范数据(乱码或空行);
步骤2,将步骤1得到的文本信息进行门控循环单元神经网络建模;
步骤3,设置门控循环单元神经网络的全连接层以及分类层;
步骤4,为门控循环单元神经网络的表示中建立残差跳跃连接并引入高速公路网络门限控制方法;
步骤5,将残差跳跃连接的门控循环单元的饱和激活函数改为非饱和激活函数;
步骤6,设置残差跳跃连接的门控循环单元神经网络的权重初始化方式为正交初始化;
步骤7,为残差跳跃连接的门控循环单元神经网络设置批标准化;
步骤8,设置残差跳跃连接的门控循环单元神经网络的超参数;
步骤9,配置残差跳跃连接的门控循环单元神经网络的损失函数以及优化器;
步骤10,结合步骤1得到的文本信息,使用残差跳跃连接的门控循环单元神经网络进行文本分类。
步骤1包括:
定义数据集的词汇表,包括统计单词的出现频率和按词频顺序对单词进行排序;
在定义词汇表后,将训练数据转化成单词的数字编号(按一定比例将数据集分为训练集和测试集,比例一般为7:3,训练集包括训练数据);
对训练数据进行批处理,使用填充的方法,即将同一批块内的句子长度补齐;
定义词向量层:在输入层(这里的输入层指的是数据向量化后,作为输入给门控循环单元神经网络,这层叫输入层),每个单词用一个实数向量表示,所述实数向量称为词向量,使用Word2Vec方法对文本进行向量化操作。
步骤2包括:
建立门控循环单元的循环神经网络的前向算法:建立更新门和重置门,设zt和rt分别为更新门向量和重置门向量,xt为当前层的t时刻的输入值,Wz和Wr为模型参数,即权重向量,Uz、Ur、Ua为输入时序信息的权重,ht-1为前一时刻的状态向量,bz和br为偏置向量;更新门向量和重置门向量计算公式如下:
zt=σ(Wzxt+Uzht-1+bz)
rt=σ(Wrxt+Urht-1+br)
式中,σ为Sigmoid激活函数,Sigmoid激活函数Sigmoid(x)的计算公式如下:
Figure BDA0003272222580000021
其中,x为函数输入;e为自然常数;
使用如下门控循环单元的输出公式:
at=g(Waxt+Ua(ht-1*rt)+ba)
ht=zt*at+(1-zt)*ht-1
式中,at是t时刻的候选隐状态,ht为当前时刻t的隐状态向量,候选隐状态的激活函数g(·)为Tanh,Wa为模型权重参数;
其中,Tanh激活函数Tanh(x)的计算公式如下:
Figure BDA0003272222580000031
式中,x为函数输入。
步骤3包括:
在门控循环单元神经网络之后需要接全连接层来修正神经元输出值的维度,全连接层公式如下:
f=Wyh
式中,Wy为维度匹配矩阵;h为网络最后一层的神经元输出;f为全连接层输出值;
在全连接层之后需连接分类层进行分类,通过如下归一化指数函数S(f)j公式进行分类处理:
Figure BDA0003272222580000032
式中,N为类别数;fj表示f的第j元素,j的范围为1到N;fn表示f的第n元素,n取值为1到N。
步骤4包括:
在门控循环单元结构的时间轴方向和空间轴反向上建立残差的跳跃连接,引入高速公路网络的门控限制,公式定义如下所示:
Figure BDA0003272222580000033
Figure BDA0003272222580000034
Figure BDA0003272222580000035
Figure BDA0003272222580000036
ht l=(1-zt l)⊙ht-1 l+zt l⊙at l
Ht l=T(x)l⊙ht l+C(x)l⊙ht-α l
式中,⊙表示矩阵的点乘运算,l表示堆叠层数,
Figure BDA0003272222580000041
为l层的t时刻的输入值,
Figure BDA0003272222580000042
Figure BDA0003272222580000043
为l层的模型参数,即权重向量,
Figure BDA0003272222580000044
Figure BDA0003272222580000045
为l层输入时序信息的权重,
Figure BDA0003272222580000046
Figure BDA0003272222580000047
分别为门控循环单元(GRU)在l层的更新门、重置门和候选隐状态,
Figure BDA0003272222580000048
为前一时刻的状态向量,Vl是l层的维度匹配矩阵,当网络前后层维度一致时,则不需要维度匹配矩阵,
Figure BDA0003272222580000049
是l层未激活的候选隐状态,g(·)为激活函数,
Figure BDA00032722225800000410
为l层t时刻的输出状态,T(x)l与C(x)l是高速网络的门控限制;ht-α表示在时间轴方向上建立残差连接,α表示神经元个数,其取值与句子的长度有关,
Figure BDA00032722225800000411
为l层在t时刻的最终输出向量。
步骤5包括:
将残差跳跃连接的门控循环单元的饱和激活函数改为非饱和激活函数ReLU,得到l层t时刻的输出公式为:
Figure BDA00032722225800000412
式中,
Figure BDA00032722225800000413
为l层t时刻的输出状态,
Figure BDA00032722225800000414
为l层高速网络的门控限制,g(·)为ReLU激活函数,公式如下:
Figure BDA00032722225800000415
其中,x为函数输入值。
步骤6包括:
正交初始化是将权重参数W、Wf、Wr的初始值初始化为单位正交矩阵,单位正交矩阵A需满足如下条件:
A为正交矩阵;
A的转置AT为正交矩阵;
AAT=E,E为单位矩阵;
A的各行是单位向量且两两正交;
A的各列是单位向量且两两正交;
(Ax,Ay)=(x,y),x,y都为常数;A是正交矩阵;
|A|=1或-1;
A的维度为权重所在的神经网络层的神经元个数。
步骤7包括:
批标准化公式如下:
Figure BDA0003272222580000051
Figure BDA0003272222580000052
Figure BDA0003272222580000053
其中,
Figure BDA0003272222580000054
为输入值Zi经过标准化之后的新输入值;σ2为方差;μ为均值;m为输入的维度;参数ε等于10-8
步骤8包括:
参数设置:隐藏层的神经元数量设置为650,embedding设置为650,初始学习率设置为1,设置每次迭代后若交叉训练集精准度下降则下次迭代的学习率自动衰减。迭代次数epoch设置为40次,batch设置为35,神经元丢弃率dropout设置为50%。使用NVIDIAGeForce RTX 2080TI进行cuda加速训练。
步骤9包括:
针对残差跳跃连接所设计的连接项即单元状态的反向传播有如下推导:
推导误差项之前的部分设定及公式:
ReLU函数的导数ReLU(x)′和Sigmoid函数的导数Sigmoid(x)′分别为:
Figure BDA0003272222580000055
Sigmoid(x)′=Sigmoid(x)(1-Sigmoid(x))
式中,x为输入值,符号′为求导符;
对残差跳跃连接的门控循环单元神经网络的单元状态公式进行等效替换,令:
F(m)=Waxt+Ua(ht-1⊙rt)+ba
式中,Wa为权重向量,Ua为输入时序信息的权重,ba为偏移量;F(m)是一个代数符号;
设定当前状态时刻为t,设l为计算的误差项
Figure BDA0003272222580000056
所在层数,P为当前网络层数,则有:
Figure BDA0003272222580000061
式中,
Figure BDA0003272222580000062
表示在P层未激活的候选隐状态,
Figure BDA0003272222580000063
表示在l层未激活的候选隐状态;
Figure BDA0003272222580000064
Figure BDA0003272222580000065
的偏导,得到:
Figure BDA0003272222580000066
式中,
Figure BDA0003272222580000067
为求偏导符号,I表示单位矩阵;
得出单元状态的第l层的误差项
Figure BDA0003272222580000068
为:
Figure BDA0003272222580000069
Figure BDA00032722225800000610
Figure BDA00032722225800000611
上式中,
Figure BDA00032722225800000612
表示激活后的候选隐状态,Et表示在t时刻的误差,
Figure BDA00032722225800000613
表示P层t时刻的隐状态向量,I表示单位矩阵,
Figure BDA00032722225800000614
为P层重置门限。
有益效果:本发明方法基于残差跳跃连接的门控循环单元(RT-GRU)是在误差反向传播(BP)方向将残差信息引入到门控循环单元(GRU)的候选隐藏状态表示中,使网络对梯度变化更加敏感。并且在沿时间轴的反向传播(BPTT)方向建立残差连接,使网络捕获非常长期的依赖。利用高速公路网络的门控来限制残差信息不占主要地位。此外,结合激活函数和批量归一化。本发明进行了三个应用实验测试,语言建模、文本分类和情感分析。实验结果表明,本发明的建模方法在上述三个应用中均得到不错的结果。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1是本发明方法架构图。
具体实施方式
如图1所示,本发明提供了一种基于残差跳跃连接的门控循环单元的文本分类方法,包括以下所述步骤:
步骤1,定义数据集的词汇表并将词汇表的文本数据进行预处理;
步骤2,将步骤1得到的文本信息进行门控循环单元神经网络建模;
步骤3,设置门控循环单元神经网络的全连接层以及分类层(softmax层);
步骤4,为门控循环单元神经网络的表示中建立残差跳跃连接并引入高速公路网络门限控制方法;
步骤5,将残差跳跃连接的门控循环单元的饱和激活函数改为非饱和激活函数;
步骤6,设置残差跳跃连接的门控循环单元神经网络的权重初始化方式为正交初始化;
步骤7,为残差跳跃连接的门控循环单元神经网络设置批标准化;
步骤8,设置残差跳跃连接的门控循环单元神经网络的超参数;
步骤9,配置残差跳跃连接的门控循环单元神经网络的损失函数以及优化器;
步骤10,结合步骤1得到的文本信息,使用残差跳跃连接的门控循环单元神经网络进行文本分类,应用在文本分类任务以及情感分析任务中,验证有效性。
步骤1包括:
确定词汇表包括统计单词的出现频率和按词频顺序对单词进行排序。在确定词汇表后,就可以将训练数据,转化成单词的数字编号。确定词汇表后需要对文本数据进行批处理,由于每个句子的长度不同,又无法像图像一样可以调整到固定高度,所以需要使用填充的方法,即将同一批块内的句子长度补齐。定义词向量层:在输入层,每个单词用一个实数向量表示,这个向量被称为“词向量”。具体来说,词向量可以理解为将词汇表嵌入到一个固定的维度的实数空间中,其单词编号转化为词向量。这样做有两大作用:一是降低输入的维度。如果不使用词向量层,而直接把单词以one-hot vector(独热编码)形式输入神经网络模型中,那么输入的维度大小将和词汇表的大小相同,通常在10000以上。而词向量的维度通常在200-1000之间,这样循环神经网络的参数数量和计算量就得到大大地减少。二是增加语义信息。单纯的单词编号是不包含任何语义信息的,而词向量层将稀疏的编号转化为稠密的向量表示,就使得词向量有可能包含更为丰富的信息。
步骤2包括:
语言文本数据主要是时序数据,当输入数据是具有语义依赖性且是序列模式时,循环神经网络对数据序列的记忆有助于解决连续序列的问题,并且门控循环单元简化了状态计算,降低了神经网络训练耗时。
建立门控循环单元的循环神经网络的前向算法:建立更新门和重置门,设zt和rt分别为更新门向量和重置门向量,xt为当前层的t时刻的输入值,Wz和Wr为模型参数,即权重向量,Uz、Ur、Ua为输入时序信息的权重,ht-1为前一时刻的状态向量,bz和br为偏置向量;更新门向量和重置门向量计算公式如下:
zt=σ(Wzxt+Uzht-1+bz)
rt=σ(Wrxt+Urht-1+br)
式中,σ为Sigmoid激活函数,Sigmoid激活函数Sigmoid(x)的计算公式如下:
Figure BDA0003272222580000081
其中,x为函数输入;e为自然常数;
使用如下门控循环单元的输出公式:
at=g(Waxt+Ua(ht-1*rt)+ba)
ht=zt*at+(1-zt)*ht-1
式中,at是t时刻的候选隐状态,ht为当前时刻t的隐状态向量,候选隐状态的激活函数g(·)为Tanh,Wa为模型权重参数;
其中,Tanh激活函数Tanh(x)的计算公式如下:
Figure BDA0003272222580000082
式中,x为函数输入;
步骤3包括:
为了让输出值与分类层的维度匹配,在门控循环单元神经网络之后需要接全连接层来修正神经元输出值的维度,全连接层公式如下:
f=Wyh
式中,Wy为维度匹配矩阵,其意义为使h的维度与f的维度保持一致;h为残差门控循环神经网络最后一层的神经元输出;f为全连接层输出值;
在全连接层之后需连接分类层进行分类,这里给出归一化指数函数S(f)j公式用于分类处理:
Figure BDA0003272222580000091
式中,f为全连接层的输出,也是此时归一化指数函数的输入;e为自然常数;N为类别数;fj表示f的第j元素,j的范围为1到N;fn表示f的第n元素,n取值为1到N。
步骤4包括:
在门控循环单元结构的时间轴方向(BPTT)上及空间轴反向(BP)上建立残差跳跃连接,目的是使其能够回忆更久远的信息,捕获超长期趋势。为使残差信息不占据主要地位,引入高速公路网络的门控限制,仅让网络回忆更久远的信息,以此用来控制信息流。其公式定义如下所示:
Figure BDA0003272222580000092
Figure BDA0003272222580000093
Figure BDA0003272222580000094
Figure BDA0003272222580000095
ht l=(1-zt l)⊙ht-1 l+zt l⊙at l
Ht l=T(x)l⊙ht l+C(x)l⊙ht-α l
式中,⊙表示矩阵的点乘运算,l表示堆叠层数,
Figure BDA0003272222580000096
为l层的t时刻的输入值,
Figure BDA0003272222580000097
Figure BDA0003272222580000098
为l层的模型参数,即权重向量,
Figure BDA0003272222580000099
Figure BDA00032722225800000910
为l层输入时序信息的权重,
Figure BDA00032722225800000911
Figure BDA00032722225800000912
分别为门控循环单元(GRU)在l层的更新门、重置门和候选隐状态,
Figure BDA00032722225800000913
为前一时刻的状态向量,Vl是l层的维度匹配矩阵,当网络前后层维度一致时,则不需要该矩阵,
Figure BDA00032722225800000914
是l层未激活的候选隐状态,g(·)为激活函数,
Figure BDA00032722225800000915
为l层t时刻的输出状态,T(x)l与C(x)l是高速网络的门控限制,不仅能够控制残差信息,同时也能在一定程度上防止过拟合问题;ht-α表示在时间轴方向上建立残差连接,α表示神经元个数,其取值与句子的长度有关,
Figure BDA00032722225800000916
为l层在t时刻的最终输出向量。
步骤5包括:
为了防止梯度消失并且加快收敛速度,将门控循环单元隐状态的激活函数替换为非饱和激活函数ReLU,由此可得l层t时刻的输出公式为:
Figure BDA0003272222580000101
式中,
Figure BDA0003272222580000102
为l层t时刻的输出状态,g(·)为ReLU激活函数,公式如下:
Figure BDA0003272222580000103
其中,x为函数输入值。
步骤6包括:
正交初始化是将权重参数W、Wf、Wr的初始值初始化为单位正交矩阵,单位正交矩阵A需满足如下条件:
A为正交矩阵;
A的转置AT为正交矩阵;
AAT=E,E为单位矩阵;
A的各行是单位向量且两两正交;
A的各列是单位向量且两两正交;
(Ax,Ay)=(x,y),x,y都为常数;
|A|=1或-1;
A的维度为权重所在的神经网络层的神经元个数。
步骤7包括:
批标准化:用来规范化某些层或者所有层的输入,从而固定每层输入信号的均值与方差。为了加快网络训练,应对非饱和激活函数的梯度爆炸隐患,为网络设置批标准化,批标准化公式如下:
Figure BDA0003272222580000104
Figure BDA0003272222580000105
Figure BDA0003272222580000106
其中,
Figure BDA0003272222580000107
为输入值Zi经过标准化之后的新输入值;σ2为方差;μ为均值;m为输入的维度;ε等于10-8
步骤9包括:
神经网络的训练是需要经过反复迭代来达到最终的收敛,而每一次的迭代过程都是要经过步骤2的公式进行正向传播,接着根据损失函数计算权重梯度完成反向传播的计算,一般的循环神经网络,误差项的反向传播包括两个方向,一个是沿时间的反向传播,另一个则是将误差在空间上向上一层传播。针对残差跳跃连接所设计的连接项即单元状态的反向传播有如下推导:
推导误差项之前的部分设定及公式:
ReLU以及Sigmoid的导数分别为:
Figure BDA0003272222580000111
Sigmoid(x)′=Sigmoid(x)(1-Sigmoid(x))
式中,x为输入值,符号′为求导符;
对残差跳跃连接的门控循环单元神经网络的单元状态公式进行等效替换,同时为了计算方便,令
F(m)=Waxt+Ua(ht-1⊙rt)+ba
式中,Wa为权重向量,Ua为输入时序信息的权重,ht-1为前一时刻的状态向量,ba为偏移量。
假设当前状态时刻为t,设l为计算的误差项
Figure BDA0003272222580000112
所在层数,P为当前网络层数,P层到l层之间有若干个网络层,则有:
Figure BDA0003272222580000113
式中,
Figure BDA0003272222580000114
表示在P层未激活的候选隐状态,
Figure BDA0003272222580000115
表示在l层未激活的候选隐状态;
Figure BDA0003272222580000116
Figure BDA0003272222580000117
的偏导,得到:
Figure BDA0003272222580000118
式中,
Figure BDA0003272222580000119
为求偏导符号,I表示单位矩阵;
结合ReLU激活函数的性质以及链式求导法则,得出单元状态的第l层的误差项
Figure BDA00032722225800001110
为:
Figure BDA0003272222580000121
Figure BDA0003272222580000122
Figure BDA0003272222580000123
上式中,
Figure BDA0003272222580000124
表示激活后的候选隐状态,Et表示在t时刻的误差,
Figure BDA0003272222580000125
表示P层t时刻的隐状态向量,I表示单位矩阵,
Figure BDA0003272222580000126
为P层重置门限。
在门控循环单元的基础上通过改变激活函数和引入高速连接在单元状态后,该误差项
Figure BDA0003272222580000127
就能避免因l层到P层之间的空间结构信息传递的连续相乘而引起的梯度消失问题。同原本的GRU相比,基于残差的GRU将会对梯度变化更加敏感。
参数设置:隐藏层的神经元数量设置为650,Embedding设置为650,初始学习率设置为1,设置每次迭代后若交叉训练集精准度下降则下次迭代的学习率自动衰减。迭代次数epoch设置为40次,batch设置为35,神经元丢弃率dropout设置为50%。使用NVIDIAGeForce RTX 2080TI进行cuda加速训练。
实施例
本发明为了更好的对实验效果进行展示,使用的数据集是PTB,实验结果见表1、表2及表3。数据集中包含了9998个不同的单词词汇,加上稀有词语的特殊符号和语句结束标记符,一共是10000个词汇。完成PTB数据集训练和测试的源码是基于Pytorch官方的语言模型示例。为了让对比更充分,这里选择在此数据集上使用循环神经网络(RNN)、长短期记忆网络(LSTM)、门控循环单元(GRU)、Transformer、简单循环单元(SRU)、高速简单循环单元(H-SRU)、残差门控循环单元(R-GRU)、以及本发明提供的基于残差跳跃连接的门控循环单元(RT-GRU)进行对比实验。并且为了更好地比较各个网络的优劣,实验中用到的循环神经网络参数设置都是相同的,即隐藏层均设置650个神经元,Embeddings(词嵌入)的大小均设置为650,丢弃率(drop out)的大小均设置为50%,以层数堆叠的方式来训练神经网络,每种神经网络分别进行3、5、7层的网络训练,权重初始化都为正交初始化;批处理量为4;所有的模型损失函数都为交叉熵损失函数;优化器都为均方根传递优化器,动量为0.95;初始学习率初始为1,设置动态衰减;都使用了批标准化技术;所有模型都进行40次迭代训练。
评价标准采用困惑度(Perplexity,PPL),其计算公式如下:
Figure BDA0003272222580000131
其中,S代表句子,N是句子长度,p(ωi)是第i个词的概率,p(ωi)越大,则PPL值越小,表明语言模型越好。
表1
Figure BDA0003272222580000132
表1展示了网络深度在3层时,各类循环神经网络在PTB数据集上构建语言模型的具体PPL值,训练时间损耗及网络结构的参数量,其中relu+GRU、residual+GRU和R-GRU组成消融实验,R-GRU、T-GRU和RT-GRU组成消融实验,R-GRU为仅在BP方向建立残差连接,T-GRU为仅在BPTT方向建立残差连接。
表2
Figure BDA0003272222580000133
Figure BDA0003272222580000141
表2展示了网络深度在5层时,各类循环神经网络在PTB数据集上构建语言模型的具体PPL值,训练时间损耗及网络结构的参数量。可以从上表中看出,训练耗时及网络结构参数量会随着网络深度的增加而增加。
表3
Figure BDA0003272222580000142
Figure BDA0003272222580000151
表3展示了网络深度在7层时,各类循环神经网络在PTB数据集上构建语言模型的具体PPL值,训练时间损耗及网络结构的参数量。可以从上表中看出,传统的RNN结构在加深网络层数后,其PPL值不降反增,无法有效降低PPL值。
通过表1、表2及表3的实验数据,可以发现:
1)在预测单词的准确率方面:由于传统的RNN并没有任何门控限制其信息流通,因此其PPL值较高,而LSTM、GRU等网络的浅层结构都有着不错的性能,而深层结构性能反而变差,说明是由于梯度消失及网络退化等问题导致。而其他具备缓解梯度消失问题特性的结构,例如:激活函数或者跨层连接方式,相比之下能有效降低PPL值。在SRU类网络中,仅改变激活函数的(relu+SRU)结构,其性能在对应层数上不如原本的SRU,而其他结构都能够优化SRU,尤其是H-SRU结构,在对应层上都有较优的效果,能大幅降低PPL值。在GRU类网络中,特别的RT-GRU结构,其是在BP及BPTT方向上添加了残差信息,在对应的网络层数上,其性能得到极大程度的提升,且都优于其他结构,在5层时,PLL就已经下降到5.98,这是目前已知最好结果。
2)在网络训练耗时方面:SRU及Transformer结构没有依赖前一时刻隐状态向量的输出,因此其具有高并行性,训练耗时在所有结构里都比较低。而基本的RNN结构由于没有类似门控的结构,训练耗时同样是较低。因为LSTM较复杂的网络结构,其具备两个时序信息,以及多个门控结构,因此就训练耗时这方面来考虑,其并不占优。以训练耗时的角度来观察RT-GRU结构,相比于原本的GRU结构,由于添加了残差信息及门控来限制残差信息,因此使其有所增加。
3)在网络结构总参数量方面:RNN结构没有任何门限控制其信息的输入与输出,因此其网络结构的总参数量是最少的。SRU结构由于没有依赖前一时刻隐状态向量的输出,因此同样含有较少的参数量,而有着类似性质的Transformer结构,因为其是由多层的Encoder与Decoder组成,所以在参数量方面Transformer结构并不占优。而由于LSTM复杂的网络结构,其总参数量在所有结构中是最多的。本发明设计的RT-GRU结构相比于原本的GRU结构,其使用了Highway-Networks的门限控制,虽在一定程度上能避免过拟合,但也使网络的参数总量增加。
4)在网络深度方面:通过表1、表2及表3的实验对比,可观察到在浅层网络中,传统的循环神经网络(RNN、LSTM、GRU)性能都得到提升,这也验证了加深网络层数能获得更多特征信息。而随着网络层数深度的继续提升,传统的循环神经网络(RNN、LSTM、GRU)性能都逐渐下滑。而RT-GRU结构在深层网络依然能保持较优的性能。另外,层数堆叠会使模型的参数量随之增多,网络的训练耗时也会越来越高。
综合上述四个对比,可以得出的结论是本发明设计的RT-GRU,在建立残差连接的同时,利用Highway-Networks的门限控制,来控制残差信息。相比于其他的网络结构,能够极大程度的提高网络的性能,降低PPL值。
为了进一步验证本发明设计方法的有效性,将本发明应用在文本分类任务及情感分析任务中。
1)在文本分类任务中,所使用数据集是THUCNews。该数据集是筛选过滤2005-2011年新浪新闻RSS订阅频道的历史数据生成的,包含了74万篇新闻文档。为节约资源,本任务将从数据集中抽取20万条新闻标题,文本长度均在20-30之间,共有10个类别,分别为:娱乐、社会、股票、财经、房产、游戏、教育、科技、时政、体育,每个类别为2万条新闻。在此数据集上本文使用TextCNN、TextRNN(GRU)、TextRNN_Att、R-GRU、RT-GRU进行对比实验,其中TextRNN_Att为引入注意力机制的LSTM结构[65]。实验采用准确率,召回率及f1值作为评估标准。实验中用到的循环神经网络参数设置都是相同的,学习率设置为0.001,批处理设置为100,Embeddings设置为100,隐藏层神经元设置为128,丢弃率(drop out)设置为0.5。其实验结果见表4。
表4
Figure BDA0003272222580000161
通过表4观察到本发明设计的RT-GRU能提升原本GRU结构的性能,同时对比于TextCNN及引入注意力机制的GRU_Att结构,在分类准确率方面依然具备一定的优势。
2)在情感分析任务中,主要进行电影影评倾向分类,所使用的数据集是IMDB数据集,该数据集一共含有50000条影评,被标记为正面和负面两种评价,其中训练集和测试集各为25000条,且都包含50%的正面评价和50%的负面评价,数据集通过Keras读取,在此数据集上使用LSTM、GRU、R-GRU、RT-GRU进行对比实验。为了让实验对比更具有说服力,对于每种神经网络设置相同的超参数:隐藏层均设置128个神经元;Embeddings(词嵌入)的大小均设置为128;丢弃率(drop out)的大小均设置为0.2;所有神经网络的损失函数都使用交叉熵损失函数;所有神经网络训练的EPOCH设置为10次迭代。实验结果见表5。
表5
Figure BDA0003272222580000171
通过表5的观察可知,与语言模型及文本分类任务类似,本发明设计的RT-GRU结构依然能提升原本GRU结构的性能。对比于LSTM结构,RT-GRU结构在分类准确率方面也有着优势,这也证明了本文设计的RT-GRU结构具有一定的普适性。
本发明提供了一种基于残差跳跃连接的门控循环单元的文本分类方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。

Claims (9)

1.一种基于残差跳跃连接的门控循环单元的文本分类方法,其特征在于,包括以下所述步骤:
步骤1,定义数据集的词汇表并将词汇表的文本数据进行预处理,去除文本中的不规范数据;
步骤2,将步骤1得到的文本信息进行门控循环单元神经网络建模;
步骤3,设置门控循环单元神经网络的全连接层以及分类层;
步骤4,为门控循环单元神经网络的表示中建立残差跳跃连接并引入高速公路网络门限控制方法;
步骤5,将残差跳跃连接的门控循环单元的饱和激活函数改为非饱和激活函数;
步骤6,设置残差跳跃连接的门控循环单元神经网络的权重初始化方式为正交初始化;
步骤7,为残差跳跃连接的门控循环单元神经网络设置批标准化;
步骤8,设置残差跳跃连接的门控循环单元神经网络的超参数;
步骤9,配置残差跳跃连接的门控循环单元神经网络的损失函数以及优化器;
步骤10,结合步骤1得到的文本信息,使用残差跳跃连接的门控循环单元神经网络进行文本分类。
2.如权利要求1所述的方法,其特征在于,步骤1包括:
定义数据集的词汇表,包括统计单词的出现频率和按词频顺序对单词进行排序;
将数据集分为训练集和测试集,训练集包括训练数据;在定义词汇表后,将训练数据转化成单词的数字编号;
对训练数据进行批处理,使用填充的方法,即将同一批块内的句子长度补齐;
定义词向量层:在输入层,每个单词用一个实数向量表示,所述实数向量称为词向量,使用Word2Vec方法对文本进行向量化操作。
3.如权利要求2所述的方法,其特征在于,步骤2包括:
建立门控循环单元的循环神经网络的前向算法:建立更新门和重置门,设zt和rt分别为更新门向量和重置门向量,xt为当前层的t时刻的输入值,Wz和Wr为模型参数,即权重向量,Uz、Ur、Ua为输入时序信息的权重,ht-1为前一时刻的状态向量,bz和br为偏置向量;更新门向量和重置门向量计算公式如下:
zt=σ(Wzxt+Uzht-1+bz)
rt=σ(Wrxt+Urht-1+br)
式中,σ为Sigmoid激活函数,Sigmoid激活函数Sigmoid(x)的计算公式如下:
Figure FDA0003272222570000021
其中,x为函数输入;e为自然常数;
使用如下门控循环单元的输出公式:
at=g(Waxt+Ua(ht-1*rt)+ba)
ht=zt*at+(1-zt)*ht-1
式中,at是t时刻的候选隐状态,ht为当前时刻t的隐状态向量,候选隐状态的激活函数g(·)为Tanh,Wa为模型权重参数;
其中,Tanh激活函数Tanh(x)的计算公式如下:
Figure FDA0003272222570000022
式中,x为函数输入。
4.如权利要求3所述的方法,其特征在于,步骤3包括:
在门控循环单元神经网络之后需要接全连接层来修正神经元输出值的维度,全连接层公式如下:
f=Wyh
式中,Wy为维度匹配矩阵;h为网络最后一层的神经元输出;f为全连接层输出值;
在全连接层之后需连接分类层进行分类,通过如下归一化指数函数S(f)j公式进行分类处理:
Figure FDA0003272222570000023
式中,N为类别数;fj表示f的第j元素,j的范围为1到N;fn表示f的第n元素,n取值为1到N。
5.如权利要求4所述的方法,其特征在于,步骤4包括:
在门控循环单元结构的时间轴方向和空间轴反向上建立残差的跳跃连接,引入高速公路网络的门控限制,公式定义如下所示:
Figure FDA0003272222570000031
Figure FDA0003272222570000032
Figure FDA0003272222570000033
Figure FDA0003272222570000034
ht l=(1-zt l)⊙ht-1 l+zt l⊙at l
Ht l=T(x)l⊙ht l+C(x)l⊙ht-α l
式中,⊙表示矩阵的点乘运算,l表示堆叠层数,
Figure FDA0003272222570000035
为l层的t时刻的输入值,
Figure FDA0003272222570000036
Figure FDA0003272222570000037
为l层的模型参数,即权重向量,
Figure FDA0003272222570000038
Figure FDA0003272222570000039
为l层输入时序信息的权重,
Figure FDA00032722225700000310
Figure FDA00032722225700000311
分别为门控循环单元在l层的更新门、重置门和候选隐状态,
Figure FDA00032722225700000312
为前一时刻的状态向量,Vl是l层的维度匹配矩阵,当网络前后层维度一致时,则不需要维度匹配矩阵,
Figure FDA00032722225700000313
是l层未激活的候选隐状态,g(·)为激活函数,
Figure FDA00032722225700000314
为l层t时刻的输出状态,T(x)l与C(x)l是高速网络的门控限制;ht-α表示在时间轴方向上建立残差连接,α表示神经元个数,
Figure FDA00032722225700000315
为l层在t时刻的最终输出向量。
6.如权利要求5所述的方法,其特征在于,步骤5包括:
将残差跳跃连接的门控循环单元的饱和激活函数改为非饱和激活函数ReLU,得到l层t时刻的输出公式为:
Figure FDA00032722225700000316
式中,
Figure FDA00032722225700000317
为l层t时刻的输出状态,
Figure FDA00032722225700000318
为l层高速网络的门控限制,g(·)为ReLU激活函数,公式如下:
Figure FDA00032722225700000319
其中,x为函数输入值。
7.如权利要求6所述的方法,其特征在于,步骤6包括:
正交初始化是将权重参数W、Wf、Wr的初始值初始化为单位正交矩阵,单位正交矩阵A需满足如下条件:
A为正交矩阵;
A的转置AT为正交矩阵;
AAT=E,E为单位矩阵;
A的各行是单位向量且两两正交;
A的各列是单位向量且两两正交;
(Ax,Ay)=(x,y),x,y都为常数;A是正交矩阵;
|A|=1或-1;
A的维度为权重所在的神经网络层的神经元个数。
8.如权利要求7所述的方法,其特征在于,步骤7包括:
批标准化公式如下:
Figure FDA0003272222570000041
Figure FDA0003272222570000042
Figure FDA0003272222570000043
其中,
Figure FDA0003272222570000044
为输入值zi经过标准化之后的新输入值;σ2为方差;μ为均值;m为输入的维度;参数ε等于10-8
9.如权利要求8所述的方法,其特征在于,步骤9包括:
针对残差跳跃连接所设计的连接项即单元状态的反向传播有如下推导:
推导误差项之前的部分设定及公式:
ReLU函数的导数ReLU(x)′和Sigmoid函数的导数Sigmoid(x)′分别为:
Figure FDA0003272222570000045
Sigmoid(x)′=Sigmoid(x)(1-Sigmoid(x))
式中,x为输入值,符号′为求导符;
对残差跳跃连接的门控循环单元神经网络的单元状态公式进行等效替换,令:
F(m)=Waxt+Ua(ht-1⊙rt)+ba
式中,Wa为权重向量,Ua为输入时序信息的权重,ba为偏移量;F(m)是一个代数符号;
设定当前状态时刻为t,设l为计算的误差项
Figure FDA0003272222570000051
所在层数,P为当前网络层数,则有:
Figure FDA0003272222570000052
式中,
Figure FDA0003272222570000053
表示在P层未激活的候选隐状态,
Figure FDA0003272222570000054
表示在l层未激活的候选隐状态;
Figure FDA0003272222570000055
Figure FDA0003272222570000056
的偏导,得到:
Figure FDA0003272222570000057
式中,
Figure FDA0003272222570000058
为求偏导符号,I表示单位矩阵;
得出单元状态的第l层的误差项
Figure FDA0003272222570000059
为:
Figure FDA00032722225700000510
Figure FDA00032722225700000511
Figure FDA00032722225700000512
上式中,
Figure FDA00032722225700000513
表示激活后的候选隐状态,Et表示在t时刻的误差,
Figure FDA00032722225700000514
表示P层t时刻的隐状态向量,I表示单位矩阵,
Figure FDA00032722225700000515
为P层重置门限。
CN202111105709.4A 2021-09-22 2021-09-22 一种基于残差跳跃连接的门控循环单元的文本分类方法 Active CN113806543B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111105709.4A CN113806543B (zh) 2021-09-22 2021-09-22 一种基于残差跳跃连接的门控循环单元的文本分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111105709.4A CN113806543B (zh) 2021-09-22 2021-09-22 一种基于残差跳跃连接的门控循环单元的文本分类方法

Publications (2)

Publication Number Publication Date
CN113806543A true CN113806543A (zh) 2021-12-17
CN113806543B CN113806543B (zh) 2023-05-30

Family

ID=78896163

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111105709.4A Active CN113806543B (zh) 2021-09-22 2021-09-22 一种基于残差跳跃连接的门控循环单元的文本分类方法

Country Status (1)

Country Link
CN (1) CN113806543B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111223493A (zh) * 2020-01-08 2020-06-02 北京声加科技有限公司 语音信号降噪处理方法、传声器和电子设备
CN117851909A (zh) * 2024-03-05 2024-04-09 深圳市雅乐实业有限公司 一种基于跳跃连接的多循环决策意图识别系统及方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180060721A1 (en) * 2016-08-30 2018-03-01 Samsung Electronics Co., Ltd. System and method for residual long short term memories (lstm) network
CN108830287A (zh) * 2018-04-18 2018-11-16 哈尔滨理工大学 基于残差连接的Inception网络结合多层GRU的中文图像语义描述方法
CN109801621A (zh) * 2019-03-15 2019-05-24 三峡大学 一种基于残差门控循环单元的语音识别方法
CN110286778A (zh) * 2019-06-27 2019-09-27 北京金山安全软件有限公司 一种中文深度学习输入法、装置及电子设备
CN110800062A (zh) * 2017-10-16 2020-02-14 因美纳有限公司 用于变体分类的深度卷积神经网络
CN112417157A (zh) * 2020-12-15 2021-02-26 华南师范大学 一种基于深度学习网络的文本属性词的情感分类方法
CN112489616A (zh) * 2020-11-30 2021-03-12 国网重庆市电力公司物资分公司 一种语音合成方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180060721A1 (en) * 2016-08-30 2018-03-01 Samsung Electronics Co., Ltd. System and method for residual long short term memories (lstm) network
CN110800062A (zh) * 2017-10-16 2020-02-14 因美纳有限公司 用于变体分类的深度卷积神经网络
CN108830287A (zh) * 2018-04-18 2018-11-16 哈尔滨理工大学 基于残差连接的Inception网络结合多层GRU的中文图像语义描述方法
CN109801621A (zh) * 2019-03-15 2019-05-24 三峡大学 一种基于残差门控循环单元的语音识别方法
CN110286778A (zh) * 2019-06-27 2019-09-27 北京金山安全软件有限公司 一种中文深度学习输入法、装置及电子设备
CN112489616A (zh) * 2020-11-30 2021-03-12 国网重庆市电力公司物资分公司 一种语音合成方法
CN112417157A (zh) * 2020-12-15 2021-02-26 华南师范大学 一种基于深度学习网络的文本属性词的情感分类方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TEHSEEN ZIA ET AL: "Residual Recurrent Highway Networks for Learning Deep Sequence Prediction Models", 《J GRID COMPUTING》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111223493A (zh) * 2020-01-08 2020-06-02 北京声加科技有限公司 语音信号降噪处理方法、传声器和电子设备
CN117851909A (zh) * 2024-03-05 2024-04-09 深圳市雅乐实业有限公司 一种基于跳跃连接的多循环决策意图识别系统及方法

Also Published As

Publication number Publication date
CN113806543B (zh) 2023-05-30

Similar Documents

Publication Publication Date Title
CN111368996B (zh) 可传递自然语言表示的重新训练投影网络
CN108984526B (zh) 一种基于深度学习的文档主题向量抽取方法
CN108170736B (zh) 一种基于循环注意力机制的文档快速扫描定性方法
Xu et al. Investigation on the Chinese text sentiment analysis based on convolutional neural networks in deep learning.
Tito Svenstrup et al. Hash embeddings for efficient word representations
CN108009148B (zh) 基于深度学习的文本情感分类表示方法
CN111125358B (zh) 一种基于超图的文本分类方法
CN112232087B (zh) 一种基于Transformer的多粒度注意力模型的特定方面情感分析方法
CN112732916B (zh) 一种基于bert的多特征融合模糊文本分类系统
CN112364638B (zh) 一种基于社交文本的人格识别方法
CN110297888B (zh) 一种基于前缀树与循环神经网络的领域分类方法
CN107273352B (zh) 一种基于Zolu函数的词嵌入学习模型及训练方法
CN112749274B (zh) 基于注意力机制和干扰词删除的中文文本分类方法
Mukherjee et al. Utilization of oversampling for multiclass sentiment analysis on amazon review dataset
CN111400494B (zh) 一种基于GCN-Attention的情感分析方法
CN111414481A (zh) 基于拼音和bert嵌入的中文语义匹配方法
CN110717330A (zh) 基于深度学习的词句级短文本分类方法
CN113806543A (zh) 一种基于残差跳跃连接的门控循环单元的文本分类方法
CN110516070A (zh) 一种基于文本纠错与神经网络的中文问句分类方法
CN111460157A (zh) 用于多领域文本分类的循环卷积多任务学习方法
CN113987187A (zh) 基于多标签嵌入的舆情文本分类方法、系统、终端及介质
CN114528835A (zh) 基于区间判别的半监督专业术语抽取方法、介质及设备
CN113157919A (zh) 语句文本方面级情感分类方法及系统
CN113204640B (zh) 一种基于注意力机制的文本分类方法
CN111353032B (zh) 面向社区问答的问题分类方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant