Re5:读论文 TWAG: A Topic-guided Wikipedia Abstract Generator

简介: Re5:读论文 TWAG: A Topic-guided Wikipedia Abstract Generator

1. 模型构造思路


本文的研究任务是维基百科摘要生成(Wikipedia abstract generation),从网上海量文本信息中生成维基百科摘要。

本文将维基百科摘要视为对一个实体(entity)的描述,可以分解为不同的主题(topic)(如animal类实体的描述,可以分解为distribution、taxonomy、description等topic。每个topic对应多个维基百科内容中的小标题(section label)。具体的topic划分和section label与topic的对应关系见后文4.2部分对数据集的描述)。


以Arctic Fox的维基百科举例:

image.png

图中左半部分是Arctic Fox的维基百科摘要,包含一个动物的3个正交的主题(颜色对应):Description, Taxonomy and Distribution。

右半部分是Arctic Fox是维基百科section label,分别与topic对应(颜色)。


本文所用的topic是根据实体的domain(Wikipedia categories)得到的。


本文提出的是两阶段的模型TWAG(two-stage Topic-guided Wikipedia Abstract Generation model),使用主题信息指导摘要生成。

第一步topic detection:识别输入原文中每一个自然段属于哪一个主题(这个分类器(classifier-based topic detector)通过已有的Wikipedia文章生成)

第二步:sentence-wise生成摘要:预测摘要每一句的主题分布(topic distribution),以得到对应的topic-aware representation,用Pointer-Generator network1从中生成摘要句子。


本文提出的下一步研究方向是在topic-aware abstract generator模块应用预训练模型,并将topic-aware model应用到其他富含主题信息的领域(如体育比赛报道)。


2. 问题定义与模型介绍


2.1 通用的Wikipedia abstract generation

image.png

2.2 基于topic的Wikipedia abstract generation

image.png


2.3 TWAG模型

模型示意图:

image.png

图中示例的domain有3个主题。

左边部分是topic detector,判断每个输入自然段所属的主题。

