Google Brain提出新型生成建模算法MemGEN:只需记忆,性能突出
近日,谷歌大脑在 arXiv 上发表论文,提出新型生成建模算法 MemGEN。该算法使用研究者提出的新型学习范式「Deep Memory」,通过记忆模仿人类行为。该范式在生成建模任务上实现的算法 MemGEN 优点突出,性能很好。
论文:MemGEN: Memory is All You Need
论文链接:https://arxiv.org/abs/1803.11203
摘要:我们提出了一种叫做深度记忆(deep memory)的新型学习范式。它有可能彻底变革机器学习领域。令人惊讶的是,与深度学习不同,该范式还没有被重新改造。这个方法的核心是「背诵」(Learning By Heart)原则,这一原则在世界各地的小学得到了很好的研究。受诗歌背诵或圆周率小数点记忆的启发,我们提出了一种模仿人类行为的具体算法。我们在生成建模的任务上实现了该范式,该范式可应用于图像、自然语言甚至π小数点记忆,只要将它们打印成文本。该算法甚至在单样本学习环境下生成了该论文。我们精心设计的实验表明,在任何统计测试或分析时,我们都难以区分生成的样本与训练样本。
1 引言
我们遵循由 [LaLoudouana and Tarare, 2003] 开始、经 [Albanie et al., 2017] 和 [Garfinkel et al., 2017] 扩展的科研基本路线。受这些方法启发,我们关注生成建模的最终目标:输出与输入同分布。「垃圾输入,垃圾输出(Garbage In, Garbage Out)」是机器学习领域的一句格言,我们的主要贡献就是如实实现它。
在详细介绍该理论和实验之前,我们先来想一下,为何要生成建模?我们可以在会议的 deadline 之后思考这个问题,因为在下一次会议之前还有很多时间,至少目前看来是这样。
我们很多人知道,生成建模就像蛋糕一样好,谁不喜欢蛋糕呢?但是让我们暂时假装蛋糕只是一个谎言。生成模型从给定数据分布中采样,然后从中学习模型。然后我们希望能够用这个模型去解决另一个问题。通过仔细的研究 [Shannon, 1948],你可以注意到,尽可能多地保留样本中信息的最佳方式就是对它进行实际的存储——就是这样。毕竟,如果没有遗漏任何东西,我们又会失去什么呢?
不幸的是,仅此想法是不够的。一个关键的新想法是利用高级数据结构进行生成建模,例如列表,甚至 hashmap。利用这些最新的顶尖技术([Knuth, 1997], [Cormen, 2009]),我们可以超越 80 年代的老技术,即所谓的神经网络,它们不仅仅是加法和乘法。
我们的主要贡献有:
提出了一种新的学习范式。作为具体的应用,我们展示了如何导出最终的生成建模算法,证明这种方式最终输出与输入同分布。
由于 CPU 上的算法效率,GPU 将再次自由地用于游戏。计算效率的主要缺点是博士生现在可以与大型组织竞争,大型组织无法利用其更先进的基础设施;这是不公平的,因为基础设施很难建设。
生成的样本在统计上无法与真实样本进行区分,因此我们提出了 Rademacher 硬币翻转(Rademacher Coin Flipping)度量,它给出了更可靠的相似结果。这最终结束了关于生成性建模度量的长期争论。
MemGEN:记住它
我们提出了一个 MemGEN 的具体实现作为阐述。最开始是以伪代码的形式写的,但是随后我们动用了最好的软件工程师,因为代码至关重要。
细节内容详见 Algorithm 1。我们强调该算法是灵活的,并且可以应用更复杂的数据结构,例如 hashmap。
4 经验评价
为了展示结果,我们将演示这个简单的方法是如何与当前最优技术进行对比的。目前评价生成模型的最佳度量是基于两个样本之间的距离以及人类评价。我们用这两种度量来量化我们提出算法的性能。
图 1: 我们提出算法的一般结果。优点是这张图可以在其他论文中重复利用。
图 2: 人类评价。来自测试集的一个样本和来自生成模型的一个样本并排显示,供人类评分员评价。
以下是 MemGEN 在维基百科上训练生成的文本的代表性示例:
在图 3 中,我们展示了 MemGEN 使用互联网图像训练生成的一些代表性图像。对于未经训练的人而言,这个模型似乎崩溃了,只能生成一些猫咪图像。也许互联网上处处是喵星人图像?对网络上找到的自然图像进行快速估计后,这一假设似乎是对的,但还需要进一步的调研。
图 3:MemGEN 从随机互联网图像中学习后生成的随机图像。这证明生成的数据分布代表学习分布。
图 4:单核 CPU 上 Algorithm 1 的训练时间随着数据集规模的变化。
图 4 显示,我们的算法在计算资源方面明显优于之前提出的任何生成模型算法。我们还想强调的是,MemGEN 可以在一个简单的 CPU 上运行,从而大大降低了训练成本。坊间传说认为自定义 FPGA 实现可以提供性能优势。
但 GPU 的发热量高于 CPU;「由于全球 GPU 利用率下降,冬天即将来临」。
结论
我们提出了一种新型生成建模算法,该算法只有优点,经过严格的度量后,该算法具有很好的性能和突出的结果。与 [LaLoudouana and Tarare, 2003] 相反,我们甚至不必选择数据集,我们只选择了度量。这篇论文是按照最好的科学原理撰写,任何明显的缺陷都纯属巧合。