判别模型和生成模型的区别

20210703

https://www.zhihu.com/question/20446337
机器学习“判定模型”和“生成模型”有什么区别?
重点

https://mp.weixin.qq.com/s/arAWD6_ipFWvNysNqumxmQ
判别模型和生成模型总结与对比:

20210511

判别:熟悉 湖畔大学

生成模型和判别模型的区别

1.监督学习分为生成模型和判别模型
有监督机器学习方法可以分为生成方法和判别方法(常见的生成方法有混合高斯模型、朴素贝叶斯法和隐形马尔科夫模型等,常见的判别方法有SVM、LR等),生成方法学习出的是生成模型,判别方法学习出的是判别模型。 叛徒洛基(英雄)

2.生成模型
生成模型主要是求解联合概率密度,比如我们有数据集:(C,X),其中(c,x)表示其中一个样本,c为类别,x为特征。那么对于生成模型来说我们需要求解p(x,c)的联合概率密度,根据贝叶斯概率,p(x,c) = p(x|c)*p©,所以我们的任务变成了求解p(x|c)的类别条件概率,和p©的类别先验概率。

生成模型的求解思路是:联合分布——->求解类别先验概率和类别条件概率

3.判别模型
还是上面的例子,比如有了(C,X),其中(c,x)表示一个样本数据,c为类别,x为特征,那么判别模型输出的就是p(c|x)这个条件概率模型,即输入特征x,求输出类别是c的概率(c关于x的条件概率)。
实际上,这个过程包含了我们“看过”训练数据得到的后验知识,根据这个后验知识和测试集的特征就可以判断出测试集的类别。p(c|x) = p(c|x , C,X),我们认为这个条件概率由参数theta决定,即p(c|x, theta)。
但是theta怎样求得呢?theta是模型“看过”训练集后得到的,即theta在训练集上的后验分布p(theta | C,X)。
所以,综上整个流程为:p(c|x) = p(c|x, C,X) = p(c,theta|x,C,X)关于theta积分 = p(c|x , theta)*p(theta|C,X)关于theta积分。那么现在的重点就是求p(theta | C,X),即theta关于训练集的后验分布。
这个后验分布对应的似然函数为:p(C | X,theta) = L(theta) = 乘积p(c | x , theta)。
又因为贝叶斯概率:p(theta | C,X)*p(C | X) = p(C | X , theta)p(theta)。
又:p(C | X) = p(C,theta | X)对theta积分 = p(C | X , theta)
p(theta)对theta积分。

综上:
在这里插入图片描述
条件分布——>模型参数后验概率最大——->(似然函数\cdot 参数先验)最大——->最大似然
4.生成模型和判别模型的优缺点
生成模型:
优点:

1)生成给出的是联合分布,不仅能够由联合分布计算条件分布(反之则不行),还可以给出其他信息,比如可以使用来计算边缘分布。如果一个输入样本的边缘分布很小的话,那么可以认为学习出的这个模型可能不太适合对这个样本进行分类,分类效果可能会不好,这也是所谓的outlier
detection。

2)生成模型收敛速度比较快,即当样本数量较多时,生成模型能更快地收敛于真实模型。

3)生成模型能够应付存在隐变量的情况,比如混合高斯模型就是含有隐变量的生成方法。

缺点:

1)天下没有免费午餐,联合分布是能提供更多的信息,但也需要更多的样本和更多计算,尤其是为了更准确估计类别条件分布,需要增加样本的数目,而且类别条件概率的许多信息是我们做分类用不到,因而如果我们只需要做分类任务,就浪费了计算资源。

2)另外,实践中多数情况下判别模型效果更好。

判别模型:
优点:

1)与生成模型缺点对应,首先是节省计算资源,另外,需要的样本数量也少于生成模型。

2)准确率往往较生成模型高。

3)由于直接学习,而不需要求解类别条件概率,所以允许我们对输入进行抽象(比如降维、构造等),从而能够简化学习问题。

缺点:

1)是没有生成模型的上述优点。

https://blog.youkuaiyun.com/algorithmPro/article/details/103625931
判别模型和生成模型总结与对比:

https://mp.weixin.qq.com/s/YwaNrjyUaMhS2r2FncuyMQ
理解生成模型与判别模型

https://mp.weixin.qq.com/s/J6XbAGyLE0toRZRMr5JfXg
在这里插入图片描述

