一种基于图神经网络的语篇成分识别方法技术

技术编号:34465205 阅读:32 留言:0更新日期:2022-08-10 08:38
本发明专利技术公开了一种基于图神经网络的语篇成分识别方法,目的是提高语篇成分识别的准确率和Macro

【技术实现步骤摘要】
一种基于图神经网络的语篇成分识别方法


[0001]本专利技术涉及语篇成分识别领域,特指一种基于图神经网络的语篇成分识别方 法。

技术介绍

[0002]自然语言处理,简称为NLP(Natural Language Processing),可以分为 两个部分进行理解:“自然语言”和“自然语言处理”。自然语言是一种区别于 计算机语言的语言,这是人类区别于其他生物最本质的特征,因为在所有的生物 当中,只有人类才具有语言能力。自然语言记录着人类发展历程中的信息交流, 一句简单的“你好”,无论是汉语、英语或者其他语言,还是文字或是语音形式, 都属于自然语言的一部分。自然语言处理,通俗来说是一种利用人类交流使用的 自然语言与机器进行交互通讯的技术。通过对自然语言形式输入的数据进行处理, 并使用人类定义的算法进行加工或者运算,来模拟人类对自然语言的理解。本质 上就是对文字,词语,句子,语篇等不同层次的信息进行处理与分析,得到需要 的特征信息并生成有意义的结果。
[0003]自然语言处理是一门融合了计算机科学、数学和语言学于一体的科学,随着 近年来人工智本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于图神经网络的语篇成分识别方法,其特征在于包括以下步骤:第一步:构建语篇成分识别系统,语篇成分识别系统由特征提取模块,位置编码模块,语篇自注意力模块,特征拼接模块构成;特征提取模块与位置编码模块和语篇自注意力模块相连,功能是提取句子特征,它是一个深度前馈神经网络,由表示层、序列编码层和一个图神经网络层构成;特征提取模块将输入的文章中的单词特征信息进行汇总,获得每个句子的特征表示,利用图神经网络对每个句子特征信息进行更新,得到每个句子的特征表示,将每个句子的特征表示发送给位置编码模块和语篇自注意力模块;表示层使用预训练的词向量new_embeddings2.txt作为初始化的单词表示;将每句话中所有的单词表示加和求平均值,并使用tanh激活函数来获得每句话的初始向量表示,初始向量表示称为句子向量,将句子向量发送给序列编码层;序列编码层使用一个单层的模型BiLSTM对从表示层收到的句子向量进行建模,得到建模后的句子向量序列,将句子向量序列发送给图神经网络层;序列编码层的BiLSTM分为两个并行的分支结构,分别为正向模型和逆向模型和逆向模型接收句子向量的正序输入,输出更新后的正序句子向量输出更新后的正序句子向量接收句子向量的逆序输入,输出更新后的逆序句子向量将和进行拼接,使得句子向量的维度大小变为之前的两倍,得到更新后的句子向量序列,将更新后的句子向量序列输入到图神经网络层;图神经网络层使用图神经网络将从序列编码层收到的句子向量序列作为节点的初始特征向量,对一篇文章中的所有句子构建全连接图或者局部连通图,节点是一篇文章中的一句话,局部连通图指以每个句子为中心位置,分别朝前和朝后选择与之相邻的M个句子进行连接,每对节点之间的连接边的权重通过两个节点的初始特征向量的相似度来确定;通过每个节点与自己相连节点进行特征信息的交互与传播,获得每个句子的特征向量表示即句子特征向量,将句子特征向量发送给位置编码模块和语篇自注意力模块;位置编码模块是一个循环神经网络,与特征提取模块、语篇自注意力模块和特征拼接模块相连,从特征提取模块接收句子特征向量,为每个句子特征向量添加维度为16的全局相对位置信息,段落相对位置信息和局部相对位置信息;然后通过一层BiLSTM对融入了位置信息的句子特征向量重新进行建模,获得添加了位置信息的句子特征向量,将添加了位置信息的句子特征向量分别发送给语篇自注意力模块和特征拼接模块;语篇自注意力模块是一个前向神经网络,与特征提取模块、位置编码模块、特征拼接模块相连,从特征提取模块接收未添加位置信息的句子特征向量,从位置编码模块接收添加了位置信息的句子特征向量,对这两种特征向量进行相同的处理;语篇自注意力模块由一层句子间的自注意力层和一层自适应池化层构成;自注意力层通过将不同位置的句子特征信息联合起来建模,得到每个句子的注意力向量,注意力向量越大代表句子在文章中的重要性越高;自适应池化层对从自注意力层接收的句子注意力向量进行处理,统一向量维度大小;对句子注意力向量分别提取输出维度为1,2,4,8的向量,将这些向量拼接成维度为15的语篇特征向量;将输入中含位置信息的句子特征向量得到的结果称为添加了位置信息的语篇特征向量,输入中不含位置信息的句子特征向量得到的结果称为未添加位置信息的语篇特征向量,将这两种语篇特征向量发送给特征拼接模块;
特征拼接模块是一个简单的前向网络,与位置编码模块、语篇自注意力模块相连,从位置编码模块接收添加了位置信息的句子特征向量,从语篇自注意力模块接收添加了位置信息的语篇特征向量和未添加位置信息的语篇特征向量,将这三种特征向量进行拼接,得到最终的特征向量;接着通过多层感知机将最终特征向量的维度降低到议论文句子的类别个数大小7,然后通过softmax函数将输出的数值限制在[0,1]之间,将数值最大的所属类别作为当前句子的预测类别;特征提取模块中的深度前馈神经网络,位置编码模块中的循环神经网络,语篇自注意力模块中的前向神经网络,特征拼接模块中的简单前向网络一起构成语篇成分识别模型,是语篇成分识别系统中的网络结构,该网络结构统称为discource_block;第二步:准备中文形式的议论文数据集,共1230篇中文议论文文章,总计33000个句子,按照8:1:1的比例分为训练集T、验证集D与测试集S三部分;对于议论文数据集中的句子类别主要分为以下七类:导言、主题、主要观点、证据、阐述、结论和其他;第三步:使用随机梯度下降方法对语篇成分识别系统的网络结构进行训练,得到特征提取模块,位置编码模块、语篇自注意力模块和特征拼接模块中的网络的最佳权重参数,方法是:3.1初始化权重参数,将discource_block中的权重参数集合将discource_block中的权重参数集合中所有元素值初始化为随机数;表示discource_block中特征提取模块包含的网络结构的权重参数,表示discource_block中位置编码模块包含的网络结构的权重参数,表示discource_block中语篇自注意力模块包含的网络结构的权重参数,表示discource_block中特征拼接模块包含的网络结构的权重参数;3.2设置网络训练参数,设定学习率learning_rate为0.2,批处理尺寸batch_size为正整数,隐藏层维度hidden_dim为128,句子维度sent_dim为128,训练迭代阈值数K为正整数,随机失活dropout为0.1;3.3初始化训练迭代参数为epoch=1,初始化批次迭代参数num_batch=1,定义训练集T中的文章数目为num
T
,最大批次大小小小表示对num
T
/batch_size向上取整,初始化文章迭代参数essay=1,初始化误差值无下降的累计迭代数num
no

