生成式模型 VS 判别式模型

前言

  • 在学习机器学习中,有两种经典模型,生成式模型和判别式模型,本文尽量用通俗易懂的语言来说明这两者区别。
  • 以狗分类问题为例,简化之以二分类说明,狗分 A 种类,B 种类。

判别式模型(discriminative model)

现在有一只狗,然后呢,我们要求这是哪种类狗(A vs B)?
判别式模型是求解一个模型,如 y = w * x + b ,y > 0 为 A,y < 0 为 B
输入训练集,可以求解出 w 和 b,然后我们将 这只小狗的属性(颜色,年龄,爪子。。)输入模型,可以得到 y,y > 0 为 A,y < 0 为 B,则可以知道 这只狗是什么种类。

常见模型有:逻辑回归,SVM,神经网络

生成式模型 (generative model)

然后呢,生成式模型又如何解决呢,靠概率,如现在有一个模型 F, 我们把这只狗的参数输入进去,可以得到这只狗属于 A 的概率,也可以得到属于 B 的概率,看谁概率大,则这只狗属于哪一类。

常见模型有:朴素贝叶斯

简而言之

判别式模型需要利用 Gradient Descent求解参数 ,最终得到一个模型,然后把狗属性输入,可以直接得到狗的种类,而 生成式模型,没有参数,也就是没有 Gradient Descent ,输入狗的参数,可以直接得到狗属于哪个类别的概率。

参考资料

  • discriminative model 与 generative model
  • 模型小结

你可能感兴趣的:(生成式模型 VS 判别式模型)