最近笔试经常遇到这类问题,所以就干脆总结一下。也让自己加深印象。
这是我参考西瓜书和网上各种资料,加上自己的理解总结的。
首先,假设我们要做的是监督学习的分类问题。训练集是样本X和标签C。测试的时候,给我一个X,然后模型来判断这个X到底属于哪一类。
1.决策函数
所以,我们可以训练一个函数f,令f(X)=C。这样下次给定一个X,将其带入到f中,就能得到预测的类别。f就是一个决策函数。
2.后验概率
还有一种方式,通过获取后验概率P(C|X)来决定X到底属于哪一类。这时我们需要求得每一类的P(C|X),然后选取P(C|X)最大的那一类,例如P(C1|X) > P(C2|X),那么我们就认为X的类别是C1。这种策略就是后验概率最大化。
那么后验概率的计算又分为两种。
1). 给定X,直接建模P(C|X)来预测C,。这样的模型就是“判别式模型”
2).先对联合概率分布P(X,C)建模,然后得到P(C|X)。这种方式是“生成式模型”。要利用公式:
P(C|X)=P(X,C)P(X)
P
(
C
|
X
)
=
P
(
X
,
C
)
P
(
X
)
总结:
1.利用决策函数f(X)或者P(C|X)建模的是判别式模型
常见的有:k近邻法、感知机、决策树、Logistic回归模型、最大熵模型、SVM、boosting方法和条件随机场等。
2.利用联合概率分布P(X,C)建模的是生成式模型
常见的有:朴素贝叶斯、HMM等