increase
=0,初始化第0轮训练的误差值Loss
pre
=0;3.4训练语篇成分识别系统,方法是将应用当前discource_block权重参数的语篇成分识别系统进行语篇成分识别得到的句子类别与实际类别之间的差距作为loss值,不断最小化loss值并更新discource_block的权重参数,直到满足迭代阈值数K,或者出现训练终止条件,终止训练;每次训练的一个迭代结束后,使用验证集数据对当前discource_block权重参数下语篇成分识别系统进行测试,保存在验证集上效果优异的discource_block的参数权重;具体方法如下:3.4.1特征提取模块的表示层从训练集T中取出第num_batch批共batch_size数量的文章;3.4.2记第num_batch批文章中第essay篇文章为E;3.4.3特征提取模块采用深度网络句子特征提取方法对E进行句子级别的特征提取:表
示层对E进行句子向量的初始化表示,得到向量形式的数据s
n
表示E中初始化后的第n个句子向量,N
s
是E中的句子总数,1≤n≤N
s
;表示层通过空白的句子对进行补齐,得到s
m
为补齐后的文章E中的第m个句子,1≤m≤N
max
,N
max
为第num_batch个batch_size中最长文章的句子个数,将发送给序列编码层;序列编码层的BiLSTM对进行句子向量之间的初步建模,得到建模后的句子向量序列得到建模后的句子向量序列表示第m个句子的向量序列,2*hidden_dim表示句子向量的维度,将建模后的句子向量序列发送给图神经网络层;图神经网络层将接收的建模后的句子的向量序列作为节点的初始特征向量,为文本数据中的所有句子构建全连接图或者局部连通图,节点之间连接边的权重通过两个节点的初始特征向量的相似度来确定;通过图神经网络中每个节点与邻居节点之间特征信息的交互与传播,得到N
max
个句子的特征向量的表示其中表示第m个句子的特征向量;将发送到位置编码模块和语篇自注意力模块;3.4.4位置编码模块采用融合句子位置信息方法对特征提取模块得到的句子特征向量添加每个句子的位置信息并融合,方法是:3.4.4.1位置编码模块对N
max
个句子添加位置信息,得到文章E的N
max
句话的句子特征表示示为第m句话与位置信息相加后的特征表示;3.4.4.2位置编码模块通过一层BiLSTM层对句子特征表示再次编码,将N
max
个句子的位置信息彻底融入到N
max
个句子特征向量之中,得到的添加了位置信息的N
max
个句子特征向量,表示为表示为表示文章E中第m句融合了位置信息特征的句子特征向量,将添加了位置信息的N
max
个句子特征向量分别发送给语篇自注意力模块和特征拼接模块;3.4.5语篇自注意力模块从特征提取模块接收未添加位置信息的句子特征向量从位置编码模块接收添加并融合了句子位置信息的句子特征向量对这两种向量分别进行特征传递与交互:3.4.5.1语篇自注意力模块采用注意力加池化语篇特征提取方法对进行特征传递与交互,方法是:3.4.5.1.1自注意力层将未添加位置信息的句子特征向量中不同位置的句子特征信息联合起来,捕获句子之间的关联性,使用作为注意力向量,其中Q是查询向量,
K是键向量,K=Q;d
k
是输入向量的维度,即2*hidden_dim;tanh是激活函数,注意力向量a
s
越大,表示该句子在文章中的重要性越高;将注意力向量a
s
表示为为表示文章E中第m句话的注意力向量,注意力向量的维度也是N
max
,将注意力向量a
s
发送给自适应池化层;3.4.5.1.2自适应池化层从自注意力层接收注意力向量a
s
,对a
s
进行自适应池化以提取不同尺度的语篇特征,分别提取出维度为1,2,4,8的特征向量;这样产生的特征向量看作是一个句子与其文章E不同区域之间关系的描述,将结果标记为将结果标记为其中四元组表示文章E中由第m句话提取出的维度为1,2,4,8的特征向量;3.4.5.1.3自适应池化层将3.4.5.1.3自适应池化层将分别进行拼接,得到输出维度为15的未添加位置信息的语篇特征向量得到输出维度为15的未添加位置信息的语篇特征向量其中其中表示文章E中第m句话的未添加位置信息的语篇特征向量,表示文章E中第m句话的未添加位置信息的语篇特征向量,即将四元组在向量维度上进行拼接,将未添加位置信息的语篇特征向量发送给特征拼接模块;3.4.5.2语篇自注意力模块采用3.4.5.1所述的注意力加池化语篇特征提取方法对添加并融合了句子位置信息的句子特征向量进行特征传递与交互,得到含位置信息的语篇特征向量得到含位置信息的语篇特征向量其中表示文章E中第m句话的添加了位置信息的语篇特征向量,将含位置信息的语篇特征向量发送给特征拼接模块;3.4.6特征拼接模块采用特征拼接预测方法对特征向量进行拼接,并进行语篇成分类型的识别,方法是:3.4.6.1特征拼接模块从位置编码模块接收添加了位置信息的句子特征向量从语篇自注意力模块接收不含位置信息的语篇特征向量息的语篇特征向量和含位置信息的语篇特征向量位置信息的语篇特征向量将这三种特征向量进行拼接,得到最终特征向量,其中
表示文章E中的第m句话的最终特征向量表示;隐藏层维度为2*hidden_dim+2*15;3.4.6.2特征拼接模块将最终特征向量通过一个多层感知机MLP把输出的维度降低到议论文句子的类别个数大小7;3.4.6.3特征拼接模块使用softmax函数将输出的数值大小限制在[0,1]之间,将softmax函数的输出结果标记为softmax函数的输出结果标记为其中表示文章E的第m句话属于议论文第ii个类别的概率得分,1≤ii≤7;选择第m个七元组中最大数值的所属类别作为文章E中第m个句子的预测类别,从而得到文章E中N
max
个句子类型的预测结果,记为q
m
表示文章E中第m句话的类型预测结果;3.4.7计算文章E中N
max
个句子的误差值令文章E中第m句话的损失值其中C是议论文句子的类别数,C=7,pi是句子实际类别,qi是预测的句子类别;则预测的句子类别;则表示文章E中N
max
个句子的误差值,简称为文章E的误差值;3.4.8使用随机梯度下降优化算法对最小化,然后以反向传播的方式更新网络权重参数;3.4.9令essay=essay+1,若essay≤batch_size,转3.4.2继续第essay篇文章的训练,若essay>batch_size,转3.4.10;3.4.10汇总batch_size篇文章的误差值,即即得到第num_batch个批次下batch_size篇文章的误差值误差值误差值3.4.11令num_batch=num_batch+1,若num_batch≤max_batch,重新赋值essay=1,转3.4.1继续第num_batch个批次文章的训练,若num_batch>max_batch,转3.4.12;3.4.12汇总当前epoch下各个批次损失值,求和之后取平均值得到该epoch的误差值求和之后取平均值得到该epoch的误差值同时记录上一轮epoch的误差值为Loss
pre
,如果Loss
cur
>Loss
pre
,转3.4.13,如果Loss
cur
≤Loss
pre
,直接转3.4.14;3.4.13令num
no

