[发明专利]一种基于序列到序列模型的中文文本摘要生成方法有效
申请号: | 201911391393.2 | 申请日: | 2019-12-30 |
公开(公告)号: | CN111078866B | 公开(公告)日: | 2023-04-28 |
发明(设计)人: | 尹叶龙;邓辉舫 | 申请(专利权)人: | 华南理工大学 |
主分类号: | G06F16/34 | 分类号: | G06F16/34;G06F16/35;G06N3/0455;G06N3/0442;G06N3/0464;G06N3/047;G06N3/084;G06N3/0985 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 冯炳辉 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 序列 模型 中文 文本 摘要 生成 方法 | ||
1.一种基于序列到序列模型的中文文本摘要生成方法,其特征在于,包括以下步骤:
1)将原始微博数据的原文本和摘要文本分别进行按字切分处理,其中英文单词和数字不做切分,并将其分别填充到固定长度,且使其一一对应作为一个训练样本;从处理后的数据中构造一个字表,利用字表构造字向量,首先确定其维度,然后利用高斯分布随机初始化,并设置为能够训练,对摘要文本按照字表做one-hot向量表示作为标签;
2)将原文本通过字表的字向量转为向量表示,输入基于双向LSTM的预编码器,获取原文本的语义信息,输出网络的隐藏向量;
3)构建序列到序列模型的主要结构编码器,将原文本通过字表的字向量转为向量表示,输入基于CNN和双向LSTM的编码器;其中,编码器的结构首先是一个CNN,会有多个不同大小的卷积核,即滑动窗口卷积;然后将该多个不同卷积核的输出向量拼接起来,输入双向LSTM结构中,这里的双向LSTM的初始隐藏状态使用预编码器最后的隐藏状态作为初始化参数;最后在LSTM网络输出每一步的输出和最后的隐藏状态;
4)构建序列到序列模型的主要结构解码器,其基于单向LSTM,对编码器的隐藏向量进行解码,再对编码器的每一步输出利用注意力机制计算,最后输出每一步摘要字符的概率向量;
将编码器的隐藏状态输入基于单向LSTM的解码器,再利用注意力机制,衡量编码器每一步的输出的重要性,在每一步t,注意力机制的计算公式如下:
式中,vT、Wh、Ws、battn均是要训练的参数,hi是编码器第i步的输出,st是解码器的每一步输出,at是t步的注意力向量,是通过注意力机制生成的上下文向量;
最后将它们通过MLP映射到目标词汇表空间,得到每一步摘要字符的概率向量,具体计算如下:
P(w)=Pvocab(w)
式中,V'、V、b'、b均是要训练的参数,Pvocab是所有字符的概率分布,P(w)是生成字符w的概率;
5)在训练阶段,通过损失函数计算损失并通过深度学习算法优化;
训练阶段将最后输出的概率向量与摘要文本的one-hot向量通过损失函数计算损失,整个训练目标则是尽可能接近真实的文本摘要,若为当前步t的真实摘要单词,则要使得尽量大,即选择生成的概率最大;
对于每一步t的训练目标,使用负对数似然函数作为损失函数,即:
其中,loss是总损失,T是解码的总步数;
同时为了解决关键词重复生成的问题,在损失函数中加了一个惩罚项,对生成过的字降低其重要性,惩罚项及最终损失函数定义如下:
其中,ct是t步的惩罚项,at是t步的注意力向量,i为编码器的每一步,λ为惩罚项的所占比重;
训练方法使用了随机梯度下降法,设置学习率为0.001,训练100代;将训练样本随机打乱,生成批量数据输入,每批量有32个样本,对于每批量数据X,数据放入前面构建的序列到序列模型中,正向计算后通过损失函数计算损失,然后通过对随机梯度下降法反向传播对模型中的参数进行更新,包括字向量,以使得字向量更加适合当前的数据集分布;
6)在测试阶段,利用解码器输出的概率向量选取概率最大的5个字符,最后计算总概率最大的为最终摘要结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911391393.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:粉体高效混合容器及其粉体混合方法
- 下一篇:立卧一体式加工设备及其方法