第一章内容比较散乱,我在这里讲一些比较重要的地方
统计学习的目标:
即根据已有数据学习相应的模型,对于给定的输入x,将可以最大化
P
(
y
∣
x
)
P(y|x)
P(y∣x)的y作为预测结果。
这一目标的实现引出了两个分支:
生成模型和判别模型。
判别模型的目的是利用已有的数据,直接对决策的边界进行学习,即 P ( Y ∣ X ) 或 f ( X ) P(Y|X)或f(X) P(Y∣X)或f(X)。它专注于分类任务本身。
生成模型试图模拟数据生成的整个过程,即学习数据的联合概率分布 P(X, Y)。由于生成模型需要理解数据是如何产生的,它们可以提供关于数据分布的更多内在信息。
具体做法是利用贝叶斯定理,将
P
(
Y
∣
X
)
P(Y|X)
P(Y∣X)进行转换求解:
P
(
Y
∣
X
)
=
P
(
X
,
Y
)
P
(
X
)
=
P
(
Y
)
P
(
X
∣
Y
)
P
(
X
)
P(Y|X) = \frac{P(X,Y)}{P(X)} = \frac{P(Y)P(X|Y)}{P(X)}
P(Y∣X)=P(X)P(X,Y)=P(X)P(Y)P(X∣Y)
这里引入一个疑问,为什么要进行转化呢?对于给定的数据,求 P ( X ∣ Y ) P(X|Y) P(X∣Y)和 P ( X ∣ Y ) P(X|Y) P(X∣Y)有什么区别呢?
在学这一部分时我一直有这样的疑问,后来学习了朴素贝叶斯,我找到了问题所在。
这里的贝叶斯只是一种思想,他不是一种ML的算法。虽然在给定数据的情况下,两种条件概率的计算过程相同,但问题在于training data一般是实际分布的很小一部分。对于要预测的输入,可能在已有数据中无法找到对应。
eg: 我们输入X=(绿色,蜷缩),目标要判断P(Y=好瓜 | X = 绿色,蜷缩)P(Y=坏瓜 | X = 绿色,蜷缩),但是在已有的数据集中,可能不存在X=(绿色,蜷缩)的组合,两个P都为0,无法判断。这时就要用到贝叶斯定理,我们将P(Y=好瓜 | X = 绿色,蜷缩)转化:
P
(
Y
=
好瓜
∣
X
=
绿色,蜷缩)
=
P
(
X
=
绿色,蜷缩
,
Y
=
好瓜
P
(
X
=
绿色,蜷缩
)
=
P
(
Y
=
好瓜
)
P
(
X
=
绿色,蜷缩
∣
Y
=
好瓜
)
P
(
X
=
绿色,蜷缩
)
P(Y=好瓜 | X = 绿色,蜷缩) \\= \frac{P(X = 绿色,蜷缩,Y=好瓜}{P(X = 绿色,蜷缩)}\\ = \frac{P(Y=好瓜) P(X = 绿色,蜷缩 | Y = 好瓜)}{P(X = 绿色,蜷缩)}
P(Y=好瓜∣X=绿色,蜷缩)=P(X=绿色,蜷缩)P(X=绿色,蜷缩,Y=好瓜=P(X=绿色,蜷缩)P(Y=好瓜)P(X=绿色,蜷缩∣Y=好瓜)
到这里,我们似乎还是没有解决数据集合中没有 X = 绿色,蜷缩 X = 绿色,蜷缩 X=绿色,蜷缩的问题,所以说,贝叶斯只是一种思想,他没有上升到机器学习算法的层面。
在这个思想的基础上,我们加入朴素贝叶斯假设,即各个特征相互独立,上式分子可以变为:
P
(
Y
=
好瓜
)
P
(
X
=
绿色,蜷缩
∣
Y
=
好瓜
)
=
P
(
Y
=
好瓜
)
P
(
绿色
∣
好瓜
)
P
(
蜷缩
∣
好瓜
)
P(Y=好瓜) P(X = 绿色,蜷缩 | Y = 好瓜)\\ = P(Y=好瓜) P(绿色|好瓜) P(蜷缩|好瓜)
P(Y=好瓜)P(X=绿色,蜷缩∣Y=好瓜)=P(Y=好瓜)P(绿色∣好瓜)P(蜷缩∣好瓜)
此时,我们就可以通过已有数据分别进行好瓜坏瓜的概率计算。