increase
=num
no

increase
+1,如果(num
no

increase
%10)=0,则令learning_rate=learning_rate
×
0.95,转3.4.14;3.4.14令epoch=epoch+1;如果epoch>迭代阈值数K或者满足训练终止条件即learning_rate<0.0001或者Loss
cur
<0.5,则语篇成分识别系统的网络结构discource_block训练结束,转第四步;若epoch≤K,且learning_rate≥0.0001,而且Loss
cur
≥0.5,重新赋值essay=1,num_batch=1,转3.4.15;3.4.15对当前训练中的discource_block的网络结构权重参数进行语篇成分识别效果
的验证,若句子类型预测结果与实际类型之间的准确率Acc>0.6,则保存当前训练中的discource_block的权重参数,转3.4.1继续第epoch个迭代的训练;若Acc≤0.6,则不保存当前迭代下的discource_block的权重参数,转3.4.1继续第epoch个迭代的训练;第四步:将经过训练并保存的discource_block的权重参数加载到语篇成分识别系统discource_block的网络结构中,得到训练后的语篇成分识别系统;第五步,训练后的语篇成分识别系统对用户输入的文章进行预处理,并进行语篇成分识别,方法是:...

【专利技术属性】
技术研发人员:黄震王思杰郭敏于修彬郭振梁苏鑫鑫陈中午罗军窦勇
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1