GAN调研——1.有监督的生成式模型与判别式模型

A Survey about GANs

Part1.有监督的生成式模型与判别式模型

生成式模型(Generative Model)和判别式模型(Discriminative Model)是对有监督机器学习模型的两种建模方式。本节将简要介绍二者区别与联系,并举例说明。

1.生成式模型和判别式模型结构

avatar

  上图左半部分为判别式模型,可以看出判别式模型是对数据的条件概率密度进行建模,目的是给定输入 x x x可以得到其输出 y y y的条件概率密度。上图右半部分为生成式模型,生成式模型对数据的联合概率密度进行建模,目的是重构概率密度 P ( x , y ) P(x,y) P(x,y),并由此利用贝叶斯公式 P ( y ∣ x ) = P ( x ∣ y ) P ( y ) P ( x ) P(y|x)=\frac{P(x|y)P(y)}{P(x)} P(yx)=P(x)P(xy)P(y)求得给定输入 x x x的输出 y y y的条件概率密度。

2.判别式模型经典案例——逻辑回归(Logistic Regression)

avatar
  从模型上看,逻辑回归输入层通过隐含层神经元映射到输出层。输入层概率密度设为 P ( x ) P(x) P(x),隐含层参数设为 θ \theta θ,则输出即为条件为 ( x , θ ) (x,\theta) (x,θ) y y y的概率密度 P ( y ∣ x , θ ) P(y|x,\theta) P(yx,θ)。假设输出概率密度服从伯努利分布,通过极大似然估计,可以求得参数 θ \theta θ从而得到该条件概率密度。
  假设条件概率密度为:
(1) P ( y ∣ x , θ ) = ( h θ ) y ( 1 − h θ ( x ) ) 1 − y P(y|x,\theta)=(h_{\theta})^y(1-h_{\theta}(x))^{1-y}\tag{1} P(yx,θ)=(hθ)y(1hθ(x))1y(1)
则取似然函数为:
(2) L ( θ ) = ∏ i = 1 m P ( y ( i ) ∣ x ( i ) , θ ) = ∏ i = 1 m ( h θ ( x ( i ) ) ) y ( i ) ( 1 − h θ ( x ( i ) ) ) 1 − y ( i ) L(\theta)=\prod_{i=1}^mP(y^{(i)}|x^{(i)},\theta)=\prod_{i=1}^m(h_\theta(x^{(i)}))^{y^{(i)}}(1-h_{\theta}(x^{(i)}))^{1-y^{(i)}}\tag{2} L(θ)=i=1mP(y(i)x(i),θ)=i=1m(hθ(x(i)))y(i)(1hθ(x(i)))1y(i)(2)
其对数似然函数为:
(3) L ( θ ) = log ⁡ ( ∏ i = 1 m ( h θ ( x ( i ) ) ) y ( i ) ( 1 − h θ ( x ( i ) ) ) 1 − y ( i ) ) = ∑ i = 1 m ( y ( i ) log ⁡ ( h θ ( x ( i ) ) ) + ( 1 − y ( i ) ) log ⁡ ( 1 − h θ ( x ( i ) ) ) ) \begin{aligned} L(\theta)&=\log(\prod_{i=1}^m(h_\theta(x^{(i)}))^{y^{(i)}}(1-h_{\theta}(x^{(i)}))^{1-y^{(i)}})\\ &=\sum_{i=1}^m(y^{(i)}\log(h_\theta(x^{(i)}))+(1-y^{(i)})\log(1-h_\theta(x^{(i)}))) \end{aligned}\tag{3} L(θ)=log(i=1m(hθ(x(i)))y(i)(1hθ(x(i)))1y(i))=i=1m(y(i)log(hθ(x(i)))+(1y(i))log(1hθ(x(i))))(3)

通过根据上式通过求 ∂ L ∂ θ \frac{\partial L}{\partial \theta} θL即可得到最优解(反向传播更新参数 θ \theta θ)。

  常用的判别式模型还有:

  • 线性回归(Linear Regression)
  • 逻辑斯蒂回归(Logistic Regression)
  • 神经网络(NN)
  • 支持向量机(SVM)
  • 高斯过程(Gaussian Process)
  • 条件随机场(CRF)
  • CART(Classification and Regression Tree)

3.生成式模型经典案例——高斯判别分析(Gaussian Discriminant Analysis)

  首先,高斯判别分析的作用也是用于分类。对于两类样本,其服从伯努利分布,而对每个类中单独的样本,假定都服从高斯分布,则有:

