朴素贝叶斯算法

2019-12-17  本文已影响0人  Zaker_cook

问题

    1. 什么是朴素贝叶斯

    2. 怎么理解贝叶斯公式和朴素贝叶斯公式

    3. 朴素贝叶斯算法流程是怎样

    4. 朴素贝叶斯有哪些优缺点 

    5. 朴素贝叶斯其他模型       


1. 什么是朴素贝叶斯

        朴素贝叶斯是基于贝叶斯定理与假设特征之间是独立的分类方法


2. 贝叶斯公式的理解和朴素贝叶斯公式

        贝叶斯公式是用来描述两个条件概率之间的关系

        因为 P(X,Y) = P(X)P(Y|X) = P(Y)P(X|Y)

        则  P(Y|X) = \frac{P(Y)P(X|Y)}{P(X)}

    一些概率基础

            条件概率:在事件Y发生的条件下,事件X发生的概率,表示为 P(X|Y)

            联合概率:事件X和事件Y同时发生的概率,表示为P(X,Y) 

            全概率: 事件Y1,Y2,...,Yn 构成一个完备事件X,表示为P(X)

全概率

                                                P(X) = \sum_{i=1}^4 P(Y_{i})P(X|Y_{i})

贝叶斯公式如下

                        P(Y_{k}|X) = \frac{P(Y_{k})P(X|Y_{k})}{\sum_{i=1}^nP(Y_{i})P(X|Y_{i}) }

由于分母是一个固定值,所以贝叶斯公式可以缩写成

                        P(Y_k|X) = P(Y_{k})P(X|Y_{k})

 其中 P(Y_{k}) 是先验概率,P(Y_{k}|X)是后验概率,P(X|Y_{k}) 是条件概率(似然函数)

假设X=(x_{1},x_{2},...,x_{n}),Y=(y_{1},y_{2},...,y_{k})

为了避免X中的组合没有出现导致的错误,所以朴素贝叶斯假设特征之间相互独立

那么,朴素贝叶斯的公式可表示为

                        P(Y_{k}|X) \propto  P(Y_{k}) \Pi P(x_{i}|Y_{k})


3. 朴素贝叶斯算法流程

        a. 假设一个样本x = \{x_{1},x_{2},...,x_{m} \}, 其中x_{i} 是特征属性

        b. 类别C=\{ y_{1},...,y_{n} \}

        d. 根据贝叶斯公式,分别计算P(y_{1}| x), P(y_{2}|x),...,P(y_{m}|x)的值

        e.取 P(y_{k}|x) = max\{ P(y_{1}|x), P(y_{2}|x), ..., P(y_{m}|x)\}x就属于y_{k}类型


4. 朴素贝叶斯的优缺点

        优点

               a.  对小规模数据表现的较好,适合多分类任务

                b. 算法比较简单,容易理解

        缺点

                a. 朴素贝叶斯假设特征之间是相互独立的,但在实际过程中往往是不成立的,在特征相关性越大,分类效果越不好

                b. 对输入数据表达形式很敏感


5. 朴素贝叶斯其他模型

        高斯朴素贝叶斯

            当  特征属性是连续值  且服从高斯分布时,计算P(X|Y)可以直接使用高斯分布概率公式

                            P(X|Y) = g(x,\mu,\sigma ) = \frac{1}{\sigma \sqrt{2\Pi }  } e^{-\frac{(x-\mu )^2}{2\sigma ^2} }

              因此,只要计算出在各类别y_{k}中,各个特征的均值和方差

        多项式朴素贝叶斯

          当 特征属性是离散值 时,直接计算类别数目的占比作为先验概率和条件概率

                P(Y_{k}) = \frac{N_{Y_{k}}+a}{N+ka} , P(x_{i}|Y_{k})=\frac{N_{Y_k,x_{i}}+a}{N_{Y_{k}}+n_{x_{i}}a}

          其中N是总样本数,N_{Y_{k}}是类别为Y_{k}的样本数,N_{Y_{k},x_{i}}是类别为Y_{k}x_{i}的样本数

         k是类别个数,n_{x_{i}}是特征x_{i}中不同取值的个数

         a是平滑值,主要是用来克服条件概率为0的问题,当a=1时,是Laplace平滑,

         当0<a<1时,是Lidstone平滑,a=0时,不做平滑

        伯努利(0-1分布)朴素贝叶斯

             当 特征属性是连续值且服从伯努利分布,计算P(X|Y)可以使用伯努利概率公式

               P(x_{k}|Y) = P(1|Y)x_{k} + (1-P(1|Y))(1-x_{k})


参考资料

【1】朴素贝叶斯算法理解和实现

【2】朴素贝叶斯算法详解

【3】带你搞懂朴素贝叶斯

【4】朴素贝叶斯理论推导与三种常见模型

上一篇下一篇

猜你喜欢

热点阅读