概述
《Recent Advances on Neural Headline Generation》阅读笔记
英文标题:Recent Advances on Neural Headline Generation
中文翻译:基于神经网络的标题生成研究进展
原文链接: [http://jcst.ict.ac.cn:8080/jcst/EN/10.1007/s11390-017-1758-3]
简介:这是一篇神经摘要综述
文章目录
- 《Recent Advances on Neural Headline Generation》阅读笔记
- 前言
- 一、introduction
- 二. 神经标题生成模型
- 模型简介
- 2.1 编码器-译码器模型
- 2.1.1 输入表示器:
- 2.1.2 编码器
- 2.1.3 解码器
- 2.1.4 训练策略
- 三. 提升神经网络标题生成的方法
- 四.数据及介绍
- 五.评估方法
- 六. 总结
前言
本文主要是对Neural Headline Generation 的最新研究进展做了综述。同时,详细介绍了神经摘要生成模型中的各个环节,包括输入表示, 编码器, 译码器以及训练策略,并最终对各个环节评选了最优的模型方法。
神经摘要生成模型采用的都是一种 end-to-end encoder-decoder 的框架,end-to-end 的好处在于通过缩减人工预处理和后续处理,尽可能使模型从原始输入到最终输出,给模型更多的可以根据数据进行自动调节的空间,增加模型的整体契合度。
本文篇幅过长,所以我将着重进行模型与技术介绍,而不是细扣公式细节
一、introduction
自动文本摘要的目的:
创建一个连贯、信息丰富和简短的文档摘要的过程。文本摘要需要理解文档的中心主题,然后输出一个压缩摘要,该摘要在长度限制下尽可能多地包含原始文档的关键点。
当前摘要的主要方法:
提取式摘要与生成式摘要
提取式的缺点:
需要从原文选择句子提取,无法生成短语原文句子或者任意长度的摘要
生成式缺点:
虽然可以生成任意长度摘要,但很大程度以来与输入文章的语言结构与语法,这导致容易出现语法错误,导致总结质量降低。
本文工作
在第2节介绍了神经标题生成系统的标准组成结构,包括输入表示方法、编码器和解码器的选项,以及现有的训练策略。 此外,本文还介绍了在不同方面生成神经标题的探索,包括有限的词汇表、长度控制、模型架构等。
第3节详细介绍了广泛使用的英语和中文神经标题生成数据集。
在第4节中,我们对最近的神经网络标题生成系统进行了定量分析,并探讨了不同因素的影响。在第5节中,我们对开发数据集进行手动分析,以获得对神经标题生成系统的更多见解。此外,我们还对不同的系统进行了错误分析,以探索神经标题生成的剩余问题,这有望有利于未来的研究。第6节介绍了标题生成的相关工作。最后,本文的总结详见第7节。
二. 神经标题生成模型
模型简介
输入X=(x1、···、xM)生成一个,xi来自词汇表V,生成一个短标题Y=(y1…yn),长度N<M。
第Yj个字符是根据所有序号小于j的输出y和输入文档X=(x1、···、xM)共同生成的
2.1 编码器-译码器模型
神经标题生成的组成
1)输入表示器,可以展示出输入的词
2)编码器:计算单一向量或表示原始文档的向量序列
3)解码器:一次生成一个目标摘要字
2.1.1 输入表示器:
神经标题生成系统将离散源文章单词投射到连续向量空间中,获得一个个源文章输入词语的embedding:
上述的式子也可以转化为这个式子,将emb换成低维的word embedding,优势是节省空间:
将输入转化为embedding的作用:
可以将语言的特征信息记录,信息包括语音标签,命名实体识别的标签,以及利用额外的嵌入矩阵,将TF与IDF的统计数据前嵌入到向量。
2.1.2 编码器
编码器通用结构:
编码器将输入表示编码到单个向量或一系列向量H中,这也被称为源隐藏状态:
enc就是编码器,将embeedding编码成隐藏状态H,隐藏状态存有当前输入的信息。
bag of words编码器:
作用是对embedding的词进行均匀分布编码,公式如下:
卷积编码器:
利用卷积神经网络对输入文档进行词嵌入,利用TDNN结构进行处理。
采用了TDNN结构
缺点是仍无法补货词语之间的依赖关系。
RNN编码器
RNN根据序列以前的输出计算序列的每个元素的hidden state进行当前元素的计算。因此,RNN可以捕获有关到目前为止所发生的事情的信息,公式如下:
GRU-RNN
为了克服RNN梯度消失的问题,出现了Gru - RNN,许多标题生成的系统都采用GRU-RNN,公式如下
LSTM-RNN网络
主要加入了遗忘门,公式如下:
双向RNN
兼顾上文与下文,通过两个独立的rnn正向方向处理文档
2.1.3 解码器
解码器会逐字将源隐藏状态H生成标题,通用公式如下
yc是yi之前的一个输出,yi会逐字遍历
缺点:无法兼顾历史信息,只能通过前后词语进行预测
RNN解码器
它用递归神经网络进行解码,以更好地捕获序列信息。RNN解码器可以格式化为:
基于attention机制的RNN
这个是将注意力机制引入RNN的解码器,其想法就是按照权值赋给输入的字符,来预测输出,权值是前一个输出sj-1与对应输入隐藏状态hj的相似度。
公式如下
2.1.4 训练策略
神经标题的训练策略:一种最小单位是单词级,一种句子级
最大似然估计(MLE)
通过最大化一组训练数据上生成标题的log函数,来优化神经模型参数D
MLE的缺点
是具有暴露偏差,训练时完全根据训练数据的概率分布进行训练,迁移到测试集时很可能出现两种概率分布不同,参数也有问题。不适用于句子级
最小贝叶斯风险训练(MRT)
采用句子损失函数进行评估,大意是输入句子作为可能的标题集,通过标题集中句子与标签的距离进行评估。
公式如下:
rouge的基本思想就是计算生成摘要与参考摘要的重叠的个数,这与MRT计算二者的向量距离相契合,所以MRT也是最常用性能最好的训练策略。
三. 提升神经网络标题生成的方法
1 限制词汇表大小:
大多数系统将保留一个关于单词频率的固定大小的目标词汇表。频繁的单词将被唯一的标记“UNK”取代,意思是未知单词。虽然标题中只有几个未知的单词,但这种方法会很有效。节省空间。
COPYNET:
它是一种具有复制机制的编码器-解码器体系结构。这种设计背后的动机是为了模拟人类在交流时倾向于重复命名实体或更长的短语,特别是当他们不熟悉那些命名实体或短语的时候。
2 标题长度控制:
神经标题生成的目的是将一篇较长的文章高度概括为一个简短而有能力的标题,其中包括原始文章中最突出的信息。
当前的问题: 标题的长度可以在所需的范围内进行管理。很难保持尽可能多的显著信息,并使摘要长度同时达到预定义的大小。
四.数据及介绍
DUC数据集:
它由500篇新闻文章组成。这两个数据集中的每一篇文章都与四个人类生成的参考标题配对
链接: https://github.com/NightFury13/TextSummarizer/tree/master/DUC-2004.
English Gigaword 【未开源】
英语Gigaword是英语新闻中最大的静态语料库之一,它有以下注释层:句子分割和标记化、树库风格的组成解析树注释、句法依赖树注释、命名实体注释和文档中的协引用链注释。它由来自7家新闻机构的近1000万篇新闻文章组成,总共有超过40亿个单词
链接: https://catalog.ldc.upenn.edu/LDC2012T21.
【LCSTS】微博中文新闻摘要数据集(部分)
微博中文的新闻原文与对应摘要标题
链接: https://www.cnblogs.com/xuehuiping/p/13456630.html.
五.评估方法
rouge: 计算生成的摘要与参考摘要之间重叠的单位数量,代表方法为rouge-N,而rouge-L二者的相似度:
考虑到较短的摘要,召回率较低,所以标题的最小长度一般设置为10,而太长的(超过75字符)也会舍弃,那样将失去摘要精简原文的意义。
六. 总结
之后文章进行了三种控制变量的实验,得出的实验结论如下:
影响headline generation systems性能的几个关键因素。
1)增加语言特征有助于捕捉输入文章的复杂信息。
2)encoder使用BRNN表现更好。
3)attention机制始终能提升系统的性能。
4)copy机制是扩大目标词汇表的有效方法。
5)sentence-level的MRT训练策略明显优于word-level的训练策略。
6)摘要语言不同:中文摘要效果不如英文摘要(中文词语之间没有空格,需要模型进行分词,分词结果将大大影响结果)
PS. 如果各位觉得有用欢迎点赞收藏,评论区与我交流!
另附个人博客:https://dongguanting.github.io/
最后
以上就是风中荔枝为你收集整理的《Recent Advances on Neural Headline Generation》阅读笔记《Recent Advances on Neural Headline Generation》阅读笔记前言一、introduction二. 神经标题生成模型三. 提升神经网络标题生成的方法四.数据及介绍五.评估方法六. 总结的全部内容,希望文章能够帮你解决《Recent Advances on Neural Headline Generation》阅读笔记《Recent Advances on Neural Headline Generation》阅读笔记前言一、introduction二. 神经标题生成模型三. 提升神经网络标题生成的方法四.数据及介绍五.评估方法六. 总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复