零、写在前面
参考资料:
- 《机器学习》周志华
- 斯坦福 CS 229 吴恩达
一、贝叶斯决策论
贝叶斯分类器显然是用于分类问题的,是一种监督学习的模型。最核心的过程是这样的:
在训练过程中,分类器要根据训练集中的好多好多组x(各个特征)和y(类别)学会做这样一件事:对于没见过的样本,能根据它的各个特征计算出他属于各个类别的概率。
继而在应用时,选择概率最高的那个样本作为输出结果。
其中 “根据它的各个特征(x)计算出他属于各个类别(c)的概率” 理解为条件概率:在具有特征x的条件下,属于类别c的概率。这概率我们记为P(c|x)P(c|x)。有时他也被称为似然(likelihood)。
只要得到了这个概率,剩下的事情就只有比较大小了,所以我们要关注怎样能比较准确地得到这个概率。大体来说有两种策略:
- 直接建模P(c|x)P(c|x),即这个模型要学会,输入给他一组特征x,能够输出它属于各个类别c的概率,即模型学到了特征x到类别c的映射。
- 另一种方法是反过来,要对P(x|c)P(x|c)建模,即对于每个类别,模型要试着了解,这个类别的样本的各个特征大概是什么样的。即对于联合概率P(x,c)P(x,c)建模,并以此来获得需要的P(c|x)P(c|x)。
第一种策略我们称之为判别式(discriminative)模型,像决策树,支持向量机,以及近几年大红大紫的神经网络都属于这样的类型。第二种曲线救国的策略我们称为生成式(generative)模型,本文要讨论的贝叶斯分类器就属于这一类型。
先说上面 “并以此来获得需要的P(c|x)P(c|x)”的方法——贝叶斯定理:
P(c|x)=P(c)P(x