Vintage NLP for Work
两个对抗loss和分词本身的 loss 线性相加。训练算法如上,先优化第二个判别器(第6行),再优化第一个判别器(第12行)。
由于分词目前效果已经较好,加入对抗训练虽有提升,但也不是很明显。可以看一下目前神经网络 + CRF 分词的水平。
Vintage NLP for Work
由于分词目前效果已经较好,加入对抗训练虽有提升,但也不是很明显。可以看一下目前神经网络 + CRF 分词的水平。
最后他们挑了一个例子说明在不同标准下的对抗训练结果。和前一篇同样有迁移学习的验证,但其他实验这里就不贴了。
Bayesian GAN
https://arxiv.org/abs/1705.09558
Yunus Saatchi, Andrew Gordon Wilson
本文发表在 arXiv 上,作者比较陌生,但文章值得关注。
众所周知,GAN 非常难训练。
一方面是有 mode collapse 现象,即生成器很保守(大概此时判别器很强势),不论啥时候都吐出靠近分布 mode 的样本,因为这样最保险,不会出错也不会被判别器认出来。作者提到这问题类似以前用 MLE 训练混合高斯模型一样,学出来的每个高斯成分的方差都变得很小,集中在均值附近,这样相当于“只是记住了训练集中的重要样本”,似然值很大、符合优化目标,但是毫无泛化能力。
另一方面人们也希望 GAN 训练更加稳定,为此加入一些干预办法。DCGAN 中加入了 feature matching、label smoothing、mini-batch discrimination 等等技术。最近工作也有替换 JS 散度替换为 f-散度或 Wasserstein 散度的。本文认为 f-GAN, W-GAN 这些工作可以类比为将不同的正则项引入最大似然估计中。
本文则另辟蹊径,对 GAN 的参数使用概率推断。
首先让我们转变一下思路,Generator 和 Discriminator 都是由一组组参数刻画的(用神经网络实现),那么每一组参数就对应着一个具体的 setting,就可以做出一个不同的生成器,就能给出一个独一无二的数据分布。
如果将参数看作概率分布,那么我们就需要在一个不可数无穷的参数空间中用数据寻找出最好的参数。因此生成器就变成了“数据分布的分布”(distribution over distributions of data),现在我们就是在求参数分布的后验。
下面以非监督学习为例。在半监督学习中涉及分类问题,他们将判别器用于分类,把0定为“生成器生成的假数据类”,个人感觉这种处理有点不太合适。
https://arxiv.org/abs/1705.09558
Yunus Saatchi, Andrew Gordon Wilson
本文发表在 arXiv 上,作者比较陌生,但文章值得关注。
众所周知,GAN 非常难训练。
一方面是有 mode collapse 现象,即生成器很保守(大概此时判别器很强势),不论啥时候都吐出靠近分布 mode 的样本,因为这样最保险,不会出错也不会被判别器认出来。作者提到这问题类似以前用 MLE 训练混合高斯模型一样,学出来的每个高斯成分的方差都变得很小,集中在均值附近,这样相当于“只是记住了训练集中的重要样本”,似然值很大、符合优化目标,但是毫无泛化能力。
另一方面人们也希望 GAN 训练更加稳定,为此加入一些干预办法。DCGAN 中加入了 feature matching、label smoothing、mini-batch discrimination 等等技术。最近工作也有替换 JS 散度替换为 f-散度或 Wasserstein 散度的。本文认为 f-GAN, W-GAN 这些工作可以类比为将不同的正则项引入最大似然估计中。
本文则另辟蹊径,对 GAN 的参数使用概率推断。
首先让我们转变一下思路,Generator 和 Discriminator 都是由一组组参数刻画的(用神经网络实现),那么每一组参数就对应着一个具体的 setting,就可以做出一个不同的生成器,就能给出一个独一无二的数据分布。
如果将参数看作概率分布,那么我们就需要在一个不可数无穷的参数空间中用数据寻找出最好的参数。因此生成器就变成了“数据分布的分布”(distribution over distributions of data),现在我们就是在求参数分布的后验。
下面以非监督学习为例。在半监督学习中涉及分类问题,他们将判别器用于分类,把0定为“生成器生成的假数据类”,个人感觉这种处理有点不太合适。
Vintage NLP for Work
Bayesian GAN https://arxiv.org/abs/1705.09558 Yunus Saatchi, Andrew Gordon Wilson 本文发表在 arXiv 上,作者比较陌生,但文章值得关注。 众所周知,GAN 非常难训练。 一方面是有 mode collapse 现象,即生成器很保守(大概此时判别器很强势),不论啥时候都吐出靠近分布 mode 的样本,因为这样最保险,不会出错也不会被判别器认出来。作者提到这问题类似以前用 MLE 训练混合高斯模型一样,学出来的每个高斯…
为了推断后验,我们按上式做采样。(1)式说明,如果判别器对当前样本给出高概率,那么后验就要在当前采样的这个 theta_g 附近有所增加。(2) 式类似。
Vintage NLP for Work
为了推断后验,我们按上式做采样。(1)式说明,如果判别器对当前样本给出高概率,那么后验就要在当前采样的这个 theta_g 附近有所增加。(2) 式类似。
另一方面,他们还按 z 求了边际(以前工作都只基于 z 的条件),得到的上式最右可以简单用蒙特卡洛采样近似。一方面 z 是白噪音能准确采样,另外采样的 z 取值也比较广泛。
Vintage NLP for Work
另一方面,他们还按 z 求了边际(以前工作都只基于 z 的条件),得到的上式最右可以简单用蒙特卡洛采样近似。一方面 z 是白噪音能准确采样,另外采样的 z 取值也比较广泛。
整个学习算法非常简洁,并不需要人工 trick,他们用了SGHMC而不是基础的MCMC,具体可以参考文献。
Vintage NLP for Work
整个学习算法非常简洁,并不需要人工 trick,他们用了SGHMC而不是基础的MCMC,具体可以参考文献。
在人工生成的多 mode 分布数据上(红色点),他们的方法可以很好地识别,而普通 GAN 无法区分只能认为整个区域是一大块分布。
Vintage NLP for Work
在人工生成的多 mode 分布数据上(红色点),他们的方法可以很好地识别,而普通 GAN 无法区分只能认为整个区域是一大块分布。
不同的数据集上 Bayesian GAN 的错误率也都全做到了最低,甚至超过了 W-GAN 和 10个DCGAN的 ensemble。
Vintage NLP for Work
另一方面,通过加入另一个对抗损失,让另一个判别器优化 criterion 的熵,从而给前一个判别器制造障碍。
"假如判别器能够准确预测每一个共享特征向量的来源语料,则说明这些共享特征中混入了太多私有信息,这是我们不希望发生的事情。所以我们反过来给共享 LSTM 模块设定一个目标,让它跟判别器对抗,想办法让判别器预测不准。假如共享 LSTM 模块成功让判别器分不清特征向量来自哪个语料,意味着我们已经把私有特征剥离出去了,从而保证了共享特征向量的纯净性。"
一条来自 paperweekly 的解释,这两篇复旦的文章模型太像了反而之前有点没弄明白,但他们在对抗的设计上是不一样的。
文本分类那篇是用对抗选出共享特征,并加上约束使得共享特征不要遗漏。
中文分词这篇是用两个正则项实现了对抗,并选出共享特征。
一条来自 paperweekly 的解释,这两篇复旦的文章模型太像了反而之前有点没弄明白,但他们在对抗的设计上是不一样的。
文本分类那篇是用对抗选出共享特征,并加上约束使得共享特征不要遗漏。
中文分词这篇是用两个正则项实现了对抗,并选出共享特征。
Vintage NLP for Work
基于框架的汉语篇章结构生成和篇章关系识别 https://mp.weixin.qq.com/s/vadnfd688nyHwtIUARV6NA 吕国英 苏娜 等
本文发表在中文信息学报上。之前也有推过一篇英语中 Rhetoric Structure Theory(RST) 分析的文章,英文数据相比中文非常丰富,也有一些利用 RST 来做情感分析之类的工作。
然而中文的研究虽然也是很多的,语言资源却还极度缺乏,目前还停留在篇章结构分析的阶段。
由于数据集比较小,本文方法也比较简单,因此主要看点在于他是如何做中文的篇章关系建模的。
如上图所示,三个比较长的句子都用不同级别的括号围起来,上标有 PDU、FDU、SDU 等层次标记,即 Primary/First/Second Discourse Unit。其中 PDU 是按标点做的区分,FDU 是 PDU 或者 PDU 的组合,要求 FDU 可以触发框架。SDU 是更高级的 FDU 之间的组合。
中文里的框架类似于英文 Framenet,也是一类人工语义资源。一个框架将相似的词义并在一起,例如“位移”框架指移动的动作,包括“飞行、滑行、漂、走、移动”等词。句子中有了这些目标词(target)就认为触发了框架。
篇章结构有不同的理论,本文所用的汉语框架网络(Chinese FrameNet, CFN)将每个框架看作是 FDU 的基础。
然而中文的研究虽然也是很多的,语言资源却还极度缺乏,目前还停留在篇章结构分析的阶段。
由于数据集比较小,本文方法也比较简单,因此主要看点在于他是如何做中文的篇章关系建模的。
如上图所示,三个比较长的句子都用不同级别的括号围起来,上标有 PDU、FDU、SDU 等层次标记,即 Primary/First/Second Discourse Unit。其中 PDU 是按标点做的区分,FDU 是 PDU 或者 PDU 的组合,要求 FDU 可以触发框架。SDU 是更高级的 FDU 之间的组合。
中文里的框架类似于英文 Framenet,也是一类人工语义资源。一个框架将相似的词义并在一起,例如“位移”框架指移动的动作,包括“飞行、滑行、漂、走、移动”等词。句子中有了这些目标词(target)就认为触发了框架。
篇章结构有不同的理论,本文所用的汉语框架网络(Chinese FrameNet, CFN)将每个框架看作是 FDU 的基础。
Vintage NLP for Work
本文发表在中文信息学报上。之前也有推过一篇英语中 Rhetoric Structure Theory(RST) 分析的文章,英文数据相比中文非常丰富,也有一些利用 RST 来做情感分析之类的工作。 然而中文的研究虽然也是很多的,语言资源却还极度缺乏,目前还停留在篇章结构分析的阶段。 由于数据集比较小,本文方法也比较简单,因此主要看点在于他是如何做中文的篇章关系建模的。 如上图所示,三个比较长的句子都用不同级别的括号围起来,上标有 PDU、FDU、SDU 等层次标记,即 Primary/First/Second…
有了 FDU 之后,按照篇章之间的关系相互组合就得到整个篇章树。对于篇章关系简单如图所分类,具体参考[黄伯荣,廖序东.现代汉语[M].北京:高等教育出版社.2011]
Vintage NLP for Work
有了 FDU 之后,按照篇章之间的关系相互组合就得到整个篇章树。对于篇章关系简单如图所分类,具体参考[黄伯荣,廖序东.现代汉语[M].北京:高等教育出版社.2011]
语料库现状可以说很惨淡,如上图。因此本文用的模型也比较简单,用线性模型+人工特征+最大熵识别篇章关系,用贪婪算法构成篇章结构树。
Vintage NLP for Work
语料库现状可以说很惨淡,如上图。因此本文用的模型也比较简单,用线性模型+人工特征+最大熵识别篇章关系,用贪婪算法构成篇章结构树。
F1 值效果上,篇章关系达到了 29.99%,篇章树则为 64%。
Forwarded from 徐 鸣
https://mp.weixin.qq.com/s/78-ZnqjpXjfS6lp17WJMCw
宣传一蛤……虽然这里好像不搭嘎
宣传一蛤……虽然这里好像不搭嘎
Neural Variational Inference for Text Processing
http://dl.acm.org/citation.cfm?id=3045573
Yishu Miao, Lei Yu, Phil Blunsom
http://dl.acm.org/citation.cfm?id=3045573
Yishu Miao, Lei Yu, Phil Blunsom
Vintage NLP for Work
Neural Variational Inference for Text Processing http://dl.acm.org/citation.cfm?id=3045573 Yishu Miao, Lei Yu, Phil Blunsom
本文现在比较老了,发表在 ICML2016 上。
与 VAE 的原始工作相比,本文针对文本建立了一个统一的框架,并应用到 文档建模 和 答案选择 两个不同任务中。如图所示,蓝色的向量即是针对不同任务的隐表征,也是用 VAE 引入先验分布的地方。
主要亮点见图二,由于观察到直接用 RNN 输出的问句表征(Z_q)作为条件建模答案容易引起过拟合,这里用最终输出引入了一个隐变量 h,也是加入变参分布的地方。
当然图中也能看到在生成答案的表征时还用到了 attention 计算。
与 VAE 的原始工作相比,本文针对文本建立了一个统一的框架,并应用到 文档建模 和 答案选择 两个不同任务中。如图所示,蓝色的向量即是针对不同任务的隐表征,也是用 VAE 引入先验分布的地方。
主要亮点见图二,由于观察到直接用 RNN 输出的问句表征(Z_q)作为条件建模答案容易引起过拟合,这里用最终输出引入了一个隐变量 h,也是加入变参分布的地方。
当然图中也能看到在生成答案的表征时还用到了 attention 计算。
SeqGAN: Sequence Generative Adversarial Nets with Policy Gradient
https://aaai.org/ocs/index.php/AAAI/AAAI17/paper/view/14344
Lantao Yu, Weinan Zhang, Jun Wang, Yong Yu
https://aaai.org/ocs/index.php/AAAI/AAAI17/paper/view/14344
Lantao Yu, Weinan Zhang, Jun Wang, Yong Yu
Vintage NLP for Work
SeqGAN: Sequence Generative Adversarial Nets with Policy Gradient https://aaai.org/ocs/index.php/AAAI/AAAI17/paper/view/14344 Lantao Yu, Weinan Zhang, Jun Wang, Yong Yu
本文来自上交,发表在 AAAI 2017 上(但上传 arXiv 的版本更新)。
主要解决两个问题。一个是 GAN 很难处理离散的文本,毕竟判别器的 loss 传回的更新较小,很难让生成器输出的文字 token 有什么变化。另一方面,只有当整个序列生成后 GAN 才会给出打分,对一个只生成了一半的句子很难判断其好坏。
本文把强化学习的策略梯度方法加入进来解决上述问题。将判别器作为最终计算 reward 的工具,reward 定义为数据是真实数据的概率。另外,对中间节点,则使用蒙特卡洛搜索得到后续句子的 reward 期望作为当前节点的 reward。
主要解决两个问题。一个是 GAN 很难处理离散的文本,毕竟判别器的 loss 传回的更新较小,很难让生成器输出的文字 token 有什么变化。另一方面,只有当整个序列生成后 GAN 才会给出打分,对一个只生成了一半的句子很难判断其好坏。
本文把强化学习的策略梯度方法加入进来解决上述问题。将判别器作为最终计算 reward 的工具,reward 定义为数据是真实数据的概率。另外,对中间节点,则使用蒙特卡洛搜索得到后续句子的 reward 期望作为当前节点的 reward。