【AI】机器学习——朴素贝叶斯

这篇具有很好参考价值的文章主要介绍了【AI】机器学习——朴素贝叶斯。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

用于解决分类问题:将连续取值输入映射为离散取值的输出

解决分类问题的依据是数据的属性

  • 利用后验概率选择最佳分类,后验概率通过贝叶斯定理求解
  • 朴素贝叶斯假定所有属性相互独立,基于这一假设将类条件概率转化为属性条件概率的乘积
  • 朴素贝叶斯方法可以使期望风险最小化
  • 影响朴素贝叶斯分类的是所有属性之间的依赖关系在不同类别上的分布

2.1 贝叶斯定理

2.1.1 贝叶斯公式推导

条件概率

引例

3张抽奖券,1个中奖券,最后一名与第一名抽中奖概率相同

Y Y Y :抽中, N N N :未抽中 , Ω = { Y N N , N Y N , N N Y } \Omega=\{YNN,NYN,NNY\} Ω={YNN,NYN,NNY} A i A_i Ai 事件表示第 i i i 名抽中

P ( A 3 ) = ∣ A 3 ∣ ∣ Ω ∣ = 1 3 P(A_3)=\frac{\vert A_3\vert}{\vert \Omega\vert}=\frac{1}{3} P(A3)=∣Ω∣A3=31

P ( A 1 ) = ∣ A 1 ∣ ∣ Ω ∣ = 1 3 P(A_1)=\frac{\vert A_1\vert}{\vert \Omega\vert}=\frac{1}{3} P(A1)=∣Ω∣A1=31

上例中,若已知第一名未抽中,求第三名抽中概率,则:

第一名未抽中 B = { N Y N , N N Y } B=\{NYN,NNY\} B={NYN,NNY}

第二名抽中 A 2 = { N N Y } A_2=\{NNY\} A2={NNY}

P ( A 2 ∣ B ) = 1 2 P(A_2\vert B)=\frac{1}{2} P(A2B)=21


【AI】机器学习——朴素贝叶斯,AI,# 机器学习,机器学习,人工智能,概率论,贝叶斯定理,朴素贝叶斯

分析:样本空间变了,目标样本数量不变

事件B发生条件下,有事件A发生    ⟺    \iff 事件AB同时发生,样本空间为B

求解:

P ( A ∣ B ) = P ( A B ) P ( B )    ⟺    n ( A B ) / n ( Ω ) n ( B ) / n ( Ω ) = P ( A B ) P ( B ) P(A\vert B)=\frac{P(AB)}{P(B)}\iff\frac{n(AB)/n(\Omega)}{n(B)/n(\Omega)}=\frac{P(AB)}{P(B)} P(AB)=P(B)P(AB)n(B)/n(Ω)n(AB)/n(Ω)=P(B)P(AB)


eg

掷硬币,100个中有99个正常HT,一个HH。投出去是正面,该硬币是异常硬币的概率

A表示异常硬币的概率,B表示掷出正面的概率

  • P ( A ∣ B ) = 异常硬币正面 n ( 硬币正面 ) = 2 101 P(A\vert B)=\frac{异常硬币正面}{n(硬币正面)}=\frac{2}{101} P(AB)=n(硬币正面)异常硬币正面=1012

  • P ( A ∣ B ) = P ( A B ) P ( B ) = P ( A ∣ B ) P ( B ) P ( A ∣ B ) P ( B ) + P ( A ∣ B ‾ ) P ( B ‾ ) = 2 101 P(A\vert B)=\frac{P(AB)}{P(B)}=\frac{P(A\vert B)P(B)}{P(A\vert B)P(B)+P(A\vert \overline{B})P(\overline{B})}=\frac{2}{101} P(AB)=P(B)P(AB)=P(AB)P(B)+P(AB)P(B)P(AB)P(B)=1012

变式

乘法原理 P ( A B ) = P ( A ) P ( B ) P(AB)=P(A)P(B) P(AB)=P(A)P(B)

全概率公式

【AI】机器学习——朴素贝叶斯,AI,# 机器学习,机器学习,人工智能,概率论,贝叶斯定理,朴素贝叶斯

P ( B ) = P ( A 1 ⋂ B ) + ⋯ + P ( A n ⋂ B ) = P ( A 1 ) P ( B ∣ A 1 ) + ⋯ + P ( A n ) P ( B ∣ A n ) P(B)=P(A_1\bigcap B)+\cdots+P(A_n\bigcap B)=P(A_1)P(B\vert A_1)+\cdots+P(A_n)P(B\vert A_n) P(B)=P(A1B)++P(AnB)=P(A1)P(BA1)++P(An)P(BAn)

贝叶斯公式

对于条件概率 P ( A i ∣ B ) P(A_i\vert B) P(AiB)
P ( A i ∣ B ) = P ( A i B ) P ( B ) = P ( B ∣ A i ) P ( A i ) P ( B ) = P ( B ∣ A i ) P ( A i ) ∑ j = 1 n P ( B ∣ A j ) P ( A j ) P(A_i\vert B)=\frac{P(A_iB)}{P(B)}=\frac{P(B\vert A_i)P(A_i)}{P(B)}=\frac{P(B\vert A_i)P(A_i)}{\sum\limits_{j=1}^nP(B\vert A_j)P(A_j)} P(AiB)=P(B)P(AiB)=P(B)P(BAi)P(Ai)=j=1nP(BAj)P(Aj)P(BAi)P(Ai)

2.1.2 贝叶斯定理

P ( Y ∣ X ) = P ( X ∣ Y ) P ( Y ) P ( X ) P(Y\vert X)=\frac{P(X\vert Y)P(Y)}{P(X)} P(YX)=P(X)P(XY)P(Y)

  • P ( Y ∣ X ) P(Y\vert X) P(YX) :后验概率
  • P ( Y ) P(Y) P(Y) :先验概率
  • P ( X ∣ Y ) P(X\vert Y) P(XY) :似然概率

2.1.3 贝叶斯决策

