【数据挖掘】生成模型和判别模型的区别及优缺点

简介: 文章讨论了生成模型和判别模型在数据挖掘中的区别、原理、优缺点,并提供了一些常见的模型示例。

1 区别

(1)判别模型

学习P(x|y)。是用一个模型或函数直接拟合概率分布P(y|x),拟合P(x|y),是拟合从果到因的关系,即在Y发生的条件下,X发生的概率,对应实际训练中,是根据label来训练模型,再来判断类别,这种拟合出来的模型叫判别模型。

(2)生成模型

学习P(y|x)。公式拆解为三个部分

P(Y|X)=P(X|Y)P(Y)P(X)�(�|�)=�(�|�)�(�)�(�)

  • P(x,y)是联合概率分布,是要拟合的东西,
  • P(x)表示x的概率
  • P(y)可通过样本的label直接求

则生成模型的过程解释为先拟合一个概率分布(本质是拟合P(x|y),因为P(x,y)=P(x|y)P(y)),再根据概率分布中最大的值,来判断数据的类型。拟合P(y|x),是拟合从因到果的关系,这种拟合出来的模型叫生成模型。说白了就是,生成模型根据联合概率分布可以采样生成数据。

注释:P ( x | y ):表示在Y发生的条件下,X发生的概率。P ( x , y ):是联合概率分布。P(x,y)=P(X=x and Y=y),就是同时对于X和Y的概率分布.

总结:直接拟合P (x|y)的是判别模型。直接拟合概念分布P(y,x),或者说间接拟合P(y|x)的是生成模型。

2 举例

(1)常见的判别模型

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

(2)常见的生成模型

  • LDA主题模型
  • 朴素贝叶斯
  • 混合高斯模型
  • 隐马尔科夫模型(HMM)!
  • 贝叶斯网络
  • Sigmoid Belief Networks
  • 马尔科夫随机场(Markov Random Fields)
  • 深度信念网络(DBN)

3 优缺点

(1)生成模型

优点:

  • 生成给出的是联合分布,不仅能够由联合分布计算条件概率分布,还可以给出其他信息,比如可以使用来计算边缘概率分布。如果一个输入样本的边缘分布很小的话,那么可以认为学习出的这个模型可能不太适合对这个样本进行分类,分类效果可能会不好,这也是所谓的outlier detection。
  • 生成模型收敛速度比较快,即当样本数量较多时,生成模型能更快地收敛于真实模型。
  • 生成模型能够解决存在隐变量的情况,比如混合高斯模型就是含有隐变量的生成方法。

缺点:

  • 联合分布虽然能提供更多的信息,但也需要更多的样本和更多计算。当为了更准确估计类别条件分布,需要增加样本的数目,而且类别条件概率的许多信息是我们做分类用不到,因而如果我们只需要做分类任务,就浪费了计算资源。
  • 实践中多数情况下,没有判别模型效果好。

(2)判别模型

优点:

  • 节省计算资源,需要的样本数量也少于生成模型。
  • 准确率往往较生成模型高。
  • 由于直接学习,而不需要求解类别条件概率,所以允许我们对输入进行抽象(比如降维、构造等),从而能够简化学习问题。

缺点:

  • 是没有生成模型的上述优点。
目录
相关文章
|
4月前
|
机器学习/深度学习 数据挖掘 Python
【数据挖掘】分类器模型性能评估讲解及iris数据集评估实战(超详细 附源码)
【数据挖掘】分类器模型性能评估讲解及iris数据集评估实战(超详细 附源码)
143 0
|
1月前
|
存储 机器学习/深度学习 缓存
【数据挖掘】XGBoost面试题:与GBDT的区别?为什么使用泰勒二阶展开?为什么可以并行训练?为什么快?防止过拟合的方法?如何处理缺失值?
XGBoost与GBDT的区别、XGBoost使用泰勒二阶展开的原因、并行训练的原理、速度优势、防止过拟合的策略以及处理缺失值的方法,突出了XGBoost在提升模型性能和训练效率方面的一系列优化。
31 1
|
1月前
|
机器学习/深度学习 算法 数据挖掘
【数据挖掘】 GBDT面试题:其中基分类器CART回归树,节点的分裂标准是什么?与RF的区别?与XGB的区别?
文章讨论了梯度提升决策树(GBDT)中的基分类器CART回归树的节点分裂标准,并比较了GBDT与随机森林(RF)和XGBoost(XGB)的区别,包括集成学习方式、偏差-方差权衡、样本使用、并行性、最终结果融合、数据敏感性以及泛化能力等方面的不同。
29 1
|
4月前
|
移动开发 算法 数据可视化
数据分享|Spss Modeler关联规则Apriori模型、Carma算法分析超市顾客购买商品数据挖掘实例
数据分享|Spss Modeler关联规则Apriori模型、Carma算法分析超市顾客购买商品数据挖掘实例
|
4月前
|
算法 数据挖掘 数据库
R语言主成分PCA、决策树、boost预警模型在跨区域犯罪研究数据挖掘分析|数据分享
R语言主成分PCA、决策树、boost预警模型在跨区域犯罪研究数据挖掘分析|数据分享
|
4月前
|
机器学习/深度学习 数据挖掘
使用SAS EnterpriseMiner进行数据挖掘:信用评分构建记分卡模型
使用SAS EnterpriseMiner进行数据挖掘:信用评分构建记分卡模型
|
4月前
|
机器学习/深度学习 算法 数据挖掘
【数据挖掘】模型选择中正则化、交叉验证详解及实战应用(超详细 附源码)
【数据挖掘】模型选择中正则化、交叉验证详解及实战应用(超详细 附源码)
96 0
|
11月前
|
机器学习/深度学习 数据采集 算法
【数据挖掘和机器学习技术】数据挖掘和机器学习相关的算法和模型,如聚类、分类、回归、神经网络
【数据挖掘和机器学习技术】数据挖掘和机器学习相关的算法和模型,如聚类、分类、回归、神经网络
136 0
|
机器学习/深度学习 算法 数据可视化
数据挖掘与决策树:特征选择和模型解释
数据挖掘是现代软件开发中的一个重要领域,它涉及从大量数据中提取有用信息和模式的过程。在数据挖掘中,决策树是一种广泛使用的机器学习算法,它可以用于分类和回归任务。在本文中,我们将探讨决策树中的特征选择和模型解释的重要性以及如何应用它们。
199 0
|
机器学习/深度学习 数据采集 存储
数据挖掘实践(金融风控):金融风控之贷款违约预测挑战赛(下篇)[xgboots/lightgbm/Catboost等模型]--模型融合:stacking、blending
数据挖掘实践(金融风控):金融风控之贷款违约预测挑战赛(下篇)[xgboots/lightgbm/Catboost等模型]--模型融合:stacking、blending

热门文章

最新文章