《A Deep Generative Framework for Paraphrase Generation》论文笔记

本文介绍了一种基于变分自编码器(VAE)的句子复述生成模型,该模型结合了LSTM,能生成语法正确且与原句语义相近的复述句。在Quora和MSCOCO数据集上的实验表明,该模型在BLEU、METEOR和TER等指标上表现出色,优于现有技术。
部署运行你感兴趣的模型镜像

转自:https://ldzhangyx.github.io/2018/09/26/deep-para-generation/

 

这篇文章发表在2018年的AAAI上,继承了VAE在自然语言处理上的应用,将其应用于句子复述上,用于生成相似的句子;同时因为RNN可以作为语言模型使用,语句的语法正确性也有一定提升。
论文地址:https://arxiv.org/pdf/1709.05074.pdf

背景材料

关于变分自编码器在NLP领域的相关介绍,可以看这篇讨论

关于文本生成的背景研究,可以看这篇文章

关于VAE的原理(流形学习)和工程实现,可以看这篇博文。这篇博文详细介绍了VAE的训练过程,Encoder部分(识别模型)和Decoder部分(生成模型)的结构和各个参数的含义。这篇文章同时也提及了reparemetriazation trick的原理。

对于VAE结构的理解和讨论,可以看这篇文章

实现

Keras实现在这里

PyTorch实现在这里

论文笔记

摘要

复述生成是NLP一个重要的课题,本文的模型将VAE和LSTM结合起来生成复述。传统的VAE结合RNN时,生成的句子不符合复述的要求,所以我们将模型的Encoder和Decoder都将原始的句子作为condition进行干涉,这样就达到了复述的效果。这个模型简单、模块化,可以生成不同的多种复述。在量化评测里,本模型明显优于state-of-the-art模型;分析发现模型语法良好;在新数据集上进行了测试,提供了一个baseline。

引入

Introduction这部分,作者介绍了Paraphrase在QA等方面的应用,以及之前的paraphrase方法,认为其多制约于规则,而深度学习的生成模型更加是数据驱动。
区别于VAE的在句子生成上的其他应用,本文的复述模型需要捕获原本句子的特征,所以unconditional的句子生成模型并不适用于此任务。conndition的机制在过去曾被应用到CV领域,然而CV的应用仅仅是用有限的class label作为condition,以及不需要任何的intermediate representation。本文的方法在Encoder和Decoder方面都进行了condition,并且通过LSTM得到intermediate representation。

本文的生成框架对比seq2seq模型,尽管后者可以使用beam search,但不能同时产生多个效果很好的结果,因为beam search的后面结果总是比最顶部的差。在Quora数据集上,本文的模型表现很好。

方法

VAE结构

VAE是一个深度生成式隐变量模型,可以从高维输入学习到丰富、非线性的表示。
编码器方面,相比AE使用了一个确切的编码器函数qΦqΦ,VAE使用了后验分布qΦ(z|x)qΦ(z|x)(或者说识别模型)。这个后验分布通常被假设为高斯分部,所以参数ΦΦ只有均值和方差。VAE使后验分布qΦ(z|x)qΦ(z|x)尽可能地接近先验分布p(z)p(z),通常也被视为高斯分布。
VAE的解码器模型,使用了另一个分布pθ(x|z)pθ(x|z),也就是输入隐变量(z)(z),还原出xx。其参数θθ使用另一个前馈神经网络的输出值。
将观测数据x(i)x(i)的对数似然可以写作:

logpθ(x(i)=KL(qΦ(z|x(i))||pθ(z|x(i)))+L(θ,Φ;x(i)))log⁡pθ(x(i)=KL(qΦ(z|x(i))||pθ(z|x(i)))+L(θ,Φ;x(i)))

将ELBOELBO记为LL,然后通过优化LL,来间接优化似然。
LL可以写作:

L(θ,Φ;x(i)))=−KL(qΦ(z|x(i))||pθ(z))+EqΦ(z|x)[logpθ(x(i)|z)]L(θ,Φ;x(i)))=−KL(qΦ(z|x(i))||pθ(z))+EqΦ(z|x)[log⁡pθ(x(i)|z)]

优化目标变为后面两项。

具体的推导可以参考这个教程

更多地,在建模文字数据的时候,也可以使用KL-term annealing以及dropout of inputs of the decoder等训练技巧,避免一些问题。

模型结构

