2017年1月13日,星期五

通过对抗训练生成文本

今年在GAN研讨会上有一篇非常可爱的论文, 通过对抗训练生成文本 由张,甘和卡林撰写。特别是,它们做出了一些很重要的不寻常选择。 (警告:如果您不熟悉GAN,那么这篇文章就没有多大意义了。)
  1. 他们使用卷积神经网络(CNN)作为判别器,而不是RNN。回想起来,这似乎是个不错的选择,例如张彤已经 粉碎它 使用CNN进行文本分类。 CNN比RNN容易训练,因此最终结果是强大的判别器,并且具有相对容易的优化问题。
  2. 他们在发生器中使用LSTM输出的平滑近似值,但实际上这种技巧到处都是,因此在隔离方面并不是那么出色。
  3. 他们使用纯矩匹配标准进行鞍点优化(基于小批量估算)。 GAN从逐点辨别损失开始,最近的工作通过矩匹配样式惩罚增加了这种损失,但是这里的鞍点优化是纯矩匹配。 (因此从技术上讲,鉴别器不是鉴别器。实际上,它们在文本中可互换地称为鉴别器或编码器,这解释了原因。)
  4. 他们对初始化非常聪明。特别地,鉴别器被预先训练以在两个单词互换位置的情况下区分真实句子和相同句子。 (在初始化期间,使用逐点分类损失训练鉴别器)。这很有趣,因为交换两个单词会保留输入的许多$ n $ -gram统计信息,即许多卷积滤波器将计算出完全相同的值。 (最近我很幸运地使用置换句子作为其他模型的否定词,现在我将尝试交换两个单词。)
  5. 他们更新发电机 更频繁 比区分符要高,这与标准的民间传说相反,后者说您希望区分符的移动速度比生成器快。也许这是因为CNN优化问题比LSTM容易得多。纯粹的矩匹配损耗的使用也可能是相关的。



关于神经网络论文的老抱怨是您无法复制它们。如今,复制神经网络论文通常比其他论文更容易,因为您可以将他们的代码存储在github上并运行实验。但是,我仍然很难确定所做的各种选择的相对重要性。对于上面列举的选择:最终结果对这些选择的敏感性是多少?很难说,但是我已经开始假设灵敏度很高,因为当我在复制后尝试调整结果时,通常会变得很糟糕。 (我尚未尝试复制此特定结果。)

无论如何,本文有一些很酷的想法,希望可以扩展到生成逼真的对话框。

2条评论:

  1. 回覆
    1. 还没出来(afaik)。公平地说,这只是一份研讨会论文。如果您查看本文的会议版本,请发布代码!

      删除