Controllable Abstractive Summarization

Controllable Abstractive Summarization

Angela Fan, David Grangier, Michael Auli
Facebook AI Research,Menlo Park, CA

Backgound

Sequence-to-Sequence(encoder-decoder)
Attention mechanism
Pointer Networks
BPE (byte pair encoding)

Seq2Seq

One sequence map to another sequence
1. SMT translation tasks
source language -> target language
2. Dialogue task
context statement -> response statement)

Attention mechanism

Attention models have been widely used in all fields of deep learning
It is easy to encounter attention model in various types of tasks, such as:
image processing
speech recognition
natural language processing
注意力模型最近几年在深度学习各个领域被广泛使用,无论是图像处理、语音识别还是自然语言处理的各种不同类型的任务中
深度学习中的注意力机制从本质上讲和人类的选择性视觉注意力机制类似,
Tom chase Jerry (Tom,0.3)(Chase,0.2) (Jerry,0.5)
核心目标是从众多信息中选择出对当前任务目标更关键的信息。

CopyNet

Copying Mechanism
a dialogue:
A: Hello, I am Jack.
B: Nice to meet you, Jack
CopyNet,提出的机制叫做Copying Mechanism
在对话过程中,会出现“你好啊,我叫Jack”,然后另一方要回答,“很高兴认识你,Jack。”那么Jack,也就是说实体信息等,就是在对话的 input-output 中,被“复制”的。
这个信息是应该“原封不动”地被保留,从 sequence2sequence 的输入端被复制到输出端的。现有的 end2end sequence2sequence 等模型,即使加了 attention 机制,也很难做到这点。
这个问题的难点,主要有两个,一是要判断输入端中哪个/些信息(sub-sequences)是应该被“复制”的,二是要决定在输出端的哪个地方“粘贴”这些信息

Pointer Networks

Pointer networks are a variation of the sequence-to-sequence model with attention.
Instead of translating one sequence into another, they yield a succession of pointers to the elements of the input series.
learn to point & when to point
指针网络是具有注意力机制的序列到序列模型的变体。他们不是将一个序列翻译成另一个序列,而是产生一系列指向输入序列元素的指针
在decode时,输入的长度是变化的(增多),所以的(增多)[target classes是固定的,比如词性标注,target classes的就是pos集的个数,但是Ptr-Net解决的问题是target classes是动态变化] target classes也是变化 因为sequence-to-sequence不能解决这一类问题,所以提出了Ptr-Net

Byte pair encoding

Byte pair encoding is a simple form of data compression
The most common pair of consecutive bytes of data is replaced with a byte that does not occur within that data.
A table of the replacements is required to rebuild the original data
是一种简单的数据压缩形式,最常见的一对连续字节的数据被替换为在该数据中不存在的字节。
重建原始数据需要一个替换表。

Abstractive summarization with sequence-to-sequence models focuses on neural architectures and learning objectives:
Neural architectures
Attention mechanisms
Pointer mechanisms
Coverage modeling
Learning objectives
Replacing maximum likelihood training with reinforcement learning
Both of above
基于seq2seq模型的生成式自动摘要主要关注点是神经结构和学习目标
近年来,自动摘要的模型得益于机器翻译的架构进展
注意力机制能够生成专注于源文档的目标部分。
指针机制,从输入中复制实体非常有用
Coverage modeling提出了内部解码器注意力,解决多句子摘要中句子重复问题
用强化学习来替换最大似然估计,来优化ROUGE
两个损失的组合表现最好,因为单靠强化学习的训练往往是产生不符合语法要求的文本
Variational auto-encoders
Adversarial networks
Style transfer
Controllable image generation
Conditional language modeling
文本生成是一个确定的研究区
变分自动编码器
对抗式网络
风格转换,可控图像生成
有条件约束的语言模型

Purpose

Present a neural summarization model that enables users to control important aspects of the generated summary.
提出一个神经摘要模型,使用户能够控制生成的摘要的偏重的方面。

Model

1.Convolutional Sequence-to-Sequence