https://mp.weixin.qq.com/s/xtx3ceq6GDO_h0iJcLAPag
机器学习基础 | 大话生成模型与判别模型
重点?
生成模型学习联合概率分布p(x,y),然后根据贝叶斯理论预测条件概率p(y|x),推导公式为:
在这里插入图片描述

判别模型直接学习条件概率分布P(y|x)或学习决策函数y=f(x)预测输出。由(1)式可知生成模型可以得到判别模型,但判别模型得不到生成模型。

  1. 生成模型与判别模型的特点比较

生成模型是学习联合概率分布图片,然后利用贝叶斯理论去预测条件概率分布图片。生成模型明确的反映了数据集的分布情况,根据数据集的分布情况去预测测试数据的分类情况,当数据量较少时,学习到的联合概率分布图片与真实的联合概率分布图片差异较大,因此生成模型适合在数据量很大的情况,当模型需要考虑隐变量时,仍可用生成模型方法,此判别方法不能用。

判别模型是直接学习判别函数f(x)或条件概率分布p(y|x),它是根据训练数据不同类别之间的特征差异来学习决策边界,如支持向量机,逻辑斯蒂回归等模型。因此在数据量不多的情况下判别模型的分类结果要好于生成模型,但是判别模型不能反应数据集的真实分布情况。
8. 总结

生成模型和判别模型一般处理监督学习的问题,这两类模型都是通过预测条件概率分布p(y|x)进行分类(判别模型也可通过决策函数分类),只是方式不同:

生成模型思想:

学习联合概率分布p(x,y);

贝叶斯理论计算条件概率p(y|x);

判别模型思想:

直接通过训练数据估计条件概率分布P(y|x)或决策函数f(x);

生成模型的分类器:

朴素贝叶斯

贝叶斯网络

马尔科夫随机场

隐马尔可夫模型

判别模型的分类器:

逻辑斯蒂回归

支持向量机

最近邻算法

条件随机场

### 判别模型生成模型在图像处理中的应用及区别 #### 1. 基本定义 判别模型生成模型机器学习领域两种重要的建模方法。判别模型的目标是学习输入 \(X\) 类别 \(Y\) 之间的条件概率 \(P(Y|X)\),主要用于分类预测任务;而生成模型则是学习输入 \(X\) 类别 \(Y\) 的联合概率 \(P(X, Y)\),能够用于数据生成复杂分布的建模[^2]。 #### 2. 在图像处理中的具体应用 ##### (1)判别模型的应用 判别模型广泛应用于图像分类、对象检测以及语义分割等领域。例如,卷积神经网络(CNNs)是一种典型的判别模型,其通过学习特征表示来区分不同类别的图像。这类模型通常依赖于大量的标注数据来进行训练,并且由于专注于优化分类性能,因此在许多实际应用场景中表现出较高的效率准确性[^4]。 ```python import tensorflow as tf from tensorflow.keras import layers model = tf.keras.Sequential([ layers.Conv2D(32, kernel_size=(3, 3), activation='relu', input_shape=(28, 28, 1)), layers.MaxPooling2D(pool_size=(2, 2)), layers.Flatten(), layers.Dense(10, activation='softmax') ]) ``` 上述代码展示了一个简单的卷积神经网络结构,适用于手写数字识别等图像分类任务。 ##### (2)生成模型的应用 生成模型则更多地被用来解决诸如图像生成、超分辨率重建等问题。变分自编码器(VAEs)、生成对抗网络(GANs)都是常见的生成模型实例。这些模型不仅能够创建逼真的合成图像,还可以用于数据增强,从而提升其他机器学习系统的泛化能力[^4]。 #### 3. 主要区别 - **目标差异** - 判别模型旨在建立清晰的决策边界以分离各类样本。 - 生成模型试图理解并模仿真实世界的数据分布以便生成新的样例[^1]。 - **计算复杂度** - 判别模型一般具有较低的计算需求,适合实时推理环境下的部署。 - 相较之下,生成模型往往更加耗时且资源密集型,因为它们需要模拟整个数据空间的行为特性[^4]。 - **对标签的要求** - 大多数情况下,判别模型的有效运作离不开充分数量的手动标记示例的支持。 - 而某些类型的生成模型即使是在缺乏详尽标注的情况下也能发挥作用,比如无监督学习情境下运用的 GAN 或 VAE 技术。 #### 结论 综上所述,尽管两者均能在不同程度上助力计算机视觉研究的发展进程,但各自侧重点有所不同——前者更倾向于提高现有框架内的精确判断力,后者则侧重探索未知可能性的空间拓展潜力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值