GAN01| 判别式模型和生成式模型

generative adversarial network 对抗生成网络

机器学习基本知识

生成式模型(generative models)与判别式模型(Discriminative models)

本质区别:生成式模型可以生成数据,而判别式模型不可以生成数据,只可以将数据用于分类、回归等问题

判别式模型(Discriminative models)

Goal: given $x$, predict $y$

找到一个映射$x:\to y$ 即 $f(x)$

分类问题 classfication $f(x) \in 0 or 1$

回归问题 regression $f(x) \in R$

(1) 概率模型 Probabilistic

Goal: given $x$, predict $y$

求 $p(y | x)$

如二分类

$p(1 | x) \geq 0.5$ 输出 $1$

$p(1 | x) < 0.5$ 输出 $0$

几种基于(条件)概率模型的判别式模型

  • Logistic regression

$p_r(y=1 | x) = \frac{1}{\sqrt{1+e^{-w^Tx}}}$

  • Feed-forward networks

$p_r(y=1 | x) = \frac{1}{\sqrt{1+e^{-h(x)}}}$

$h(x)=\sigma(Ax+b)$

$h(x)$为隐藏层的工作:仿射变换(线性变换)+激活函数

  • Recurrent networks

  • Conditional random field 条件随机场

对于一些简单的情况,我们会假设已知有模型可以很好的对分布进行建模,缺少的只是合适的参数。这时候很自然只要根据观测到的样本,学习参数让当前观测到的样本下的似然函数最大,这就是最大似然估计(Maximum Likelihood Estimation)

最大似然估计MLE

$$ \left. max \right| _{\theta} = \frac{1}{n}\sum^{n}_{i=1}log^{p_r(y=1 | x)}$$

(2) 非概率模型 Non-Probabilistic

Goal: given $x$, predict $y$

求 $f (x; \theta)$

几种基于非概率模型的判别式模型

  • Support vector machines

  • K-nearest neighbors

  • Decision tree

$$ \left. max \right| _{\theta} = \frac{1}{n}\sum^{n}_{i=1} \prod (f(x_i; \theta)=y_i)$$

总结:判别式模型有基于概率模型也有基于非概率模型,基于概率模型就是要构造$p(y | x)$,基于非概率模型就是要构造$f (x; \theta)$

生成式模型(generative models)

(1) 概率模型 Probabilistic

求 $p_r(x,y)=p_r(y | x)p_r(x)$

最大似然估计MLE

$$ \left. max \right| _{\theta} = \frac{1}{n}\sum^{n}_{i=1}log^{p_r(x,y;\theta)}$$

note:交叉熵cross-entropy是MLE的一个特例,针对概率模型

  • Naive Bayes

  • Bayesian networks

  • Hidden Markov models 隐马尔科夫模型

  • Restricted Boltzmann machines 受限波兹尔曼机

在RNN出来之前,用于语音识别,自然语言处理,将一个句子的各个成分属于什么词性

  • Gaussian mixture models 混合高斯模型

$$ p_r(x,y)=\sum^{n}_{i=1} p_r(x| y=i)p_r(y=i)$$

$p_r(y=i)$ 多项式分布

$p_r(x| y=i)$ 高斯分布 $N(x;(0,1))$

  • Latent Dirichlet allocation

  • Variational auto encoder

总结:基于概率的生成式模型使用联合概率密度 $p_r(x,y)$基于概率的判别式模型使用条件概率密度$p(y | x)$

(2) 非概率模型 Non-Probabilistic

GAN

前期工作

GAN 产生的大环境 2012-2014

  • 判别式深度模型:AlexNet、NIN、VGG、GoogleNet等

  • 生成式深度模型:DBM、VAE、NCE(少、复杂)

DBM:

常规模式:对目标对象的概率分布建模,并将其表达为具体的某种参数形式;再用最大似然的方法训练模型

不足:似然分布无法直接求解,依赖近似和采样算法

GSN(2014)

无需具体参数化形式,用其他形式代替最大似然优化

核心:假设一条马尔可夫链的稳态分布是数据的真实分布,并用梯度反传(BP)代替马尔可夫连的求解

NCE:判别式准则辅助训练产生式模型

VAE:两个网络互相训练,近似推断