朴素贝叶斯算法(Naive Bayes)
2021-05-23 16:29
标签:blog sum ... 样本 spl max 超出 特征 之间 说到朴素贝叶斯算法,首先牵扯到的一个概念是判别式和生成式。 朴素贝叶斯算法基于贝叶斯定理和特征条件独立假设。 输入:训练集为\(m\)个样本\(n\)个维度\(T={(x_1,y_1),(x_2,y_2),...,(x_m,y_m)}\),共有K个特征输出类别,分别为\(y\in{\{c_1,c_2,...,c_K}\}\). 输出:为实例\(x_{(test)}\)的分类。 算法流程如下: 从上面的计算可以看出,没有复杂的求导和矩阵运算,因此效率很高。 朴素贝叶斯算法的主要原理基本已经做了总结,这里对朴素贝叶斯的优缺点做一个总结。 朴素贝叶斯算法(Naive Bayes) 标签:blog sum ... 样本 spl max 超出 特征 之间 原文地址:https://www.cnblogs.com/huangyc/p/9734956.html1. 前言
2. 朴素贝叶斯原理
3. 朴素贝叶斯算法
\[
P(Y=c_k)
\]
\[
P(X=x|Y=c_k)=P(X^{(1)}=x^{(1)},...,X^{(n)}=x^{(n)}|Y=c_k)
\]
由于上式的参数是指数级别,无法计算。所以根据特征条件独立假设,可以化简为下式。
\[
P(X=x|Y=c_k)=\prod_{j=1}^nP(X^{(j)}=x^{(j)}|Y=c_k)
\]
\[
P(Y=c_k|X=x)=\frac{P(X=x|Y=c_k)P(Y=c_k)}{\sum_kP(X=x|Y=c_k)P(Y=c_k)}
\]
带入\(P(X=x|Y=c_k)=\prod_{j=1}^nP(X^{(j)}=x^{(j)}|Y=c_k)\)
得到
\[
P(Y=c_k|X=x)=\frac{\prod_{j=1}^nP(X^{(j)}=x^{(j)}|Y=c_k)P(Y=c_k)}{\sum_k\prod_{j=1}^nP(X^{(j)}=x^{(j)}|Y=c_k)P(Y=c_k)}
\]
由于分母相同,上式再变为如下:
\[
P(Y=c_k|X=x)=\prod_{j=1}^nP(X^{(j)}=x^{(j)}|Y=c_k)P(Y=c_k)
\]
\[
y_{(test)}=arg\ max_{c_k}\prod_{j=1}^nP(X^{(j)}=x_{(test)}^{(j)}|Y=c_k)P(Y=c_k)
\]
4. 朴素贝叶斯算法小结
4.1 朴素贝叶斯的主要优点有:
4.2 朴素贝叶斯的主要缺点有: