贝叶斯 | wsztrush 

JerryXia 发表于 , 阅读 (0)

概率论中,条件概率定义为:

$$
P(A|B) = \frac{P(AB)}{P(B)}
$$

表示$B$发生时$A$发生的概率,在条件概率上进行一步推导便得到贝叶斯定理:

$$
P(AB) = P(A|B) \times P(B) = P(B|A) \times P(A) \quad \Rightarrow \quad P(B|A) = \frac{P(A|B)\times P(B)}{P(A)}
$$

这里涉及到两个概念:

  • 先验概率:由因求果,事情还没有发生,求这件事情发生的可能性的大小;
  • 后验概率:执果寻因,事情已经发生了,求这件事情是由某个因素引起的可能性的大小;

比较流行的一个例子(对应的解释):

有三个门,其中一个里有汽车,只要选对就可以得到。当应试者选择一个门之后,主持人打开了另外一个门,空的。假设主持人知道车所在的门,问:应试者要不要换一个选择?

贝叶斯典型应用场景是邮件反垃圾:

  • A:单词
  • B:是否垃圾邮件

在给了一些样本后,如何来预测包含$A_1,A_2,A_3$的邮件是否为垃圾邮件?如果样本中包含很多同内容的邮件,那么可以直接计算$P(B|A)$,然而:

这是不可能的,总不能穷举所有垃圾邮件吧,而且很可能$A_1,A_2,A_3$同时出现的邮件样本中压根就没有。

所以后验概率的路子更靠谱一些。

朴素贝叶斯

假设各因素$X$相互独立(朴素的由来):

$$
\begin{align}
P(X=x|Y=c_k) & = P(X^{(1)}=x^{(1)},…,X^{(n)}=x^{(n)}|Y=c_k) \\
& = \prod_j P(X^{(j)}=x^{(j)}|Y=c_k)
\end{align}
$$

将其代入贝叶斯公式得到:

$$
\begin{align}
P(Y=c_k|X=x) & = \frac{P(X=x|Y=c_k) \times P(Y=c_k)}{\sum_k P(X=x|Y=c_k) \times P(Y=c_k)} \\
& = \frac{P(Y=c_k) \times \prod_j P(X^{(j)}=x^{(j)}|Y=c_k)}{\sum_k P(Y=c_k) \times \prod_j P(X^{(j)}=x^{(j)}|Y=c_k)}
\end{align}
$$

对于不同的分类($Y=c_k$)来说分母都一样,于是进一步简化后得到分类方法为:

$$
y = \arg \max_{c_k} P(Y=c_k)\prod_j P(X^{(j)}=x^{(j)}|Y=c_k)
$$

实际计算过程中要注意0的处理。

贝叶斯网络

TODO

参考