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


    在这里插入图片描述

    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(y|x)=\frac{P(x|y)P(y)}{P(x)} P(yx)=P(x)P(xy)P(y)

    • 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)判别模型
    优点:

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

    缺点:

    • 是没有生成模型的上述优点。
  • 相关阅读:
    箱讯科技成功闯入第八届“创客中国”全国总决赛—在国际物流领域一枝独秀
    SpringBoot自定义注解+异步+观察者模式实现业务日志保存
    Python Requests 丨爬虫基础入门
    昨日阅读量700
    红外小目标:DNANet网络结构与模型搭建
    C# VS2022 EF6 + Mysql8.0.31 CodeFirsts使用配置
    朴素贝叶斯模型
    契约锁助力青岛市市立医院:报销、核酸检测及经济类合同电子签
    跳槽or裸辞?2022年真不建议···
    常见的设计模式(单例模式&工厂模式)
  • 原文地址:https://blog.csdn.net/weixin_43935696/article/details/125978489