560 likes | 698 Views
基于深度学习的文本摘要. 金函琪 2019/6/5. 目录. 简介 基于神经网络的抽取式方法 基于神经网络的生成式方法 总结. 简介. 文本摘要 :将 文本 或者 文本集合 转换为包含 关键信息 的 简短文本 。. 抽取式 && 生成式. 抽取式. 从原始文本抽取已有句子形成摘要 实现简单,能保证句子的可读性 内容冗余、句子间连贯性难以保证. 生成式. 生成新的句子 数据集充足的情况下有能力 生成 高质量 的理想 摘要 涉及句子 压缩、重构、融合方法 自然语言理解和生成一直以来是 技术难点. 单文档 && 多文档.
E N D
基于深度学习的文本摘要 金函琪 2019/6/5
目录 • 简介 • 基于神经网络的抽取式方法 • 基于神经网络的生成式方法 • 总结
简介 • 文本摘要:将文本或者文本集合转换为包含关键信息的简短文本。
抽取式 • 从原始文本抽取已有句子形成摘要 • 实现简单,能保证句子的可读性 • 内容冗余、句子间连贯性难以保证
生成式 • 生成新的句子 • 数据集充足的情况下有能力生成 高质量的理想摘要 • 涉及句子压缩、重构、融合方法 • 自然语言理解和生成一直以来是技术难点
单文档&& 多文档 • 单文档摘要基于单个文档提取关键信息 • 多文档摘要是对多篇涉及同一主题的文档集合进行归纳
单语言&& 跨语言 • 单语言摘要只负责提取关键信息 • 跨语言摘要需要进行语言之间的转换
基于神经网络的抽取式方法 这里的句子也可以是一段文本片段, 不只是限定于整个句子 • 序列标注 • 为原文中的每一个句子打一个二分类标签(0或1); • 1代表该句属于摘要; • 0代表该句不属于摘要; • 最终摘要由所有标签为1的句子构成 • 获取句子级标签(伪标签) • 首先选取原文中与标准摘要(Golden)计算ROUGE得分最高的一句话加入候选集合; • 接着继续从原文中进行选择并加入候选集合,保证选出的摘要集合ROUGE得分增加,直至无法满足该条件 • 得到的候选摘要集合对应的句子设为1标签,其余为0标签 一种摘要的评价指标,基于n-gram计算
简单的序列标注问题 典型的抽取式摘要结构,建模了一个序列标注问题 使用伪标签作为target进行训练,测试的时候提取标签为1的句子形成摘要 Output Sentence-level Word-level input Ramesh et al., SummaRuNNer: A Recurrent Neural Network based Sequence Model for Extractive Summarization of Documents, AAAI’17
联合选择和打分 1.设计了一个解码器结构逐步选择句子,每一步选择一个句子,之后将这个句子对应的 sentence level表示作为下一个时间步的输入选择下一个句子 2.相当于已知文章信息和以前抽取过的信息,再进行选择,一定程度避免冗余性 Zhou et al., NeuralDocumentSummarizationbyJointlyLearningtoScoreandSelectSentences, ACL’18
直接优化 ROUGE scores Narayan et al., Ranking Sentences for Extractive Summarization with Reinforcement Learning, NAACL’18
基于预训练的方法 Fine-tune BERT for Extractive Summarization
基于预训练的方法 Fine-tune BERT for Extractive Summarization
基于预训练的方法 为了得到每句话的表示,在每句话前面都添加了[cls], 来得到每句话的特征[T1, T2, ....,] Simple classifier/ Transformer layer(two can best)/ 循环神经网络 Fine-tune BERT for Extractive Summarization
基于神经网络的生成式方法 • 序列到序列(Seq2Seq)模型被广泛的用于生成式摘要任务 Sutskeveret al., Sequence to Sequence Learning with Neural Networks, NIPS’14
基于神经网络的生成式方法 • 引入attention机制改进生成的结果 引入attention机制
Document Summarization with Modified Attention Tan et al., Abstractive Document Summarization with a Graph-Based Attentional Neural Model, ACL’17
Document Summarization with Modified Attention 避免完全依赖于模型自动学习 • 传统注意力机制 • 关注相关的原始句 • 图注意力机制 • 关注相关&重要的原始句 Tan et al., Abstractive Document Summarization with a Graph-Based Attentional Neural Model, ACL’17
Copy&&Coverage机制 See et al., Get To The Point-Summarization with Pointer-Generator Networks, ACL17
Copy&&Coverage机制 • Copy机制 • 在解码的每一步计算拷贝(pointer)和生成(generator)的概率,该机制可以选择从原文中拷贝词语到摘要中,有效的缓解了集外词(OOV)的问题 See et al., Get To The Point-Summarization with Pointer-Generator Networks, ACL17
Copy&&Coverage机制 • Copy机制 • 在解码的每一步计算拷贝(pointer)和生成(generator)的概率,该机制可以选择从原文中拷贝词语到摘要中,有效的缓解了集外词(OOV)的问题 • Coverage机制 • 在解码的每一步考虑之前步的attention权重,结合coverage损失,避免继续考虑已经获得高权重的部分。该机制可以有效缓解生成重复的问题 See et al., Get To The Point-Summarization with Pointer-Generator Networks, ACL17
图神经网络 对原始文档建图 使用GNN、GCN或者GGNN的方式进行节点的更新 进行解码 Fernandes et al., Structured Neural Summarization ICLR19
图神经网络 • 建图 • 节点 • 每个token为一个节点 • 引入了sentence节点 • 对每个multi-token命名实体创建一个新的节点标明entity的类型 • 在这些节点之间连边 • 每个token之间使用next edge相连 • token和所在sentence之间使用in edge相连 • 每个sentence之间使用next edge相连 • 每个entity和对应的类型之间使用in edge相连 • 共指的entity之间使用REF edge相连 • 生成 • 首先使用一个序列编码器(BI-RNN)得到每个节点的sequence-level表示 • 再使用GNN利用上面得到的图得到graph-level的表示 • 使用另一个RNN解码,attend graph-level的表示 Fernandes et al., Structured Neural Summarization ICLR19
基于预训练的方法-MASS 把BERT推广到NLG类型任务, 建模了序列到序列的任务,可 在摘要任务上微调,用于摘要生成 类似于bert的单句话训练任务,训练数据依旧是单句话,但是会随机mask这句话中连续的 k个词,然后把这些词放入decoder模块的相同位置,而encoder中只保留未被mask的词。 Song et al., MASS: Masked Sequence to Sequence Pre-training for Language Generation, ICML’19
基于预训练的方法-UNILM 预训练同时训练双向LM、单向LM和seq2seq LM, 目标函数共享一个Transformer 结构 使用 mask机制解决self-attention中的约束问题 可以处理NLU和NLG类型的各种任务 BERT中的双向LM GPT中的单向LM seq2seq中的LM Unified Language Model Pre-training for Natural Language Understanding and Generation
跨语言摘要生成 • 先摘要后翻译 • 避免翻译更多句子的计算复杂性 • 避免错误翻译带来的句子抽取/生成错误 • 只能是当源语言是高资源的情况下,当源语言中没有摘要语料库可以获得时不可行 • 先翻译后摘要 • 稀缺语种作为源语言时的解决方式 • 构造目标语言的噪声数据集训练摘要模型 A Robust Abstractive System for Cross-Lingual Summarization, NAACL’ 19
无监督摘要生成 Auto-encoder:使生成器的输出最小化重建loss,保证生成的summary可以保留原文的主要意思 GAN:使生成器的输出骗过鉴别器,保证生成器的输出可以具有和真实摘要一样的特点,包括简洁性,流畅性等等 GAN Auto-encoder Wang et al., Learning to Encode Text as Human-Readable Summaries using Generative Adversarial Networks, EMNLP’18
无监督摘要生成 • 生成器 G 和重建器 R 形成了 auto-encoder. • 重建器不直接把生成器的输出分布 G(x) 作为输入(论文中证明这样效果不好),而是将离散的输出序列 作为输入。 • 但是由于离散序列的不可微属性,所以需要强化学习算法来优化模型。 Wang et al., Learning to Encode Text as Human-Readable Summaries using Generative Adversarial Networks, EMNLP’18
无监督摘要生成 • 生成器被看作是一个agent,它基于原文本x的reward是 self-critical sequence training: add a baseline 为了在开始时鼓励探索,引入了另一个 baseline b, 它会在之后逐渐减少到0. Wang et al., Learning to Encode Text as Human-Readable Summaries using Generative Adversarial Networks, EMNLP’18
无监督摘要生成 Auto-encoder:使生成器的输出最小化重建loss,保证生成的summary可以保留原文的主要意思 GAN:使生成器的输出骗过鉴别器,保证生成器的输出可以具有和真实摘要一样的特点,包括简洁性,流畅性等等 Method 1: Wasserstein GAN Method 2: Self-Critic Adversarial REINFORCE GAN Auto-encoder Wang et al., Learning to Encode Text as Human-Readable Summaries using Generative Adversarial Networks, EMNLP’18
多文档摘要生成 • 多篇文章生成一篇摘要 • 多篇文章作为输入 • 提取多篇文章的重要内容 • 避免冗余 • 极少的训练数据 • 解决方案 • 迁移预训练单文档摘要模型 • 无监督摘要生成
多文档摘要生成 • 迁移预训练单文档摘要模型 • 使用DUC多文档数据集(百数量级)微调解码器和文档级编码器 Zhang et al., Towards a Neural Network Approach to Abstractive Multi-Document Summarization , INLG’18
多文档摘要生成 Auto-encoder module summarization module • 无监督摘要生成 • 给多个食品评论做摘要 Chu et al., MeanSum: A Neural Model for Unsupervised Multi-Document Abstractive Summarization, ICML’19
多文档摘要生成 Auto-encoder module summarization module • 无监督摘要生成 • 给多个食品评论做摘要 Chu et al., MeanSum: A Neural Model for Unsupervised Multi-Document Abstractive Summarization, ICML’19
多文档摘要生成 Auto-encoder module summarization module • 无监督摘要生成 • 给多个食品评论做摘要 Chu et al., MeanSum: A Neural Model for Unsupervised Multi-Document Abstractive Summarization, ICML’19
多文档摘要生成 Auto-encoder模块的作用是学习每个评论的向量表示, 并且通过解码回原句子保证生成的向量表示充分保留 原信息。 Chu et al., MeanSum: A Neural Model for Unsupervised Multi-Document Abstractive Summarization, ICML’19
多文档摘要生成 左边的decoder和右边的decoder是共享的,可以使得 右边生成的摘要可以拥有语言的流畅性等特点 Chu et al., MeanSum: A Neural Model for Unsupervised Multi-Document Abstractive Summarization, ICML’19
多文档摘要生成 Chu et al., MeanSum: A Neural Model for Unsupervised Multi-Document Abstractive Summarization, ICML’19
多文档摘要生成 摘要模块的作用是整合每个输入文档的表示,然后进行解码生成对应的多文档摘要 为了保证生成的摘要和原始输入的语义相似性,又对输出进行了编码,和每个输入 文档的表示计算相似度,通过最大化相似度来保证语义相似性。 Chu et al., MeanSum: A Neural Model for Unsupervised Multi-Document Abstractive Summarization, ICML’19
多文档摘要生成 共享 Chu et al., MeanSum: A Neural Model for Unsupervised Multi-Document Abstractive Summarization, ICML’19
多文档摘要生成 Chu et al., MeanSum: A Neural Model for Unsupervised Multi-Document Abstractive Summarization, ICML’19
多文档摘要生成 Chu et al., MeanSum: A Neural Model for Unsupervised Multi-Document Abstractive Summarization, ICML’19
总结 现在摘要模型/任务的大体方向 • Seq2seq模型广泛应用于摘要生成任务 • 改进编码算法(生成更有“信息”的表示,eg:GCN) • (Attention)指导模型学习(eg:主题敏感的图排序模型) • 改进解码算法(eg:copy/coverage机制) • 任务 • 少监督数据 • 预训练 • 无监督摘要生成(包括多文档摘要) • 生成符合某种限制的文本摘要(长度/情感/风格相关)