为什么 GAN(生成对抗网络)被称为 "implicit" 生成网络?

Why GAN's (Generative Adverserial networks) are called "implicit" generative networks?

对抗性网络,例如 GAN,被称为“隐式” 网络。这是什么意思?而且,它们与 "explicit" 生成网络有何不同?什么是 “显式” 生成网络?

好的,在 this paper 中,它说:


“规定的概率模型是那些提供观察到的随机变量 x [...] 分布的明确参数规范的模型。机器学习和统计中的大多数模型都是这种形式,无论是 state-of-the-art 用于对象识别的分类器、用于机器翻译的复杂序列模型,还是 fine-grained spatio-temporal 跟踪疾病传播的模型。或者,我们可以指定隐式概率模型定义直接生成数据的随机过程。"

也许总结一下:规定的概率模型想要学习一组适合手头任务和数据的参数,例如对象分类。另一方面,implicit 概率模型生成数据,但公平地说,GAN 也被提供数据,例如MNIST 样本,如果调整得当,它们会自己生成 MNIST 数字。

希望对您有所帮助!

PS:我不确定 explicit 生成网络是否存在。你确定吗,也许你可以发送参考?毕竟总想用GAN生成数据...

让我通过开始人机算法之间的对话来为您提供一个简单的答案:

人类说:我有一些数据,我希望能够生成更多像这样的数据。准确地说,我需要能够从我的训练数据来自的 主要分布 生成更多数据。

生成模型说:给我你的数据,我会想办法帮助你。 Eighter 我会把你的数据来自的分布还给你,或者我会为你提供另一种聪明的方法,这样你就可以生成更多与原始数据相似的样本,甚至不用担心分布。

  • 显式模型就像:给我们训练数据,我们给你数据的分布,所以你可以用它做任何你想做的事情。

    • 如果你至少知道分布的类型,那将是一个巨大的帮助,我的工作更容易,我只需要找到分布的参数(例如,如果你告诉我分布是高斯,所以我的“学习过程”是为你估计均值和方差。它不需要是高斯,我也可以处理更复杂和高维的分布)
    • 如果你不知道分布的类型,但仍然想让我给你一个分布,明确地说,我可以使用 non-parametric 模型,例如 Kernel Density Estimation.
  • 隐式方法说:我们让您能够以疯狂的方式生成与您的训练数据相似的新样本!例如,看看 GAN,通过对你的数据进行游戏,最后,我们给你一些东西,一个黑盒子,我们称之为生成器,你可以将一个随机数传递给它,它会神奇地给你一个新样本。在训练这个黑匣子时,我们不会直接去理会任何分布的东西。