右边部分是 topic-aware abstract generator,基于输入自然段(根据检测出的section进行分组为topic-specific text group (TTG) G k 和对应主题逐句生成摘要:先预测该句的topic distribution,将其与全局hidden state融合,得到topic-aware representation,用copy-based decoder生成该句话。


(其实我觉得这个图画得还不够清晰,尤其是sentence decoder部分,感觉画得有些含混。文本说明部分我也有些半看不懂的。感觉可能需要看一下原版PGN和TWAG代码才能彻底搞懂)


2.3.1 topic detector

image.png


2.3.2 Topic-aware Abstract Generation

2.3.2.1 Topic Encoder

image.png


2.3.2.2 Topic Predictor

预测摘要句的topic distribution,生成topic-aware sentence representation。

image.png

image.png




2.3.2.3 Sentence Decoder

image.png


2.3.3 训练

topic detection和abstract generation的模块是分开训练的。


2.3.3.1 Topic Detector Training

数据集构建见本博文4.2数据集部分介绍。

本文使用negative loglikelihood损失函数。


2.3.3.2 Abstract Generator Training

image.png


3. 模型原理


  1. 为什么不用基于图的表示学习方法做抽取式摘要:因为从各种来源收集到的输入文档往往有噪音,并缺乏内在联系3,因此难以构建relation graph。(introduction)
  2. 用topic生成摘要的好处:减少冗余,使内容更完整。(introduction)
  3. 本文的任务是生成紧凑的摘要,因此需要对topic进行fusion、理解topics之间的关联与差异(topic distribution),而非使用独立的topics(见本博文2.3.2.1部分对软主题的介绍)。(Wikiasp: A dataset for multi-domain aspect-based summarization. 则是反例。该文献使用aspect作为术语)(Wikipedia-related Text Generation)
  4. 识别文本中的主题信息“模仿人类识别实体的方法”(conclusion)


4. 实验


4.1 baseline

  1. TF-S2S4:用Transformer decoder,用卷积层压缩自注意力机制里的键值对。
  2. CV-S2D+T5:用一个卷积encoder和2层hierarchical decoder,用LDA建模主题信息。
  3. HierSumm6:用注意力机制建模自然段间关系,用图加强文档的表示学习。
  4. BART7:预训练的seq2seq模型。


4.2 数据集

本文使用的数据集是WikiCatSum5。


该数据集是WikiSum的子数据集。含有Wikipedia中的3个域:Company, Film and Animal

每个域的数据集划分比例都是train (90%), validation (5%) and test (5%)

删除了文章中的超链接和图像。用spaCy包划分自然段。经下述处理后最终得到的数据集划分比例是8:1:1。

image.png

image.png

(不同颜色代表不同n t 时选择的label)


此外,每个域还专门构建了一个NOISE主题,指没用的部分(如scripts或广告),这一部分是通过正则表达式提取的,如含有“cookie”,“href”或看起来像reference。


经处理后得到的最终的数据集信息:

image.png


用于摘要生成的数据则是非维基百科数据,以防数据泄露问题。


4.3 实验设置

代码使用PyTorch和transformers库,设备是NVIDIA GeForce RTX 2080。

topic detection阶段使用的预训练模型是transformers库的albert-base-v2,保持原参数,以3e-5为学习率训练了4个epoch。

abstract generation阶段用单层BiGRU将TTGs编码为512维的hidden states。输入文档保存开头400个tokens,转换为300维的GloVe8词向量。词表长度为50000,OOV token用其邻近10个tokens的平均嵌入表示。这个模块训练了10个epoch,第一个epoch的学习率是1e-4,其他的是1e-5。

在评估结果前,删除了所有与其他句重复超过50%的句子以减少冗余9。

需要beam search的模型,beam size都设置为5。


(Appendix B)使用BART-base,因为BART-large效果差(生成文本出现重复,损失函数下降慢),本文怀疑是因为过拟合。


4.4 实验结果

4.4.1 ROUGE10

本文所使用的评估指标是ROUGE F1 指标(原文给出的原因:因为没有限制摘要生成长度,所以用这个combines precision and recall to eliminate the tendency of favoring long or short results的指标)。

image.png

TF-S2S和HierSumm使用原文数据集的子集来训练得到的结果小于原文结果,本文作者认为可能因为数据不足,这也证明了TWAG模型的data-efficient。


案例分析:

image.png


4.4.2 human evaluation

此外参考10,本文构建了含有2部分内容的human evaluation:


4.4.2.1 QA

question-answering (QA),架构来自11,检查摘要中的factoid信息,根据不同的真实摘要,每个样例创造2-5个问题,问题示例:

image.png

(全部的评估集合在论文附带的GitHub项目中,待补)


从每个域抽取了15个样例,共45个来做human evaluation。

选了3名参与人员以自动生成的摘要作为背景知识来回答问题。能回答问题越多的摘要越好。

答案量化打分:正确答案——1,部分正确答案——0.5,错误答案——0.1,无法回答——0。

(对0.1的解释:Notice that we give a score of 0.1 even if the participants answer the question incorrectly, because a wrong answer indicates the summary covers a certain topic and is superior to missing information.)


结果:

image.png

(TF-S2S和HierSumm在域Film和Animal上表现很差可能是因为在小数据集上欠拟合)


4.4.4.2 linguistic quality

让参与人员从3个角度来阅读生成摘要并在1-5分间打分(分越高说明质量越高):


  • Completeness (does the summary contain sufficient information?)
  • Fluency (is the summary fluent and grammatical?)
  • Succinctness12 (does the summary avoid redundant sentences?)

结果:

image.png

4.5 Ablation Study

4.5.1 Learning Rate of Topic Detector.

1e-7准确率高,但最终rouge值低,因此本文最终选择了3e-5。本文怀疑是因为学习率太低导致了过拟合。


4.5.2 Soft or Hard Topic.

image.png


4.5.3 Number of Section Labels.

image.png

section labels的频率符合长尾分布。

image.png


n t = =20 得到的最终实验结果最好。


5. 代码实现和复现


5.1 论文官方实现

具体内容持续更新。

大略来说,步骤是分类(topic detection)→生成(abstract generation),可以解耦也可以端到端地运行。(我看了一下,这个端到端说的好像是代码一步把分类和生成两步都做完,本质上还是解耦的。但是我还没有仔细看,具体的待补)


5.1.1 分类


5.1.2 生成

TWAG/src/c_generate_soft/model.py:

BiGRUEncoder:论文中的topic encoder,实现了一个BiGRU模型。


image.png


5.2 我自己写的复现

没写,待补。


相关文章
|
1月前
|
机器学习/深度学习 人工智能 编解码
论文精度笔记(一):《ZERO-SHOT DETECTION WITH TRANSFERABLE OBJECT PROPOSAL MECHANISM》
本论文提出了一种零样本检测方法,通过引入可转移的对象候选机制来关联类别间的共现关系,并使用所有类的置信度分布进行对象置信度预测,以提高对未见类别物体的检测性能。
32 3
论文精度笔记(一):《ZERO-SHOT DETECTION WITH TRANSFERABLE OBJECT PROPOSAL MECHANISM》
|
3月前
|
机器学习/深度学习 算法
【文献学习】Channel Estimation Method Based on Transformer in High Dynamic Environment
一种基于CNN和Transformer的信道估计方法,用于在高度动态环境中跟踪信道变化特征,并通过实验结果展示了其相比传统方法的性能提升。
57 0
|
机器学习/深度学习 人工智能 自然语言处理
OneEE: A One-Stage Framework for Fast Overlapping and Nested Event Extraction 论文解读
事件抽取(EE)是信息抽取的基本任务,旨在从非结构化文本中抽取结构化事件信息。大多数先前的工作集中于抽取平面事件,而忽略了重叠或嵌套的事件。
99 0
|
算法
Single TPR论文解读
Single TPR是2015年提出来的,是基于TPR的进一步改进,TPR论文解读可以参考Topical PageRank(TPR)论文解读_Trouble…的博客-CSDN博客。
96 0
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(10)
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(10)
104 0
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(2)
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(2)
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(1)
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(1)
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(7)
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(7)
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(3)
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(3)
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(4)
带你读《2022技术人的百宝黑皮书》——User-Aware Multi-Interest Learning for Candidate Matching in Recommenders(4)