[论文阅读] 2019 NeurIPS - Generative modeling by estimating gradients of the data distribution

[阅读笔记]Generative modeling by estimating gradients of the data distribution

本文创造性的使用积分函数来学习训练数据的分布,并提出sliced score matching解决了传统score matching中存在的性能问题。

‍♂️张同学 [email protected] 有问题请联系我~

本文的目录鸭~

  • [阅读笔记]Generative modeling by estimating gradients of the data distribution
    • ⚽️一、生成式模型应用
    • 二、生成式模型介绍
    • 三、生成模型的分类
    • ⚾️四、本文主要工作
      • 本文提出一种全新的分布表示方法:
      • 为啥要使用积分函数:
      • 如何解决`score matching`算法低效的问题
    • 五、生成模型实验及展示效果
    • 参考文献

⚽️一、生成式模型应用

  • 已经大量应用,比如人脸生成模型中,生成的人脸已经和真实的人脸相差无几。

  • 自然语言处理,一个语言模型本质上就是一个基于语言的生成式模型。

二、生成式模型介绍

  • 一般的生成模型

    • 从一个数据集中来训练,这个数据集中有很多数据样本

    • 生成模型是一个概率分布的集合

    • 给定一个训练集,我们的目的是找到一个最佳的分布的模型

    • 得到这个模型之后,我们可以进行源源不断的采样来获得一个新样本

三、生成模型的分类

生成式模型是一种对数据分布的表示,根据不同的表示,可以有以下生成式模型的分类:

  • 隐式的生成式模型:GUN

    生成一个随机噪声,将这个噪声通过一个神经网络映射到一个样本上,比如可以是一张图片。

    • 从噪声生成样本的过程就是一个从分布中进行采样的过程
    • 优点
      • 灵活的结构
      • 比较高质量的样本质量
    • 缺点
      • 很难训练一个模型:对抗训练难以调整、也不是很稳定
      • 没法去计算似然函数,所以没法比较不同隐式模型的好坏
  • 显式的生成式模型

    通过直接表示这个分布的概率密度函数来表示分布:显示分布

    贝叶斯模型、等

    • 优点
      • 可以用似然函数大小来比较不同模型好坏 # 这个似然函数是个什么概念?
    • 缺点
      • 需要模型本身是归一化的 # 模型本身的归一化指的是什么?
      • 模型在训练的时候需要很快的计算似然函数,这个同时也制约了模型的表示能力。

⚾️四、本文主要工作

本文提出一种全新的分布表示方法:

这个和显式的分布有什么区别?

模型要使用概率密度的导数进行表示
KaTeX parse error: Undefined control sequence: \grad at position 2: \̲g̲r̲a̲d̲_xlog(p(x)) =>…
[论文阅读] 2019 NeurIPS - Generative modeling by estimating gradients of the data distribution_第1张图片

颜色表示概率密度函数,用向量场来表示积分函数。

结论 => 概率密度函数和积分函数,可以在可微的情况下表示同一种分布。 # 可微是为啥?

为啥要使用积分函数:

作者认为

  • 概率密度函数表示的程度较低、没有积分函数灵活;
  • 使用积分函数就不需要计算归一化函数了

通过训练一个积分函数的模型,

训练的损失函数是要求我们的向量场和数据分布的向量场一样

所以就需要计算两个向量场之间的距离 fisher divergence(这个距离不容易直接计算?依赖未知的积分函数对应的分布??听不懂)

=> score matching不依赖于未知的积分函数的分布,但是这个不容易计算(尤其是在神经网络的模型中)

!= 但是不能用于大规模维度的计算

如何解决score matching算法低效的问题

sliced score matching: 将高维的向量场变成一个低维的标量场。

提出目标函数:sliced fisher divergence

=> 作者的工作实现了只进行一次反向即可完成训练。

sliced score matching的实验结果极其迅速!且效果相当。

[论文阅读] 2019 NeurIPS - Generative modeling by estimating gradients of the data distribution_第2张图片

效果相似

[论文阅读] 2019 NeurIPS - Generative modeling by estimating gradients of the data distribution_第3张图片

五、生成模型实验及展示效果

使用积分函数构建模型来构建新样本

从积分函数中生成样本

在数据较多的地方积分场比较好,在数据量比较少的地方积分场比较差:

可以通过在原始数据中添加随机数来进行扰动
为什么要添加噪声呢?
添加噪声之后可以方便score matching计算,可以填补数据量少的地方。
所以最终的结果是使用多级噪声的原始数据进行训练。
采样时采用的是拉直满采样。

展示效果

参考文献

  • 原文献:Song Y, Ermon S. Generative modeling by estimating gradients of the data distribution[J]. arXiv preprint arXiv:1907.05600, 2019.

  • 原作者的分享视频:https://www.techbeat.net/talk-info?id=509

  • GitHub源代码:https://github.com/ermongroup/ncsn?utm_source=catalyzex.com

你可能感兴趣的:(我的科研之路~,机器学习,深度学习,人工智能)