在不完全的情报下,对部分未知状态 P ( Y ∣ X ) P(Y\vert X) P(YX) 用主观概率 P ( Y ) P(Y) P(Y) 估计,然后用贝叶斯公式对发生概率修正

利用期望风险与修正概率做出最优决策

基本思想
  1. 已知的样本密度 P ( X ) P(X) P(X) 和先验概率 P ( Y ) P(Y) P(Y)

    样本密度可由全概率公式求得, P ( X ) = ∑ i P ( X ∣ Y i ) P ( Y i ) P(X)=\sum\limits_{i} P(X\vert Y_i)P(Y_i) P(X)=iP(XYi)P(Yi)

  2. 利用贝叶斯公式转化为似然概率
    P ( Y ∣ X ) = P ( X ∣ Y ) P ( Y ) P ( X ) P(Y\vert X)=\frac{P(X\vert Y)P(Y)}{P(X)} P(YX)=P(X)P(XY)P(Y)

  3. 根据后验概率的大小,进行决策分类

eg

由统计,大约 0.1 % 0.1\% 0.1% 感染AIDS,所有感染者检测为阳性,有 1 % 1\% 1% 未感染者误检测为阳性,若某人检测结果为阳性,求检测阳性确定感染的概率

Y = 1 Y=1 Y=1 表示感染, X = 1 X=1 X=1 表示检测阳性

由于 0.1 % 0.1\% 0.1% 的人感染,在已知感染情况下检测必为阳性 P ( X = 1 ∣ Y = 1 ) P(X=1\vert Y=1) P(X=1∣Y=1)
P ( Y = 1 ∣ X = 1 ) = P ( X = 1 ∣ Y = 1 ) P ( Y = 1 ) P ( X = 1 ) = 1 × 0.001 1 × 0.001 + 0.01 × 0.999 P(Y=1\vert X=1)=\frac{P(X=1\vert Y=1)P(Y=1)}{P(X=1)}=\frac{1\times 0.001}{1\times 0.001+0.01\times 0.999} P(Y=1∣X=1)=P(X=1)P(X=1∣Y=1)P(Y=1)=1×0.001+0.01×0.9991×0.001


第二轮检测中, 90 % 90\% 90% 感染者为阳性, 5 % 5\% 5% 未感染者为阳性,求误诊率

P ( X 1 = 1 ) P(X_1=1) P(X1=1) 表示第一轮检测为阳性的概率; P ( X 2 = 1 ) P(X_2=1) P(X2=1) 表示第二轮检测为阳性的概率

由补充题设可知, P ( X 2 ∣ Y = 1 ) = 0.9 , P ( X 2 ∣ Y = 0 ) = 0.05 P(X_2\vert Y=1)=0.9,P(X_2\vert Y=0)=0.05 P(X2Y=1)=0.9,P(X2Y=0)=0.05
P ( Y = 0 ∣ X 1 = 1 , X 2 = 1 ) = P ( X 1 = 1 , X 2 = 1 ∣ Y = 0 ) ⋅ P ( Y = 0 ) P ( X 1 = 1 , X 2 = 1 ) 表示误诊率 P(Y=0\vert X_1=1,X_2=1)=\frac{P(X_1=1,X_2=1\vert Y=0)\cdot P(Y=0)}{P(X_1=1,X_2=1)} 表示误诊率 P(Y=0∣X1=1,X2=1)=P(X1=1,X2=1)P(X1=1,X2=1∣Y=0)P(Y=0)表示误诊率
其中,先验概率 P ( Y = 0 ) = 0.999 P(Y=0)=0.999 P(Y=0)=0.999

由全概率公式
P ( X 1 = 1 , X 2 = 1 ) = P ( X 1 = 1 , X 2 = 1 ∣ Y = 0 ) ⋅ P ( Y = 0 ) + P ( X 1 = 1 , X 2 = 1 ∣ Y = 1 ) ⋅ P ( Y = 1 ) \begin{aligned} P(X_1=1,X_2=1)&=P(X_1=1,X_2=1\vert Y=0)\cdot P(Y=0)\\ &+P(X_1=1,X_2=1\vert Y=1)\cdot P(Y=1) \end{aligned} P(X1=1,X2=1)=P(X1=1,X2=1∣Y=0)P(Y=0)+P(X1=1,X2=1∣Y=1)P(Y=1)

P ( X 1 = 1 , X 2 = 1 ∣ Y = 0 ) = 条件独立性假设 P ( X 1 = 1 ∣ Y = 0 ) ⋅ P ( X 2 = 1 ∣ Y = 0 ) = 0.01 × 0.05 P ( X 1 = 1 , X 2 = 1 ∣ Y = 1 ) = 条件独立性假设 P ( X 1 = 1 ∣ Y = 1 ) ⋅ P ( X 2 = 1 ∣ Y = 1 ) = 1 × 0.9 P(X_1=1,X_2=1\vert Y=0)\xlongequal{条件独立性假设}P(X_1=1\vert Y=0)\cdot P(X_2=1\vert Y=0)=0.01\times 0.05\\ P(X_1=1,X_2=1\vert Y=1)\xlongequal{条件独立性假设}P(X_1=1\vert Y=1)\cdot P(X_2=1\vert Y=1)=1\times 0.9 P(X1=1,X2=1∣Y=0)条件独立性假设 P(X1=1∣Y=0)P(X2=1∣Y=0)=0.01×0.05P(X1=1,X2=1∣Y=1)条件独立性假设 P(X1=1∣Y=1)P(X2=1∣Y=1)=1×0.9

2.2 朴素贝叶斯

2.2.1 朴素贝叶斯分类器思想

朴素贝叶斯分类器假定样本的不同属性满足条件独立性假设

其基本思想:分析待分类样本出现在每个输出类别的后验概率 P ( Y ∣ X ) P(Y\vert X) P(YX) ,并将取得最大后验概率的类别作为输出

