阅读笔记--《Abstractive Text Summarization using Sequence-to-sequence RNNs and Beyond》

本文主要是对论文中的算法技巧和创新点进行总结介绍,借鉴了一些博主的文章也有一些自己的理解。

一、论文的基准模型

参考 https://blog.csdn.net/dcrmg/article/details/80327069

Sequence-to-Sequence

Seq2Seq是一类End-to-End算法框架,是从序列到序列转换模型框架,一般是通过Encoder-Decoder(编码/解码)模型实现的,是这篇论文的基准模型。Encoder和Decoder部分可以是任意的文字,语音,图像,视频数据,模型可以采用CNN、RNN、LSTM、GRU、BLSTM等等。

Encoder将输入的序列转化成一个固定长度的向量(文中采用双向RNN)
Decoder将之前生成的固定向量再转化成输出序列(文中采用单向RNN)

Attention mechanism

在传统的Encoder-Decoder结构中,准确率很大程度上依赖于Encoder生成的固定向量,即解码时每个时刻用到的context vector都是相同的。当输入序列较长时,模型的性能会变得很差,因为固定长度的向量难以保留全部的必要信息。
而在Attention机制中,每个时刻用到的context vector是跟当前输出有关系的上下文,而不是固定的只用一个(注意力集中在与当前输出有关的元素上,而不是全文都要考虑),可以更具针对性的产生预测结果。
阅读笔记--《Abstractive Text Summarization using Sequence-to-sequence RNNs and Beyond》_第1张图片
Attention机制的实现原理参考台大的李宏毅老师的讲解Conditional Generation by RNN & Attention

二、论文中的创新点和技巧应用

参考 https://blog.csdn.net/imsuhxz/article/details/82589606

Large Vocabulary Trick (LVT)

该技巧源自论文《On Using Very Large Target Vocabulary for Neural Machine Translation》
LVT重点解决由于Decoder词汇表过大造成的softmax层计算瓶颈,降低空间上的开销。

Feature-rich Encoder

个人认为这是论文中一个比较重要的创新点,融入了word feature包括单词的词性标注(part-of-speech),命名实体标签(named-entity tags)以及TF(词频)和IDF(逆文本频率),对Encoder的输入构建了一祖新的具有多个维度的词嵌入(word embedding),这些维度上的意义对于摘要的生成至关重要。
阅读笔记--《Abstractive Text Summarization using Sequence-to-sequence RNNs and Beyond》_第2张图片

Switching Generator/Pointer

文摘中会遇到一些低频但很重要或者OOV的词,这个开关解决了这类问题,开关的模型是一个linear layer中的sigmoid激活函数,根据上下文计算开关打开Generator的概率,然后根据概率改变开关状态,如果是Generator就产生一个单词,如果是Pointer就生成一个指向原文单词位置的指针,然后拷贝到摘要中。

对基准模型实施等级制度(Hierarchical)

这里实际上是对Attention机制的改进,文中分了两个等级:word-levelsentence-level,既考虑了Encoder中每个单词对于Decoder的重要性,又考虑了这个单词所在句子对Decoder的重要性,从而在两个等级层次上重新定义Attention机制中的权重。

你可能感兴趣的:(机器学习)