Loading [MathJax]/jax/output/HTML-CSS/fonts/STIX/fontdata.js
+ 朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。
- 对于给定的训练集,首先假设学习输入/输出的联合概率分布;然后基于次模型,利用贝叶斯定理求出喉炎概率最大的输出y。
朴素贝叶斯方法的学习与分类
基本方法
- 名词公式:
- 输入空间:(Xsubseteq R^n)
- 输出空间:(Y = {c_1, c_2, ..., c_K})
- 训练数据集合:(T={(x_1, y_1), (x_2, y_2), ..., (x_N, y_N)})
- 先验概率分布:(P(Y=c_k), k=1,2,...,K)
- 条件概率分布:(P(X=x|Y=c_k) = P(X^1=x^1, X^2=x^2, ..., X^n=x^n|Y=c_k))
- 后验概率(贝叶斯定理):(P(Y=c_k|X=x) = frac{P(X=x|Y=c_k)P(Y=c_k)} {sum_k P(X=x|Y=c_k)P(Y=c_k)})
计算过程
- 计算后验概率(朴素贝叶斯分类器的基本公式):
[P(Y=c_k|X=x) = frac{P(Y=c_k) prod_j P(X^j=x^j|Y=c_k) } {sum_k P(Y=c_k) prod_j P(X^j=x^j|Y=c_k)}
]
- 朴素贝叶斯分类器可表示为:
[y=f(x) =underset{c_k}{argmax} frac{P(Y=c_k) prod_j P(X^j=x^j|Y=c_k) } {sum_k P(Y=c_k) prod_j P(X^j=x^j|Y=c_k)}
]
- 上式中由于坟墓都相同,所以上式可以简化为:
[y=f(x) =underset{c_k}{argmax} P(Y=c_k) prod_j P(X^j=x^j|Y=c_k)
]
朴素贝叶斯法的参数估计
极大似然估计
-
输入:训练数据(T),其中(x_i=(x^1_i, x^2_i, ..., x^n_i))。
-
输出:实例的分类。
学习过程
- 计算先验概率以及条件概率
[P(Y=c_k) = frac{sum_{i=1}^{N} I(y_i=c_k) } {N}, k=1, 2, ..., K
]
[P(X^j=a_{jl}|Y=c_k) = frac{I(x^j_i=a_{jl}, y_i=c_k)} {sum_{i=1}^N I(y_i=c_k)}, j=1, 2, ..., n; l=1, 2, ..., S_j; k=1, 2, ..., K
]
- 对于给定的实例(x=(x^1, x^2, ..., x^n)),计算后验概率
[P(Y=c_k) prod_{j=1}^{n} P(X^j=x^j|Y=c_k)
]
- 去定实例的分类
[y=underset{c_k} {arg max} P(Y=c_k) prod_{j=1}^{n} P(X^j=x^j|Y=c_k)
]
贝叶斯估计
-
由于极大似然估计可能出现索要估计的概率为0的情况,这时会影响到后验概率的计算结果,使分类出现偏差。因此可以采用贝叶斯估计。
-
条件概率的贝叶斯估计是:
[P_{lambda}(X^j=x_{jl}|Y=c_k) = frac {sum_{i=1}^N I(x^j_i = a_{jl}, y=c_k) + lambda} {sum_{i=1}^N I(y_i=c_k) + S_j lambda}, lambda geq 0
]
等价于在各个取值的频数上赋予一个正数(lambda)。
(lambda=0)为极大似然估计;(lambda=1)时,称为拉普拉斯平滑