假设训练数据的属性由 n n n 维随机变量 X X X 表示,其分类结果用随机变量 Y Y Y 表示,那么 X X X Y Y Y 的统计规律就可以用联合概率分布 P ( X , Y ) P(X,Y) P(X,Y) 表示,每一个具体的样本 ( x i , y i ) (x_i,y_i) (xi,yi) 都可以由 P ( X , Y ) P(X,Y) P(X,Y) 独立同分布生成——生成学习
P ( Y ∣ X ) = P ( X , Y ) P ( X ) = P ( Y ) ⋅ P ( X ∣ Y ) P ( X ) P(Y\vert X)=\frac{P(X,Y)}{P(X)}=\frac{P(Y)\cdot P(X\vert Y)}{P(X)} P(YX)=P(X)P(X,Y)=P(X)P(Y)P(XY)
P ( Y ) P(Y) P(Y) 表示每个类别出现的概率,也就是类 先验概率

  • 先验概率容易根据训练数据计算出来,只需要分别统计不同类别样本的数量即可

P ( X ∣ Y ) P(X\vert Y) P(XY) 表示在给定的类别下不同属性出现的概率,即类似然概率

  • 似然概率受属性值的影响

2.2.2 条件独立性对似然概率计算的影响

如果每个样本包含 100 个属性,每个属性取值可能有 100 种,那么对分类的每个结果,要计算的条件概率数目就是 10 0 100 100^{100} 100100 ,对似然概率的精确估计就需要庞大的计算量

在条件独立性假设的前提下,保证了所有属性相互独立,互不影响。每个属性独立地对分类结果发生作用,即
P ( X = x ∣ Y = c k ) = P ( X ( 1 ) = x ( 1 ) , X ( 2 ) = x ( 2 ) , ⋯   , X ( m ) = x ( m ) ∣ Y = c k ) = 所有属性相互独立 ∏ j = 1 m P ( X ( j ) = x ( j ) ∣ Y = c k ) P(X=x\vert Y=c_k)=P\left(X^{(1)}=x^{(1)},X^{(2)}=x^{(2)},\cdots,X^{(m)}=x^{(m)}\vert Y=c_k\right)\\ \xlongequal{所有属性相互独立}\prod\limits_{j=1}^mP(X^{(j)}=x^{(j)}\vert Y=c_k) P(X=xY=ck)=P(X(1)=x(1),X(2)=x(2),,X(m)=x(m)Y=ck)所有属性相互独立 j=1mP(X(j)=x(j)Y=ck)
在条件独立性假设下,将类条件概率转化为属性条件概率的乘积

在没有条件独立性假设的情况下,每个样本分类结果 y y y 只能刻画所有属性 X ( 1 ) , X ( 2 ) , ⋯   , X ( m ) X^{(1)},X^{(2)},\cdots,X^{(m)} X(1),X(2),,X(m) 形成的整体,且只有具有相同属性的样本才能放在一起评价

  • 当属性数目较多而样本数目较少时,要让 m m m 个属性取到相同特征就有些牵强

有了条件独立性假设后,分类结果 y y y 就相当于实现了 m m m 重复用。每个样本既可以用于刻画 X ( 1 ) X^{(1)} X(1) ,又可以刻画 X ( n ) X^{(n)} X(n)

  • 无形中将训练样本的数量扩大为原先的 m m m

分析每个属性取值对分类结果的影响时,也有更多的数据作为支撑


条件独立性假设是一个很强的假设,导致对数据的过度简化,因而对性能带来些许影响。但由于其极大简化分类问题计算复杂度的能力,性能上做部分折衷也并非不能接受

2.2.3 基本方法

  1. 求先验概率分布 P ( Y = c k ) , k = 1 , 2 , ⋯   , K P(Y=c_k),k=1,2,\cdots,K P(Y=ck),k=1,2,,K

  2. 求似然概率分布
    P ( X ∣ Y = c k ) = P ( X ( 1 ) = x ( 1 ) , X ( 2 ) = x ( 2 ) , ⋯   , X ( m ) = x ( m ) ∣ Y = c k ) = 实际 P ( X ( 2 ) = x ( 2 ) , ⋯   , X ( m ) = x ( m ) ∣ X ( 1 ) = x ( 1 ) , Y = c k ) P ( X ( 1 ) = x ( 1 ) ) = P ( X ( 3 ) = x ( 3 ) , ⋯   , X ( m ) = x ( m ) ∣ X ( 1 ) = x ( 1 ) , X ( 2 ) = x ( 2 ) , Y = c k ) P ( X ( 1 ) = x ( 1 ) ) P ( X ( 2 ) = x ( 2 ) ) = 朴素贝叶斯 i i d P ( X ( 1 ) = x ( 1 ) ∣ Y = c k ) P ( X ( 2 ) = x ( 2 ) ∣ Y = c k ) ⋯ P ( X ( m ) = x ( m ) ∣ Y = c k ) = ∏ j = 1 m P ( X ( j ) = x ( j ) ∣ Y = c k ) \begin{aligned} P(X\vert Y=c_k)&=P(X^{(1)}=x^{(1)},X^{(2)}=x^{(2)},\cdots,X^{(m)}=x^{(m)}\vert Y=c_k)\\ &\xlongequal{实际}P(X^{(2)}=x^{(2)},\cdots,X^{(m)}=x^{(m)}\vert X^{(1)}=x^{(1)},Y=c_k)P(X^{(1)}=x^{(1)})\\ &=P(X^{(3)}=x^{(3)},\cdots,X^{(m)}=x^{(m)}\vert X^{(1)}=x^{(1)},X^{(2)}=x^{(2)},Y=c_k)P(X^{(1)}=x^{(1)})P(X^{(2)}=x^{(2)})\\ &\xlongequal{朴素贝叶斯iid}P(X^{(1)}=x^{(1)}\vert Y=c_k)P(X^{(2)}=x^{(2)}\vert Y=c_k)\cdots P(X^{(m)}=x^{(m)}\vert Y=c_k)\\ &=\prod\limits_{j=1}^mP(X^{(j)}=x^{(j)}\vert Y=c_k) \end{aligned} P(XY=ck)=P(X(1)=x(1),X(2)=x(2),,X(m)=x(m)Y=ck)实际 P(X(2)=x(2),,X(m)=x(m)X(1)=x(1),Y=ck)P(X(1)=x(1))=P(X(3)=x(3),,X(m)=x(m)X(1)=x(1),X(2)=x(2),Y=ck)P(X(1)=x(1))P(X(2)=x(2))朴素贝叶斯iid P(X(1)=x(1)Y=ck)P(X(2)=x(2)Y=ck)P(X(m)=x(m)Y=ck)=j=1mP(X(j)=x(j)Y=ck)

  3. 由贝叶斯定理计算
    P ( Y = c k ∣ X ) = P ( X ∣ Y = c k ) P ( Y = c k ) P ( X ) = P ( X ∣ Y = c k ) P ( Y = c k ) ∑ k = 1 K P ( X ∣ Y = c k ) P ( Y = c k ) = P ( Y = c k ) ∏ j = 1 m P ( X ( j ) = x ( j ) ∣ Y = c k ) ∑ k = 1 K P ( Y = c k ) ∏ j = 1 m P ( X ( j ) = x ( j ) ∣ Y = c k ) \begin{aligned} P(Y=c_k\vert X)&=\frac{P(X\vert Y=c_k)P(Y=c_k)}{P(X)}=\frac{P(X\vert Y=c_k)P(Y=c_k)}{\sum\limits_{k=1}^KP(X\vert Y=c_k)P(Y=c_k)}\\ &=\frac{P(Y=c_k)\prod\limits_{j=1}^mP(X^{(j)}=x^{(j)}\vert Y=c_k)}{\sum\limits_{k=1}^KP(Y=c_k)\prod\limits_{j=1}^mP(X^{(j)}=x^{(j)}\vert Y=c_k)} \end{aligned} P(Y=ckX)=P(X)P(XY=ck)P(Y=ck)=k=1KP(XY=ck)P(Y=ck)P(XY=ck)P(Y=ck)=k=1KP(Y=ck)j=1mP(X(j)=x(j)Y=ck)P(Y=ck)j=1mP(X(j)=x(j)Y=ck)

2.2.4 模型

y = f ^ ( X ) = a r g max ⁡ c k P ( Y = c k ∣ X ) = a r g max ⁡ c k P ( Y = c k ) ∏ j = 1 m P ( X ( j ) = x ( j ) ∣ Y = c k ) P ( X ) ∝ a r g max ⁡ c k P ( Y = c k ) ∏ j = 1 m P ( X ( j ) = x ( j ) ∣ Y = c k ) \begin{aligned} y=\hat{f}(X)&=arg\max\limits_{c_k}P(Y=c_k\vert X)\\ &=arg\max\limits_{c_k}\frac{P(Y=c_k)\prod\limits_{j=1}^mP(X^{(j)}=x^{(j)}\vert Y=c_k)}{P(X)}\\ &\propto arg\max\limits_{c_k}P(Y=c_k)\prod\limits_{j=1}^mP(X^{(j)}=x^{(j)}\vert Y=c_k) \end{aligned} y=f^(X)=argckmaxP(Y=ckX)=argckmaxP(X)P(Y=ck)j=1mP(X(j)=x(j)Y=ck)argckmaxP(Y=ck)j=1mP(X(j)=x(j)Y=ck)

有了训练数据,先验概率 P ( Y ) P(Y) P(Y) 和似然概率 P ( X ∣ Y ) P(X\vert Y) P(XY) 就可被视为已知条件,进而可用于求解后验概率 P ( Y ∣ X ) P(Y\vert X) P(YX)

对于给定的输入 X X X ,朴素贝叶斯分类器就可以利用贝叶斯定理求解后验概率,并将后验概率最大的类作为输出

由于所有的后验概率求解中,边界概率 P ( X ) P(X) P(X) 都是相同的,因而其影响可忽略,有朴素贝叶斯分类器的数学表达式
y ∝ a r g max ⁡ c k P ( Y = c k ) ⋅ ∏ j m P ( X ( j ) = x ( j ) ∣ Y = c k ) y\propto arg\max\limits_{c_k}P(Y=c_k)\cdot \prod\limits_{j}^mP(X^{(j)}=x^{(j)}\vert Y=c_k) yargckmaxP(Y=ck)jmP(X(j)=x(j)Y=ck)

后验概率最大化

朴素贝叶斯将实例分到后验概率最大的类中,等价于 期望风险最小化策略

损失函数