{ y ∼ B e r n o u l i ( ϕ ) x ∣ y = 0 ∼ N ( μ 0 , Σ ) x ∣ y = 1 ∼ N ( μ 1 , Σ ) \begin{cases} y\sim Bernouli(\phi)\\ x|y=0\sim N(\mu_0,\Sigma)\\ x|y=1\sim N(\mu_1,\Sigma)\\ \end{cases} yBernouli(ϕ)xy=0N(μ0,Σ)xy=1N(μ1,Σ)

  根据训练数据,我们可以对上述三个分布的参数进行估计(注意,虽然存在两个不同的平均向量 μ 0 \mu_0 μ0 μ 1 \mu_1 μ1,但该模型通常仅使用一个协方差矩阵 Σ \Sigma Σ),根据贝叶斯公式,我们知道

(4) p ( y ∣ x ) = p ( x ∣ y ) p ( y ) p ( x ) p(y|x)=\frac{p(x|y)p(y)}{p(x)}\tag{4} p(yx)=p(x)p(xy)p(y)(4)

因此通过对先验概率和似然度进行建模之后即可求得后验概率的最大值
(5) y = arg ⁡ max ⁡ y p ( y ∣ x ) = arg ⁡ max ⁡ y p ( x ∣ y ) p ( y ) p ( x ) = arg ⁡ max ⁡ y p ( x ∣ y ) p ( y ) y=\arg \max_y p(y|x)=\arg \max_y p(x|y)p(y)p(x)=\arg \max_y p(x|y)p(y)\tag{5} y=argymaxp(yx)=argymaxp(xy)p(y)p(x)=argymaxp(xy)p(y)(5)
在此利用最大似然估计对 ϕ \phi ϕ μ 0 \mu_0 μ0 μ 1 \mu_1 μ1 Σ \Sigma Σ进行参数估计

(6) l ( ϕ , μ 0 , μ 1 , Σ ) = log ⁡ ∏ i = 1 m p ( x ( i ) , y ( i ) ) = log ⁡ ∏ i = 1 m p ( x ( i ) ∣ y ( i ) ) p ( y ( i ) ) = ∑ i = 1 m log ⁡ p ( x ( i ) ∣ y ( i ) ) + ∑ i = 1 m log ⁡ p ( y ( i ) ) = ∑ i = 1 m log ⁡ ( p ( x ( i ) ∣ y ( i ) = 0 ) 1 − y ( i ) ∗ p ( x ( i ) ∣ y ( i ) = 1 ) y ( i ) ) + ∑ i = 1 m log ⁡ p ( y ( i ) ) = ∑ i = 1 m ( 1 − y ( i ) ) log ⁡ ( p ( x ( i ) ∣ y ( i ) = 0 ) ) + ∑ i = 1 m ( 1 − y ( i ) ) log ⁡ ( p ( x ( i ) ∣ y ( i ) = 1 ) ) + ∑ i = 1 m log ⁡ p ( y ( i ) ) \begin{aligned} l(\phi,\mu_0,\mu_1,\Sigma)=&\log\prod_{i=1}^mp(x^{(i)},y^{(i)})=\log\prod_{i=1}^mp(x^{(i)}|y^{(i)})p(y^{(i)})\\ =&\sum_{i=1}^m\log{p(x^{(i)}|y^{(i)})}+\sum_{i=1}^m\log{p(y^{(i)})}\\ =&\sum_{i=1}^m\log{(p(x^{(i)}|y^{(i)}=0)^{1-y^{(i)}}*p(x^{(i)}|y^{(i)}=1)^{y^{(i)}})}+\sum_{i=1}^m\log{p(y^{(i)})}\\ =&\sum_{i=1}^m(1-y^{(i)})\log(p(x^{(i)}|y^{(i)}=0))+\sum_{i=1}^m(1-y^{(i)})\log(p(x^{(i)}|y^{(i)}=1))\\ &+\sum_{i=1}^m\log{p(y^{(i)})}\\ \end{aligned}\tag{6} l(ϕ,μ0,μ1,Σ)====logi=1mp(x(i),y(i))=logi=1mp(x(i)y(i))p(y(i))i=1mlogp(x(i)y(i))+i=1mlogp(y(i))i=1mlog(p(x(i)y(i)=0)1y(i)p(x(i)y(i)=1)y(i))+i=1mlogp(y(i))i=1m(1y(i))log(p(x(i)y(i)=0))+i=1m(1y(i))log(p(x(i)y(i)=1))+i=1mlogp(y(i))(6)
可知上式第一项仅与 μ 0 和 Σ \mu_0和\Sigma μ0Σ有关,第二项仅与 μ 1 \mu_1 μ1 Σ \Sigma Σ有关,最后一项仅与 ϕ \phi ϕ有关。因此分别令
{ ∂ l ∂ μ 0 = 0 ∂ l ∂ μ 1 = 0 ∂ l ∂ Σ = 0 ∂ l ∂ ϕ = 0 \begin{cases} \frac{\partial{l}}{\partial{\mu_0}}=0\\ \frac{\partial{l}}{\partial{\mu_1}}=0\\ \frac{\partial{l}}{\partial{\Sigma}}=0\\ \frac{\partial{l}}{\partial{\phi}}=0 \end{cases} μ0l=0μ1l=0Σl=0ϕl=0
即可求出 ϕ \phi ϕ μ 0 \mu_0 μ0 μ 1 \mu_1 μ1 Σ \Sigma Σ,在此不进行具体推导,详见链接

  由此我们得到了先验概率密度 p ( y ) p(y) p(y)以及条件概率密度 p ( x ∣ y ) p(x|y) p(xy),利用公式 ( 5 ) (5) (5)即可进行分类。

  常用的生成式模型还有:

  • 朴素贝叶斯(Naive Bayes)
  • 混合高斯模型(GMM)
  • 隐马尔科夫模型(HMM)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值