深度学习_GAN_生成模型和判别模型的区别

本文探讨机器学习中生成式模型与判别式模型的区别。生成式模型学习联合概率分布P(X,Y),用于异常检测;判别式模型直接学习决策函数Y=f(X)或条件概率分布P(Y/X),关注输入特征差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对于机器学习模型,我们可以根据模型对数据的建模方式将模型分为两大类,生成式模型和判别式模型。如果我们要训练一个关于猫狗分类的模型,对于判别式模型,只需要学习二者差异即可。比如说猫的体型会比狗小一点。而生成式则不一样,需要学习猫长什么样,狗长什么样。有了两者的长相以后,再根据长相去区分。具体而言:

  1. 生成式模型:由数据学习联合概率分布P(X,Y),然后由P(Y/X) = P(X,Y)/P(X)求出概率分布P(Y/X)作为预测的模型。该方法表示了给定输入X与产生输出Y的生成关系。
  2. 判别式模型:由数据直接学习决策函数Y = f(X)或条件概率分布P(Y/X)作为预测模型,即判别模型。判别方法关心的是对于给定的输入X,应该预测什么样的输出Y。

对于上述两种模型,从文字上理解起来似乎不太直观。我们举一个例子来说明一下,对于性别分类问题,分别用不同的模型来做:

(1)对于生成式模型:可以训练一个模型,学习输入的人的特征X和性别Y的关系。比如下图所示:

Y(性别)01
X(特征)01/43/4
13/41/4

这个数据可以统计得到,即统计人的特征X = 0,1…的时候,其类别为Y = 0,1…的概率。统计得到上述联合概率分布P(X,Y)后,可以学习一个模型,比如让二维高斯分布去拟合上述数据,这样就学习到了X,Y的联合分布。在预测时,如果我们希望给一个输入特征X,预测其类别,则需要通过贝叶斯公式得到条件概率分布才能进行推断:

P(Y∣X)=P(X,Y)P(X)=P(X,Y)P(X∣Y)P(Y)P(Y|X)={\frac{P(X,Y)}{P(X)}}={\frac{P(X,Y)}{P(X|Y)P(Y)}}P(YX)=P(X)P(X,Y)=P(XY)P(Y)P(X,Y)

(2)如果用判别式模型:可以训练一个模型,输入人的特征X,这些特征包括人的五官,穿衣风格,发型等。输出则是对于性别的判断概率,这个概率服从一个分布,分布的取值只有两个,要么男,要么女,记这个分布为Y。这个过程学习了一个条件概率分布P(Y/X),即输入特征X的分布已知条件下,Y的概率分布。

显然,从上面的分析可以得出,判别式模型似乎要方便很多,因为生成式模型要学习一个X,Y的联合分布往往需要很多数据,而判别式模型需要的数据则相对少,因为判别式模型更关注输入特征的差异性。不过生成式既然使用了更多数据来生成联合分布,自然能够提供更多的信息,现在有一个样本(X,Y),其联合概率P(X,Y)经过计算特别小,那么可以认为这个样本是异常样本。这种模型可以用来做anomaly detection。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Rocky Ding*

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值