我们的训练集使用了N对句子,表示为{\mathbf{s}_n^{(o), \mathbf{s}_n^{(p)}}^N_{n=1}{\mathbf{s}_n^{(o), \mathbf{s}_n^{(p)}}^N_{n=1},其中原始句子用oo标注,复述句子用pp标注。句子的向量表示标记为x(o)x(o)与x(p)x(p),

去掉LSTM后,本文的宏观模型如图所示:

区别于传统的VAE,本文构建的模型将xoxo作为了condition加在了Encoder和Decoder之上。

更加细节的结构如图所示:

实际上,本文的模型包括了三个LSTM encoder和一个LSTM decoder,总共有4个LSTM,如上图所示。

在VAE的Encoder方面,两个LSTM encoder被使用,第一个转换原始句子s(o)s(o)到其向量表示xoxo,与复述句子s(p)s(p)送入第二个LSTM。将两个句子都编码进了LSTM之后,使用一个前馈网络输出ΦΦ,也就是向量表示的均值和方差,送入VAE。

在VAE的Decoder方面,VAE输出隐变量zz,第三个LSTM编码原始句子,然后将原始句子的向量表示x(o)x(o)与zz一同送入第四个LSTM,产生复述的句子。

将LSTM抽象化,可以得到一个这样的模型:

这个模型的variational lower-bound,也就是ELBOELBO如下。最小化KL散度的过程等同于最大化ELBOELBO的过程。

L(θ,Φ;x(p),x(o)))=EqΦ(z|x(p),x(o))[logpθ(x(p)|z,x(o))]−KL(qΦ(z|x(p),x(o))||p(z))L(θ,Φ;x(p),x(o)))=EqΦ(z|x(p),x(o))[log⁡pθ(x(p)|z,x(o))]−KL(qΦ(z|x(p),x(o))||p(z))

模型的训练方法与《Generating sentences from a continuous space》中的相同。这篇论文深深地影响了后续论文的思路。

实验

数据集

本文使用了两个数据集进行评测。

MSCOCO数据集

这个数据集,也曾用于评测句子复述的方法,对120K张图片分别有人工标注的五句描述。构建数据集的时候,本文随机忽略一个描述,然后将剩下的描述两两配对组成数据集,同时限制长度在15个单词以内,以减少模型复杂度。

Quora数据集

Quora在2017年发布了一个数据集,包含400K行潜在的重复问题对。借助这个数据集,本文将重复的问题看作是复述的句子进行训练。重复的问题对大约有155K对,使用50K,100K,150K对进行训练,4K对作为测试。

实验设置

实验的主要参数设置参考了《Generating sentences from a continuous space》的实现代码,未对任何数据集做fine-tuning。本文模型中,作者没有使用预先embedding好的词向量,而是自己进行了训练。embedding dimension设置为300,encoder和decoder的dimension是600,隐变量dimension是1100。Encoder只有一层而Decoder有两层。模型使用SGD进行训练,学习率固定为5∗10−55∗10−5,dropout为0.3,batch size为32。

评测

本文使用了BLEU,METEOR和TER进行评测。因为这个过程类似翻译任务,所以借用翻译的指标效果会比较好。评测结果显示优于其他模型。

评测包含了对实验结果的分析,可以直接阅读原文。

结论

本文提出了一个深度生成框架,基于VAE,增加了seq2seq模型,用于生成释义。与传统的VAE和无条件句子生成模型不同,这个模型在输入句子上调节VAE的encoder和decoder侧,因此可以为给定句子生成多个释义。在一般复述生成数据集上评估所提出的方法,并且表明它在很大程度上优于现有技术,没有任何超参数调整。本文还评估了对最近发布的问题复述数据集的方法,并展示了其卓越的性能。生成的释义不仅在语义上与原始输入句子相似,而且还能够捕获与原始句子相关的新概念。

想法

这篇文章是我阅读的第一篇关于VAE文本生成的论文,我将在本周使用PyTorch完成这个模型的复现工作。在学习VAE背后深层原理的过程中,我遇到了一些麻烦,只能说是初步理解。然而工程上VAE是一个相比GAN更加自然地适用于NLP的模型,其噪声与重建的对抗思路让我对文本生成有了全新的认识。

对于VAE结构,我自己还需要做更多的推导、学习,反复阅读笔记最前面的几篇文章,加深理解。如果不能完整理解VAE的构建过程,就无从提起改进。

文章亮点