L ( Y , f ( X ) ) = { 1 , Y ≠ f ^ ( X ) 0 , Y = f ^ ( X ) L(Y,f(X))=\begin{cases} 1&,Y\neq \hat{f}(X)\\ 0&,Y=\hat{f}(X) \end{cases} L(Y,f(X))={10,Y=f^(X),Y=f^(X)

期望风险
R e x p ( f ) = E [ L ( Y , f ( X ) ) ] = ∫ X Y L ( y , f ^ ( x ) ) ⋅ P ( x , y ) d x d y = ∑ k = 1 K [ L ( y , f ^ ( x ) ) ⋅ P ( y ∣ x ) ] \begin{aligned} R_{exp}(f)&=E[L(Y,f(X))]\\ &=\int_{\mathcal{XY}}L(y,\hat{f}(x))\cdot P(x,y)dxdy\\ &=\sum\limits_{k=1}^{^K}[L(y,\hat{f}(x))\cdot P(y\vert x)] \end{aligned} Rexp(f)=E[L(Y,f(X))]=XYL(y,f^(x))P(x,y)dxdy=k=1K[L(y,f^(x))P(yx)]

期望风险最小化策略

f ( X ) = a r g min ⁡ y ∈ Y ∑ k = 1 K [ L ( y = c k , f ^ ( x ) ) ⋅ P ( y ∣ x ) ] = a r g min ⁡ y ∈ Y ∑ k = 1 K P ( y ≠ c k ∣ x ) = a r g min ⁡ y ∈ Y ∑ k = 1 K [ 1 − P ( y = c k ∣ x ) ] = a r g max ⁡ y ∈ Y ∑ k = 1 K P ( y = c k ∣ x ) \begin{aligned} f(X)&=arg\min\limits_{y\in \mathcal{Y}}\sum\limits_{k=1}^{^K}[L(y=c_k,\hat{f}(x))\cdot P(y\vert x)]\\ &=arg\min\limits_{y\in \mathcal{Y}}\sum\limits_{k=1}^{K}P(y\neq c_k\vert x)\\ &=arg\min\limits_{y\in \mathcal{Y}}\sum\limits_{k=1}^{K}[1-P(y= c_k\vert x)]\\ &=arg\max\limits_{y\in \mathcal{Y}}\sum\limits_{k=1}^{K}P(y= c_k\vert x) \end{aligned} f(X)=argyYmink=1K[L(y=ck,f^(x))P(yx)]=argyYmink=1KP(y=ckx)=argyYmink=1K[1P(y=ckx)]=argyYmaxk=1KP(y=ckx)

期望风险最小化策略 变为 后验概率最大化策略

2.2.5 朴素贝叶斯估计离散特征

意味着用频率对 先验概率 P ( Y = c k ) P(Y=c_k) P(Y=ck) ,似然概率 P ( X ( j ) = x ( j ) ∣ Y = c k ) P(X^{(j)}=x^{(j)}\vert Y=c_k) P(X(j)=x(j)Y=ck) 做出估计

其中,

先验概率 P ( Y = c k ) = ∑ i = 1 n I ( y i = c k ) n , k = 1 , ⋯   , K P(Y=c_k)=\frac{\sum\limits_{i=1}^nI(y_i=c_k)}{n},k=1,\cdots,K P(Y=ck)=ni=1nI(yi=ck),k=1,,K

似然概率 P ( X ( j ) = x ( j ) ∣ Y = c k ) P(X^{(j)}=x^{(j)}\vert Y=c_k) P(X(j)=x(j)Y=ck) 可用极大似然估计
P ( X ( j ) = x ( j ) ∣ Y = c k ) = P ( X ( j ) = x ( j ) , Y = c k ) P ( Y = c k ) = ∑ i = 1 n I ( X i ( j ) = x ( j ) , y i = c k ) n ∑ i = 1 n I ( y i = c k ) n = I ( X i ( j ) = x ( j ) , y i = c k ) ∑ i = 1 n I ( y i = c k ) , 特征 j = 1 , 2 , ⋯   , m ; k = 1 , ⋯   , K \begin{aligned} P(X^{(j)}=x^{(j)}\vert Y=c_k)&=\frac{P(X^{(j)}=x^{(j)},Y=c_k)}{P(Y=c_k)}\\ &=\frac{\frac{\sum\limits_{i=1}^nI(X_i^{(j)}=x^{(j)},y_i=c_k)}{n}}{\frac{\sum\limits_{i=1}^nI(y_i=c_k)}{n}}\\ &=\frac{I(X_i^{(j)}=x^{(j)},y_i=c_k)}{\sum\limits_{i=1}^nI(y_i=c_k)}\quad,特征j=1,2,\cdots,m;\quad k=1,\cdots,K \end{aligned} P(X(j)=x(j)Y=ck)=P(Y=ck)P(X(j)=x(j),Y=ck)=ni=1nI(yi=ck)ni=1nI(Xi(j)=x(j),yi=ck)=i=1nI(yi=ck)I(Xi(j)=x(j),yi=ck),特征j=1,2,m;k=1,,K

学习算法

输入:训练数据 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯   , ( x n , y n ) } T=\{(x_1,y_1),(x_2,y_2),\cdots,(x_n,y_n)\} T={(x1,y1),(x2,y2),,(xn,yn)} ,其中

  • 假设 P ( X , Y ) P(X,Y) P(X,Y) 是X,Y的联合概率分布,样本 ( x i , y i ) (x_i,y_i) (xi,yi) P ( X , Y ) P(X,Y) P(X,Y) 独立同分布产生

x i = ( x i ( 1 ) x i ( 2 ) ⋮ x i ( j ) ⋮ x i ( m ) ) ∈ X ⊆ R m , y i ∈ Y = { c 1 , c 2 , ⋯   , c k } i = 1 , 2 , ⋯   , n ; j = 1 , 2 , ⋯   , m x i ( j ) ∈ { a j 1 , a j 2 , ⋯   , a j s j } , a j l 为第 j 个特征的可能取值, l = 1 , 2 , ⋯   , s j x_i=\left( \begin{aligned} &x_i^{(1)}\\ &x_i^{(2)}\\ &\vdots\\ &x_i^{(j)}\\ &\vdots\\ &x_i^{(m)} \end{aligned} \right)\in \mathcal{X}\subseteq R^m,y_i\in\mathcal{Y=} \{c_1,c_2,\cdots,c_k\}\\ i=1,2,\cdots,n;j=1,2,\cdots,m\\ x_i^{(j)}\in \{a_{j1},a_{j2},\cdots,a_{js_j}\},a_{jl}为第j个特征的可能取值,l=1,2,\cdots,s_j xi= xi(1)xi(2)xi(j)xi(m) XRm,yiY={c1,c2,,ck}i=1,2,,n;j=1,2,,mxi(j){aj1,aj2,,ajsj},ajl为第j个特征的可能取值,l=1,2,,sj

输出 x x x 的分类 c k c_k ck

步骤

  1. 计算先验与似然概率

    先验概率 P ( Y = c k ) = ∑ i = 1 n I ( y i = c k ) n , k = 1 , ⋯   , K P(Y=c_k)=\frac{\sum\limits_{i=1}^nI(y_i=c_k)}{n},k=1,\cdots,K P(Y=ck)=ni=1nI(yi=ck),k=1,,K
    似然概率 P ( X ( j ) = a j l ∣ Y = c k ) = P ( X ( j ) = a j l , Y = c k ) P ( Y = c k ) = I ( X i ( j ) = a j l , y i = c k ) ∑ i = 1 n I ( y i = c k ) j = 1 , 2 , ⋯   , n l = 1 , 2 , ⋯   , s j k = 1 , 2 , ⋯   , K \begin{aligned} 似然概率\quad P(X^{(j)}=a_{jl}\vert Y=c_k)&=\frac{P(X^{(j)}=a_{jl},Y=c_k)}{P(Y=c_k)}\\ &=\frac{I(X_i^{(j)}=a_{jl},y_i=c_k)}{\sum\limits_{i=1}^nI(y_i=c_k)}\\ &j=1,2,\cdots,n\qquad l=1,2,\cdots,s_j\qquad k=1,2,\cdots,K \end{aligned} 似然概率P(X(j)=ajlY=ck)=P(Y=ck)P(X(j)=ajl,Y=ck)=i=1nI(yi=ck)I(Xi(j)=ajl,yi=ck)j=1,2,,nl=1,2,,sjk=1,2,,K

  2. 给定样本 x x x ,计算
    P ( Y = c k ∣ X ) ∝ P ( Y = c k ) ⋅ ∏ j m P ( X ( j ) = x ( j ) ∣ Y = c k ) , k = 1 , 2 , ⋯   , K P(Y=c_k\vert X)\propto P(Y=c_k)\cdot \prod\limits_{j}^mP(X^{(j)}=x^{(j)}\vert Y=c_k)\quad ,k=1,2,\cdots,K P(Y=ckX)P(Y=ck)jmP(X(j)=x(j)Y=ck),k=1,2,,K

  3. 确定实例 x x x 的类
    y = a r g max ⁡ c k P ( Y = c k ) ⋅ ∏ j m P ( X ( j ) = x ( j ) ∣ Y = c k ) , k = 1 , 2 , ⋯   , K = a r g max ⁡ c k ∑ i = 1 n I ( y i = c k ) n ∏ j = 1 m I ( X i ( j ) = a j l , y i = c k ) ∑ i = 1 n I ( y i = c k ) \begin{aligned} y&=arg\max\limits_{c_k}P(Y=c_k)\cdot \prod\limits_{j}^mP(X^{(j)}=x^{(j)}\vert Y=c_k)\quad ,k=1,2,\cdots,K\\ &=arg\max\limits_{c_k}\frac{\sum\limits_{i=1}^nI(y_i=c_k)}{n}\prod\limits_{j=1}^m\frac{I(X_i^{(j)}=a_{jl},y_i=c_k)}{\sum\limits_{i=1}^nI(y_i=c_k)} \end{aligned} y=argckmaxP(Y=ck)jmP(X(j)=x(j)Y=ck),k=1,2,,K=argckmaxni=1nI(yi=ck)j=1mi=1nI(yi=ck)I(Xi(j)=ajl,yi=ck)

2.3 朴素贝叶斯分类器分析

朴素贝叶斯是一种非常高效的方法。当以分类的正确与否作为误差指标时,只要朴素贝叶斯分类器能够把最大的后验概率找到,就意味着分类正确。至于最大后验概率的估计值是否精确,就不重要了

  • 对于一个2分类问题,在一个实例上两个类别的最大后验概率分别是 0.9和0.1,朴素贝叶斯分类器估计出的后验概率就可能是0.6和0.4。由于大小相对关系没有改变,按照估计的后验概率分类,仍然能得到正确的结果

2.3.1 条件独立性假设分析

如何解释独立性假设在几乎不成立的情况下,朴素贝叶斯分类器在大多数分类任务中体现出优良特性?

影响朴素贝叶斯的分类的是所有属性之间的依赖关系在不同类别上的分布,而不是依赖关系本身

  • 在给定训练数据集上,两个属性之间可能具有相关性,但在每个类别上都以相同的程度体现,这种情况下不会破坏贝叶斯分类器的最优性
  • 即使这种分布式不均匀的,当所有属性之间的依赖关系一起发挥作用时,他们就可能相互抵消,不再次影响分类

2.3.2 期望风险最小化

在应用朴素贝叶斯分类器处理连续性属性数据时,通常假定属性数据满足正态分布,再根据每个类别下的训练数据计算出正态分布的均值和方差

从模型最优化角度观察,朴素贝叶斯分类器是平均意义上预测能力最优的模型,也就是使得 期望风险最小化

  • 期望风险:风险函数的数学期望,度量平均意义下模型预测的误差特性。

    可视为单次预测误差在联合概率分布 P ( X , Y ) P(X,Y) P(X,Y) 上的数学期望

期望风险最小化    ⟺    \iff 后验概率最大化

朴素贝叶斯分类器通过将实例分配到后验概率最大的类中,也就是让 1 − P ( Y ∣ X ) 1-P(Y\vert X) 1P(YX) 最小。

在以分类错误的是 实例数作为误差时,期望风险就等于 1 − P ( Y ∣ X ) 1-P(Y\vert X) 1P(YX)

2.3.3 拉普拉斯平滑

为了避免属性携带的信息被训练过程中未出现的属性值所干扰,在计算属性条件概率时,添加一个 拉普拉斯平滑 的步骤

  • 受到训练集规模的限制,某些属性的取值训练集中可能从未与某个类同时出现,导致属性的条件概率为0,进而使似然概率为0,使分类产生偏差

先验概率 P λ ( Y = c k ) = ∑ i = 1 n I ( y i = c k ) + λ n + K λ , k = 1 , ⋯   , K P_{\lambda}(Y=c_k)=\frac{\sum\limits_{i=1}^nI(y_i=c_k)+\lambda}{n+K\lambda},k=1,\cdots,K Pλ(Y=ck)=n+Kλi=1nI(yi=ck)+λ,k=1,,K

似然概率 P ( X ( j ) = a j l ∣ Y = c k ) = I ( X i ( j ) = a j l , y i = c k ) + λ ∑ i = 1 n I ( y i = c k ) + s j λ P(X^{(j)}=a_{jl}\vert Y=c_k) =\frac{I(X_i^{(j)}=a_{jl},y_i=c_k)+\lambda}{\sum\limits_{i=1}^nI(y_i=c_k)+s_j\lambda} P(X(j)=ajlY=ck)=i=1nI(yi=ck)+sjλI(Xi(j)=ajl,yi=ck)+λ

  • ∑ l = 1 s j P ( X ( j ) = a j l ∣ Y = c k ) = ∑ l = 1 s j I ( X i ( j ) = a j l , y i = c k ) + λ ∑ i = 1 n I ( y i = c k ) + s j λ = 1 \sum\limits_{l=1}^{s_j}P(X^{(j)}=a_{jl}\vert Y=c_k) =\sum\limits_{l=1}^{s_j}\frac{I(X_i^{(j)}=a_{jl},y_i=c_k)+\lambda}{\sum\limits_{i=1}^nI(y_i=c_k)+s_j\lambda}=1 l=1sjP(X(j)=ajlY=ck)=l=1sji=1nI(yi=ck)+sjλI(Xi(j)=ajl,yi=ck)+λ=1

2.4 应用

比赛结果预测

【AI】机器学习——朴素贝叶斯,AI,# 机器学习,机器学习,人工智能,概率论,贝叶斯定理,朴素贝叶斯

【AI】机器学习——朴素贝叶斯,AI,# 机器学习,机器学习,人工智能,概率论,贝叶斯定理,朴素贝叶斯

【AI】机器学习——朴素贝叶斯,AI,# 机器学习,机器学习,人工智能,概率论,贝叶斯定理,朴素贝叶斯

【AI】机器学习——朴素贝叶斯,AI,# 机器学习,机器学习,人工智能,概率论,贝叶斯定理,朴素贝叶斯

【AI】机器学习——朴素贝叶斯,AI,# 机器学习,机器学习,人工智能,概率论,贝叶斯定理,朴素贝叶斯

【AI】机器学习——朴素贝叶斯,AI,# 机器学习,机器学习,人工智能,概率论,贝叶斯定理,朴素贝叶斯

【AI】机器学习——朴素贝叶斯,AI,# 机器学习,机器学习,人工智能,概率论,贝叶斯定理,朴素贝叶斯

垃圾邮件过滤

分类: y ∈ { 0 , 1 } y\in \{0,1\} y{0,1} 表示是否为垃圾邮件;1表示垃圾邮件,0表示正常邮件

用词汇表向量 x ∈ { 0 , 1 } 50000 x\in \{0,1\}^{50000} x{0,1}50000 表示词汇表中的50000个词是否出现在邮件中

先验概率 P ( y = 1 ) = ∑ i = 1 n I ( y i = 1 ) n P(y=1)=\frac{\sum\limits_{i=1}^nI(y_i=1)}{n} P(y=1)=ni=1nI(yi=1)

P ( Y ∣ X ′ ) = P ( X ′ ∣ Y ) P ( Y ) ∑ i P ( X ′ ∣ Y ) P ( Y ) P ( y = 1 ∣ x ′ ) = P ( x ′ ∣ y = 1 ) P ( y = 1 ) P ( x ′ ∣ y = 1 ) P ( y = 1 ) + P ( x ′ ∣ y = 0 ) P ( y = 0 ) ∝ P ( x ′ ∣ y = 1 ) P ( y = 1 ) P ( x ′ ∣ y = 1 ) = P ( x ( 1 ) , x ( 2 ) , ⋯   , x ( 50000 ) ∣ y = 1 ) = 朴素贝叶斯条件独立性假设 ∏ i = 1 50000 P ( x ( i ) ∣ y = 1 ) \begin{aligned} P(Y\vert X')&=\frac{P(X'\vert Y)P(Y)}{\sum\limits_{i}P(X'\vert Y)P(Y)}\\ P(y=1\vert x')&=\frac{P(x'\vert y=1)P(y=1)}{P(x'\vert y=1)P(y=1)+P(x'\vert y=0)P(y=0)}\propto P(x'\vert y=1)P(y=1)\\ P(x'\vert y=1)&=P(x^{(1)},x^{(2)},\cdots,x^{(50000)}\vert y=1) \xlongequal{朴素贝叶斯条件独立性假设}\prod\limits_{i=1}^{50000}P(x^{(i)}\vert y=1)\\ \end{aligned} P(YX)P(y=1∣x)P(xy=1)=iP(XY)P(Y)P(XY)P(Y)=P(xy=1)P(y=1)+P(xy=0)P(y=0)P(xy=1)P(y=1)P(xy=1)P(y=1)=P(x(1),x(2),,x(50000)y=1)朴素贝叶斯条件独立性假设 i=150000P(x(i)y=1)

对于似然概率 P ( x ( i ) ∣ y = 1 ) = ∑ j = 1 n I ( y j = 1 ∧ x ( i ) = 1 ) ∑ k = 1 n I ( y k = 1 ) P(x^{(i)}\vert y=1)=\frac{\sum\limits_{j=1}^nI(y_j=1 \land x^{(i)}=1)}{\sum\limits_{k=1}^nI(y_k=1)} P(x(i)y=1)=k=1nI(yk=1)j=1nI(yj=1x(i)=1)

∴ P ( y = 1 ∣ x ′ ) ∝ P ( x ′ ∣ y = 1 ) P ( y = 1 ) [ ∏ i = 1 50000 ∑ j = 1 n I ( y j = 1 ∧ x ( i ) = 1 ) ∑ j = 1 n I ( y j = 1 ) ] ⋅ ∑ i = 1 n I ( y i = 1 ) n = p 1 P ( y = 0 ∣ x ′ ) ∝ P ( x ′ ∣ y = 0 ) P ( y = 0 ) [ ∏ i = 1 50000 ∑ j = 1 n I ( y j = 0 ∧ x ( i ) = 1 ) ∑ j = 1 n I ( y j = 0 ) ] ⋅ ∑ i = 1 n I ( y i = 0 ) n = p 0 \therefore P(y=1\vert x')\propto P(x'\vert y=1)P(y=1)\left[\prod\limits_{i=1}^{50000}\frac{\sum\limits_{j=1}^nI(y_j=1\land x^{(i)}=1)}{\sum\limits_{j=1}^nI(y_j=1)}\right]\cdot \frac{\sum\limits_{i=1}^nI(y_{i}=1)}{n}=p_1\\ P(y=0\vert x')\propto P(x'\vert y=0)P(y=0)\left[\prod\limits_{i=1}^{50000}\frac{\sum\limits_{j=1}^nI(y_j=0\land x^{(i)}=1)}{\sum\limits_{j=1}^nI(y_j=0)}\right]\cdot \frac{\sum\limits_{i=1}^nI(y_{i}=0)}{n}=p_0\\ P(y=1∣x)P(xy=1)P(y=1) i=150000j=1nI(yj=1)j=1nI(yj=1x(i)=1) ni=1nI(yi=1)=p1P(y=0∣x)P(xy=0)P(y=0) i=150000j=1nI(yj=0)j=1nI(yj=0x(i)=1) ni=1nI(yi=0)=p0

2.5 半朴素贝叶斯分类器

考虑了部分属性之间的依赖关系,既保留了属性之间较强的相关性,又不需要完全计算复杂的联合概率分布

常用的方法是建立独依赖关系:假设每个属性除了类别之外,最多只依赖一个其他属性文章来源地址https://www.toymoban.com/news/detail-697129.html

到了这里,关于【AI】机器学习——朴素贝叶斯的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【AI】机器学习——朴素贝叶斯

    用于解决分类问题:将连续取值输入映射为离散取值的输出 解决分类问题的依据是数据的属性 利用后验概率选择最佳分类,后验概率通过贝叶斯定理求解 朴素贝叶斯假定所有属性相互独立,基于这一假设将类条件概率转化为属性条件概率的乘积 朴素贝叶斯方法可以使期望风

    2024年02月09日
    浏览(40)
  • AI 人工智能之概率论基础(2)

    设试验 E 的样本空间为 S={e} ,而 X=X(e) , Y=Y(e) 是定义在 S={e} 上的两个随机变量成为由这两个随机变量组成的向量 (X(e),Y(e)) 为二维随机变量或者二维随机向量。 设 (X,Y) 为二维随机变量,对任意实数 x,y ,二元函数:  称为二维随机变量 (X,Y) 的分布函数,或者称为

    2024年02月05日
    浏览(54)
  • 什么是机器学习?监督学习的定义、概率论的基本概念以及模型选择、过拟合与欠拟合的问题。常见的监督学习算法,包括朴素贝叶斯(Naive Bayes)、决策树(Decision Tree)支持向量机随机森林

    作者:禅与计算机程序设计艺术 什么是机器学习?从定义、发展历程及目前的状态来看,机器学习由3个主要分支组成:监督学习(Supervised Learning),无监督学习(Unsupervised Learning)和强化学习(Reinforcement Learning)。这三类学习都可以使计算机系统根据输入数据自动分析和改

    2024年02月09日
    浏览(53)
  • 【AI】了解人工智能、机器学习、神经网络、深度学习

    一、深度学习、神经网络的原理是什么? 深度学习和神经网络都是基于对人脑神经系统的模拟。下面将分别解释深度学习和神经网络的原理。 深度学习的原理: 深度学习是一种特殊的机器学习,其模型结构更为复杂,通常包括很多隐藏层。它依赖于神经网络进行模型训练和

    2024年02月06日
    浏览(79)
  • AI人工智能 机器学习 深度学习 学习路径及推荐书籍

    人工智能、机器学习和深度学习覆盖的技术范畴是逐层递减的,三者的关系:人工智能 机器学习 深度学习。 人工智能(ArtificialIntelligence,AI)是最宽泛的概念,是研发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学 机器学习(MachineLear

    2023年04月24日
    浏览(66)
  • 【AI】人工智能复兴的推进器之机器学习

    目录 一、机器学习的定义 二、机器学习的发展历程 2.1 萌芽期(20世纪50年代-60年代) 2.2 符号主义时期(20世纪60年代-80年代) 2.3 统计学习时期(20世纪90年代-21世纪初) 2.4 深度学习时期(21世纪初至今) 三、主要算法 3.1 线性回归(Linear Regression) 3.2 K-均值聚类(K-Means C

    2024年02月04日
    浏览(52)
  • 数据探索的人工智能与机器学习:如何应用AI技术提高分析效率

    数据探索是数据科学家和机器学习工程师在处理新数据集时所经历的过程。在这个过程中,他们需要理解数据的结构、特征和关系,以便为业务提供有价值的见解。然而,随着数据规模的增加,手动进行这些分析变得越来越困难。因此,人工智能和机器学习技术在数据探索领

    2024年02月20日
    浏览(87)
  • AI概念之人工智能、机器学习和数据挖掘之间的联系与区别

    本文深入探讨人工智能、机器学习和数据挖掘之间的联系与区别,涵盖基础知识、工作流程、需求分析、设计方案、实现步骤、代码示例、技巧与实践、常见问题与解答等内容,旨在帮助读者全面了解这三者之间的异同,并学会如何在实际工作中运用它们。 阅读时长:约30分

    2024年03月12日
    浏览(81)
  • AI人工智能中的概率论与统计学原理与Python实战:隐马尔可夫模型(HMM)的理解与实现...

    随着人工智能技术的不断发展,人工智能已经成为了许多行业的核心技术之一。在人工智能中,概率论和统计学是非常重要的一部分,它们可以帮助我们更好地理解和解决问题。在本文中,我们将讨论概率论与统计学原理在人工智能中的应用,以及如何使用Python实现隐马尔可

    2024年04月10日
    浏览(57)
  • 机器学习朴素贝叶斯笔记

    朴素贝叶斯(Naive Bayes)是一种基于贝叶斯定理和特征独立性假设的简单但有效的分类算法。它常用于文本分类、垃圾邮件过滤和情感分析等任务。下面我将详细解释朴素贝叶斯的原理和步骤。 首先,我们需要了解几个重要的概念: 贝叶斯定理(Bayes\\\' theorem):贝叶斯定理是

    2024年02月15日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包