这是我参与2022首次更文挑战的第22天,活动详情查看:2022首次更文挑战
文章来源:[1911.03892] INSET: Sentence Infilling with INter-SEntential Transformer (arxiv.org)
读这个文章主要是为了我写论文的素材,我觉得既不属于精读也不属于粗读,可能对一些想要精读文章的并没有什么参考价值。
摘要
缺失句子生成在自然语言处理中具有广泛的应用,比如文章自动生成和会议记录扩充等。这样的任务要求模型句法语义都能连接上下文的内容。解决句子填充任务需要自然语言理解、篇章级规划和自然语言生成等自然语言处理技术。
文章就是将三个问题解耦,本文提出一个框架,利用大规模预训练模型分别解决这三个方面。
实验结果证明了所提出的模型在学习句子表征生成的有效性,并进一步生成链接上下文的缺失句子。
introduction
最近在一个句子或更长的文本中生成一段缺失标记引起了很多研究关注。这里我们研究一个相关的但是有点不同的句子填充任务,具体来说如图一。
从长文本中删除句子,对其进行缺失片段生成,使其能连贯上下文。
- 基于上下文生成
- 基于上下文和辅助信息(比如关键字、知识图谱或者文本片段)
图1:在文本之间生成语句使其语义句法都能平滑过渡。图例是本文模型在TripAdvisor数据集上的表现。彩色文字是辅助信息关键字。即上文提到的第二种生成方法,基于上下文和辅助信息。
从tokens填充引入新任务句子填充。
长格式文本填充任务存在许多挑战。文本生成通常是一个一对多的问题,其输出可能是多种多样的。由于需不要生成语义和句法都能平滑连接独立文本片段的内容,因此这项任务需要广泛的理解、规划和生成技术。
BERT (Devlin et al., 2019) 和 GPT-2 (Radford et al., 2019) 等大规模预训练语言模型显着增强了理解和生成模型。
然而,如何将它们进行整体整合,并通过高级语义规划来分析和建立长期依赖结构仍然是一个挑战和探索,由于语义恰当性往往比句法恰当性更微妙,自回归语言模型可以很好地表征这一特征。
这方面的工作很少:
- 依次生成缺失部分文本,从mask标记开始直到空白结尾标记为止。可以生成任意长度文本(arXiv:1901.00158)
- 存在问题:只关注词汇的正确性,无法保证全局语义的正确性
- MASS是预测文本中缺失的span而获得句子表征( MASS: Masked sequence to sequence pre-training for language generation. )
- 存在问题:需要指定预测长度
- TIGS: An inference algorithm for text infilling with gradient search.
- SpanBERT: Improving pre-training by representing and predicting spans.
- 二者与MASS的问题相同,都需要指定预测长度
提出疑问,这里写这几个真的合适吗。我感觉这几个更接近与完形填空那种感觉。
本文提出INSERT:
- 基于bert的encoder,将文本映射到语义空间。
- 句子级规划期,推断缺失信息,使前后文语意连贯。
- 基于GPT的生成器,将语义空间应社会文本域。
是一个分层文本生成。
优势:
- 提出了超越文本填充的句子填充任务,是句子级别的填充
- 将模型进行解耦,缩小了单个模型的任务范围,并且可以使用额外的无监督数据单个检查和改进每个组件
- 专注于语义衔接的连贯性
- 允许生成任意长度的内容
- 计算需求小
前边拉踩半天tokens生成,引出自己的句子生成。计算需求量小的理由我不太理解。
相关工作
自然语言生成
神经文本生成领域任务包括机器翻译、文本摘要和对话生成 。大多数以前的方法都使用编码器解码器架构进行序列到序列学习。为了提高生成文本的质量,还应用了强化学习、对抗性学习和逆强化学习等技术。
近期工作表明:
- 预训练语言模型通过可歉意的语境化词向量和模型,在自然语言生成和理解中发挥重要作用。
- 大型transformer结构,例如GPT-2, Megatron1 , T5 无需为也定语言进行benchmark训练就可以获得较好的结果。
- arXiv:1909.05858.提出了一个条件生成模型,该模型经过训练,能够对控制样式、内容和任务特定行为的控制代码进行条件化。 (CTRL - A Conditional Transformer Language Model for Controllable Generation.)本文是直接使用bert,并对其进行fine-tune。
Context-aware Text Generation
之前一些考虑上下文信息的文本生成相关的工作:
- 将前文视作语境
- 将历史对话视为背景信息
- 根据前几句对话预测之后的句子
本文特色在于任务受到上下文的约束,不止局限于前文内容,更要与后文内容连贯。需要对文章背景有更好的理解。
- 根据主题短语从情绪得分中生成长评论
- 文本填充:利用缺失部分周围的信息来填充句子
- 迭代推理算法
- 屏蔽随机的连续span,训练语言模型来填充mask掉的span。
本文是直接使用bert和GPT2来完成句子填充。
讲道理我感觉这一部分写的非常一般,第一部分说前人工作只考虑上文,我们考虑上下文,这个没啥问题。第二部分凑一些任务,然后说我们使用预训练模型,第三部分也是同样的毛病。如果我不去读前人工作,直观来看会让我感觉前人工作引用的相关度并不大,达不到对比的效果。
分层文本生成
之前已经有人探索了利用高级语义规划的分层文本生成:
- 给定编码对话内容的分层循环encoder-decoder框架
- 提出了一个框架,用于推断使用自监督学习生成响应的语义特征
- 使用多层LSTM或者分层自动编码器学习长文本的分层表示
- 使用自动分层编码器将整个段落编码为一个表示变量,再从中分层生成文本
相比之下,我们的任务更侧重于利用周围的上下文环境生成中间句子。
这段主要是说前人使用什么分层框架,但是我们更侧重于使用周围上下文环境生成句子。结论好突兀,难道不是应该说我们也是分层模型吗。说完之后再说其他的。