文章提出了一个基于VAE的模型,但这个模型并不是单纯的文本生成,而是使用了condition,那么这个condition对VAE公式要做一些改动,这个思维的推理过程结合了一定理论成分。
在句子复述的领域中,这个模型生成的句子在可读性(METEOR,人类评估)上有着一定优势,能不能用于语法改错?虽然语法改错上我猜测基于规则的模型会更加精确全面,但一定程度上自动改善语法问题,应该有一定帮助。

想法

这篇文章使用VAE来做句子复述,那么是否可以将condition的概念拓展到另外的领域?

在2016年的那篇VAE做NLP的开创性论文中,提及了这样一个问题,在实际的训练过程中,KL散度可能会出现collapse,导致后验等于先验。由于 RNN-based 的 decoder 有着非常强的 modeling power,直接导致即使依赖很少的 history 信息也可以让 reconstruction errors 降得很低,换句话说,decoder 不依赖 encoder 提供的 z 了,VAE-LSTM模型因此退化成RNN-LM语言模型。

在那篇论文里,使用的缓解办法就是KL cost annealing 和 Word dropout。目前对VAE结构的改进研究也很多,我认为改变VAE结构,进行微调,其效果有可能陷入GAN的一堆改进结构的泥淖里。

如果将VAE引入其他模型会怎么样呢?哈佛NLP组提出过注意力模型的解决方案。我觉得这方面的思考非常有吸引力。

您可能感兴趣的与本文相关的镜像

Qwen3-VL-8B

Qwen3-VL-8B

图文对话
Qwen3-VL

Qwen3-VL是迄今为止 Qwen 系列中最强大的视觉-语言模型,这一代在各个方面都进行了全面升级:更优秀的文本理解和生成、更深入的视觉感知和推理、扩展的上下文长度、增强的空间和视频动态理解能力,以及更强的代理交互能力

### 如何获取论文Deep Generative Models for Synthetic Tabular Data with Theoretical Guarantees》的全文链接或PDF 获取学术论文通常可以通过以下几种途径实现。以下是关于如何查找和下载论文Deep Generative Models for Synthetic Tabular Data with Theoretical Guarantees》的具体方法: #### 1. 官方会议网站 AAAI 2024的官方网站通常是发布会议论文的主要渠道。用户可以访问AAAI 2024的官方网站,并在论文列表中搜索标题为《Deep Generative Models for Synthetic Tabular Data with Theoretical Guarantees》的文章[^1]。大多数情况下,会议网站会提供论文的PDF下载链接。 #### 2. 数字图书馆 一些知名的数字图书馆如ACM Digital Library、IEEE Xplore或SpringerLink可能会收录该论文。通过这些平台的搜索功能,输入论文标题即可找到相关内容。如果论文被收录,通常可以直接下载PDF文件[^2]。 #### 3. 开源学术搜索引擎 使用开源学术搜索引擎如Google Scholar、Semantic Scholar或Microsoft Academic可以帮助定位论文。例如,在Google Scholar中输入论文标题《Deep Generative Models for Synthetic Tabular Data with Theoretical Guarantees》,可能会找到相关的预印本或作者提供的版本[^3]。 #### 4. 作者主页或机构页面 许多研究人员会在个人主页或所属机构的页面上分享他们的研究成果。通过搜索论文作者的名字,可能能够找到论文的PDF版本或其他相关资源[^4]。 #### 5. 预印本平台 预印本平台如arXiv、ResearchGate或PubMed Central也可能是获取论文的一个途径。这些平台允许研究人员在正式出版前分享他们的工作成果。用户可以在这些平台上搜索论文标题以查找相关内容[^5]。 ```python # 示例代码:自动化搜索论文标题的简单脚本 import requests from bs4 import BeautifulSoup def search_paper(title): url = f"https://scholar.google.com/scholar?q={title.replace(' ', '+')}" response = requests.get(url) soup = BeautifulSoup(response.content, 'html.parser') results = soup.find_all('div', class_='gs_r gs_or gs_scl') for result in results: link = result.find('a')['href'] print(f"Found paper: {link}") # 使用示例 search_paper("Deep Generative Models for Synthetic Tabular Data with Theoretical Guarantees") ``` #### 6. 学术机构访问权限 如果上述方法均未成功,用户可以尝试通过所在学术机构的图书馆访问权限获取论文。许多大学和研究机构提供了对主要数字图书馆的订阅,这使得下载付费论文成为可能[^6]。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值