生成式模型和判别式模型
一、简单理解
- 判别式模型出现早于生成式模型。
- 判别式模型其实并没有学习到数据的内容,只是单纯的记住了数据特征来做分类和判断。就像做模拟题,考试时遇到和模拟题一样的题会做,不一样的不会做。
- 而生成式模型能够学习数据的内容,对样本进行理解。就像真的学会了知识,考试时遇到的题都会做。
二、生成式模型 Generative Model(联想)
1、定义:学习得到联合概率分布P(X,Y),就是特征X和标记Y共同出现的概率。然后再求条件概率分布。能够学习数据的生成机制。
2、重点:由联合概率求条件概率。
3、常见算法:隐马尔可夫模型HMM、马尔可夫随机场、朴素贝叶斯、主题模型(LDA)、高斯混合模型。
4、计算思路:学习全部样本的先验和条件概率分布求出后验概率。
5、优点:
- 不仅可以通过联合概率分布,得到条件概率分布,还能够得到其他信息(如边缘分布);
- 收敛速度比较快,当样本数据较多时,能更快的收敛于真实的模型;
- 完全学习了所有分布,可以用来检测某个异常值;
- 有更强大的泛化能力,可以举一反三;
- 能够应付存在隐变量的情况(如高斯混合模型就是含有隐变量的生成式模型)。
6、缺点:
- 虽然说联合概率可以得到更多的信息,但是需要付出更多的样本和计算资源,尤其是更准确地估计类别条件分布需要增加更多的样本数量,而且类别条件概率的许多信息是我们做分类用不到的,这样来说就有点浪费了(多数实践情况下,判别式模型的效果会更好)。
三、判别式模型 Discriminative Model(记忆)
1、定义:学习条件概率分布P(Y|X),就是特征X出现的情况下标记Y出现的概率。就是在给定数据X的情况下,分析样本具有的特征,然后再根据已知的特征去匹配。
2、重点:直接学习条件概率,不会去学习联合概率分布。
3、常见算法:支持向量机(SVM)、感知机、KNN、决策树、逻辑回归、线性回归、条件随机场(CRF)。(大部分有监督学习的算法都是判别模型)
4、计算思路:直接计算得到条件概率分布或者说得到决策边缘。
5、优点:
- 节省计算资源,需要的样本数量也少于生成式模型;
- 准确率往往会比生成式模型高。
6、缺点:
- 因为只求条件概率分布,而不是联合概率分布,所以可能得不到生成式模型会得到的信息;
- 泛化能力不行,对于自己没有见过的新样本效果不是很好。
四、实例:判断一个狗狗的品种是金毛还是哈士奇?
1、生成式模型
- 首先根据金毛的特征去学习一个模型M1,再根据哈士奇的特征去学习一个模型M2;
- 从要判断的这条狗中提取特征;
- 将提取的特征放到学习好的金毛的模型M1中得到概率P1,再放到学习好的哈士奇的模型M2中得到概率P2;
- P1和P2哪个更大,就是哪个品种。
2、判别式模型
- 从大量的历史数据中去学习一个模型M;
- 从要判断的这条狗中提取特征;
- 将提取的特征放到学习好的模型M来预测是金毛的概率P1和哈士奇的概率P2;
- P1和P2哪个更大,就是哪个品种。
3、总结
判别式模型只生成一种模型,而生成式模型会学习很多个模型(一般是有多少种类别,就会学习多少种模型)。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!