Builds upon the convolutional encoder-decoder model
Encoder and decoder start with a word embedding layer followed by alternating convolutions and non-linear GLU
Decoder is connected to the encoder through an attention module after each GLU
Use multi-hop attention, such that the attention is added at each layer of the decoder.
编码器和解码器是基于卷积的网络,卷积网络相比RNN训练更快
开始由一个word embedding 层,然后交替卷积和非线性门控线性单元
注意力会对编码器的输出计算出一个加权和,权重从当前解码器的状态进行预测,
编码器会强调输入文件的哪些部分与生成下一个token最相关
引入了一个多跳注意力,使用复杂的注意模式提高准确性

2.intra-attention

Use intra-attention in the decoder
Alternate between each type of attention at every layer.
Use sub-word tokenization and weight sharing to copy proper nouns and other entities from the input
Use byte pair encoding (BPE) to tokenize the data
使用内部注意力,这是一种与单个序列中不同位置有关的注意力机制,可以计算出序列的表征。
使模型能够在任何时间范围内回溯到之前生成的单词
该机制允许解码器记录跟踪它的进程,并阻止解码器生成重复的信息
为了整合编码器解码器,在每一层交替注意力的类型
使用子词标记化和权重共享从输入中复制专有名词和其他实体,这有助于更好地复制源实体
使用字节对编码(BPE)标记数据,改进模型拷贝

3.Length-Constrained Summarization

(1) Assign the training summaries to a set of discrete buckets
(2) Expand the input vocabulary with special types
(3) At training time, prepend the input of summarizer with the marker
(4) At test time, control the length of the generated text
做摘要的目的就是想让读者在有限的时间里更快获取文件信息,所以控制摘要的长度就能控制读者阅读的时间
首先,分配训练摘要为一组离散桶,每个桶的大小不与其他桶重叠。选择一个范围让桶能装下范围内的文件。
然后,我们扩大输入词汇,这些词汇是一个特殊类型,能表示文件的长度。这使我们能够在离散长度变量下条件生成。
在训练阶段,用标记来表示摘要系统的输入,该标记指出ground truth summary的长度。
在测试阶段,通过预设特定的长度marker token来控制生成的文本长度。
后面实验也证明了,输出的摘要长度通过改变长度标记很容易得到控制,提供ground truth的标记也能提高摘要的质量

4.Entity-Centric Summarization

Anonymize entities by replacing all occurrences of a particular entity within a document by the same token
For training data, also anonymize the corresponding reference summary. Repeated for all entities.
For each (document, summary) pair, associate each entity with a token from the set (@entity0, . . ,@entityN)
After anonymization, an entity should be present in the generated summary by prepending the entity token
读者可能会对文档感兴趣,以了解特定的实体
用相同的标记替换文档中的特定实体的所有事件来匿名化实体
对于每个(document, summary) pair,将每个实体与来自集合(@ entity0,…,@ entityN)的token相关联。
这从一个实体的表面形式中抽象出来。
匿名化之后,通过预先添加实体token,使实体出现在生成的摘要中
这个指示模型将注意力集中在提到标记的实体句子上
At training time, prepend each article with markers
The markers refer to a randomly selected entity from the ground-truth summary
At inference time, specify an entity marker that user wishes the summary to contain
在培训的时候,我们在每篇文章的前面添加了标记,这些标记指向ground truth摘要中随机选择的实体。
在推理时,通过指定了一个我们希望摘要包含的实体标记,这样来训练模型。
实验也说明了,添加特定的用户偏好到输入中,能提高准确性。

5.Source-Specific Summarization

Similar to length and entity control, introduce special marker tokens (@genSource0, … , @genSourceN) to express source desiderata
And the whole process is similar to them.
报纸,杂志,百科全书等都有具体的写作风格指引。读者习惯了他们最喜欢的来源的风格。 因此,我们希望使用户能够为摘要指定首选源样式。

Dataset

CNN/Dailymail dataset
Consists of online news articles along with multi-sentence summaries
包括在线新闻文章以及multi-sentence summaries

Performance metric

ROUGE
ROUGE-1 ROUGE-2 ROUGE-L

Results

Length control
is the most impactful variable, followed by entity
control and source style

你可能感兴趣的:(论文小结)