1. 论文研读笔记
1.1 研究动机
这次分析的文章是复旦大学邱锡鹏老师组的最新的工作—Style Transformer: Unpaired Text Style Transfer without
Disentangled Latent Representation。 工作是关于文本风格迁移的,十分有意思。关于风格迁移的工作,其实图像领域非常的多,从最早的油画转简笔画,到后来给照片或者图片转成名画家的风格,大多数都是通过GAN实现的。而对于文本的风格,早些时候有一些关于语音合成的研究,或者以某种风格做文本生成,但一直不算是主流的NLP任务。本文从研究动机的角度来看,更像是对于Transformer的在文本风格迁移这个任务的一个应用。
1.2 研究方法
文本的风格迁移,作者在一开始给了一个清晰的形式化定义,个人很喜欢这种论文风格,数学的语言来描述不是特别熟悉的任务,显得清晰高效。对文本风格转换问题的定义如下: 给定一组数据集
{
D
i
}
i
=
1
K
\{D_i\}_{i=1}^K
{Di}i=1K,它的每一个元素的都是一个数据集
D
i
D_i
Di. 数据集
D
i
D_i
Di中的所有句子,它们有一些共性(比如,它们都是对于某一种商品的正面评价),我们将这种共性定义为风格。风格迁移的目标是,给定一个句子x,和一个指定的风格
s
^
\hat{s}
s^, 对句子进行重写,生成
x
^
\hat{x}
x^,,使其在尽可能保留原始句子信息的基础上,具有新的风格
s
^
\hat{s}
s^。 本质上就是学习一个x到y基于风格s的映射
f
θ
(
x
,
s
)
f_{\theta}(x,s)
fθ(x,s)的参数
θ
\theta
θ
本文的基本思路其实并不复杂,从下图可以看出:
本文的基本思想其实是基于GAN。 风格迁移这个任务缺乏平行语料,那么就采用借助于一个判别网络采用生成的方式。 将风格迁移这个任务进行分解,其实他有三个子任务,一是 语言本身,即语言流利; 二是,语义的保留;三则是风格的迁移。 对于语言本身的流利,采用了原文句子输入到输入的auto encoder-decoder的方式,即对输入编码,再解码,loss 则是生成句子和原来句子的差别的交叉熵。区别于其他的工作,这里采用了transformer, 其本身就是堆叠的自编码器和解码器。
对于子任务2,作者采用的方式是,对于 一个句子x,加上风格
s
^
\hat{s}
s^, 编码后的结果
f
θ
(
x
,
s
^
)
f_\theta(x,\hat{s})
fθ(x,s^) 作为输入,基于原风格s,进行重建,生成x。
对于子任务3,则是借助一个判别网络
d
ϕ
d_{\phi}
dϕ, 它可以判断输入
f
θ
(
x
,
s
^
)
f_\theta(x,\hat{s})
fθ(x,s^)的风格 s。 对于这个判别网络的训练,作者采用了两个loss, 一个是条件判别的loss,这个类似于GAN ,其实就是对于原始输入x ,和基于原风格生成的
f
θ
(
x
,
s
)
f_\theta(x,s)
fθ(x,s)输出正标签,而对于其他风格的生成
f
θ
(
x
,
s
^
)
f_\theta(x,\hat{s})
fθ(x,s^)输出负。 另一种多标签判别的训练,则是输出语句的风格标签,共K+1个(伪生成语句的标签是0)。
算法流程我从原文中截图如下,总体来看会进行两个阶段的学习:
对于判别网络的学习如下:
对于Transformer的学习如下;
1.3 实验结果
本文主要在两个数据集Yelp 和IMDB 进行验证,对于语义流利程度衡量指标是PPL, 对于语义保留,则当做翻译模型,采用BLEU,对于风格控制,则借助第三方的分类器。 在此基础上,作者还对结果进行了匿名的人工review。 从实验结果上看,虽然不是全部指标能STOA,但非STOA的指标也十分接近。 具体结果见如下两个表格
1.4 创新点和个人点评
本文的创新点,首先在于很好的利用了transformer的本质特征,编码解码器,因为其良好的特征提取功能,所以可以很好的用来保留语义(Tranformer网络)以及风格提取(判别网络,其本质也是一个Transformer)。达到这个效果的本质,其实是两个网络的loss不同,导致attention不同。 本文算是对于Transformer的一个极为灵活的应用。
从创新点上看,Transformer和GAN的结合,用来做文本风格水到渠成,但也富有新意。作者很多小的trick,比如对于判断网络对于离散的句子无法很好的传播梯度,而转成输出一个分布。对于判别器两种loss的设计,都很精彩。 文章更让我推崇的是,对于缺乏平行语料的任务,如何进行转变成三个子任务的思路。 总之,本文值得反复研究,是近期所读十分精彩的大作。