整合一下学习NB的思路与代码,仅代表个人思想。

目录

  • 算法思想
  • 公式推导
    • 1.问题陈述
    • 2.先验概率分布
    • 3.条件概率分布
    • 4.输入为x的概率
    • 5.用贝叶斯定理求后验概率
    • 7.得到答案
    • 8.简化计算
    • 9.Laplace平滑
  • 用NB分类iris(python实现)

算法思想

我们先来看一下这名字的来由。朴素贝叶斯,“贝叶斯”即基于贝叶斯定理,“朴素”即作了特征条件独立假设,这两个是它最突出的特点。朴素贝叶斯是一种概率模型,同时也是参数化模型,经常用于监督学习的分类应用中,例如垃圾邮件分类。对于训练集,首先学习输入输出的联合概率分布模型,然后基于此模型,对给出的输入x,利用贝叶斯定理求出后验概率最大的类别y作为输出。

公式推导

先来看看朴素贝叶斯分类器长什么样子:
y = a r g m a x c k P ( Y = c k ) ∏ j P ( X ( j ) = x ( j ) ∣ Y = c k ) y = argmax_{c_k}P(Y=c_k)\prod_{j}P(X^{(j)}=x^{(j)}|Y=c_k) y=argmaxck​​P(Y=ck​)j∏​P(X(j)=x(j)∣Y=ck​)
看不懂很正常,下面结合例子来一步步推出这个公式。

1.问题陈述

设输入空间X为n维向量x的集合,X = {x1,x2,x3…};
每个x由n个特征来描述,xi = {xi(1),xi(2),…,xi(n)};每个特征 x(j) 有 Sj 个取值。
输出空间Y为类标记集合,有k个取值,Y = {c1,c2,…,ck}。
输入训练数据集T = {(x1,y1),(x2,y2),…,(xn,yn)},我们要做的就是用训练集T学习一个模型,然后用该模型计算后验概率分布 P ( Y = c k ∣ X = x ) P(Y=c_k|X=x) P(Y=ck​∣X=x),将后验概率最大的类y作为x的类输出。

结合一个例子来讲:

天气x(1) 刮风x(2) 温度x(3) 是否出去玩ck
下雨 不去
不刮 不去
下雨 不刮

用朴素贝叶斯分类器求当输入x = (下雨,不刮,低温)时,是否会出去玩。
在该例子中,输入空间X为3维向量x的集合,X = {x1,x2,x3,x4};
每个x由3个特征来描述,x1 = {x1(1)下雨,x1(2)刮,x1(3)低};x2 = {x2(1)晴,x2(2)不刮,x2(3)高}。
特征x(1)有S1=(下雨,晴)2个取值;特征x(2)有S2=(刮,不刮)2个取值;特征x(3)有S3=(低,中,高)3个取值。
输出空间Y有2个取值,Y = {c1去,c2不去}。
输入训练数据集T = {(x1,y1),(x2,y2),(x3,y3),(x4,y4)}

2.先验概率分布

先验概率分布是得到类ck的概率,在这里用极大似然估计法来估计:
P ( Y = c k ) = ∑ i = 1 N I ( y i = c k ) N , k = 1 , 2 , . . . , K ( 2.1 ) P(Y=c_k)=\frac{\sum_{i=1}^{N}I(y_i=c_k)}{N},k=1,2,...,K \tag{\color{red}{2.1}} P(Y=ck​)=N∑i=1N​I(yi​=ck​)​,k=1,2,...,K(2.1)
其中N为样本总个数,当指示函数 I ( y i = c k ) I(y_i=c_k) I(yi​=ck​)括号内的条件成立时, I ( y i = c k ) = 1 I(y_i=c_k)=1 I(yi​=ck​)=1,否则为0。

得到类c1=不去玩的概率 P ( Y = c 1 ) = 1 2 P(Y=c_1)=\frac{1}{2} P(Y=c1​)=21​
得到类c2=去玩的概率 P ( Y = c 2 ) = 1 2 P(Y=c_2)=\frac{1}{2} P(Y=c2​)=21​
因为在四个样本中有两个不去和两个去,这种靠数个数来计算概率的方法就是极大似然估计。当样本数量足够多时,极大似然估计很好用,样本数量少时就会有失准确性。

3.条件概率分布

假设各个特征之间都是相互独立的(这是一个较强的假设,朴素贝叶斯的“朴素”就是因为这个假设,此假设牺牲了一定的准确率,却让计算变得很简单),那么条件概率分布为Y=ck时,X=x的概率:
P ( X = x ∣ Y = c k ) = P ( X ( 1 ) = x ( 1 ) , X ( 2 ) = x ( 2 ) , . . . , X ( n ) = x ( n ) ∣ Y = c k ) = P ( X ( 1 ) = x ( 1 ) ∣ Y = c k ) ∗ P ( X ( 2 ) = x ( 2 ) ∣ Y = c k ) ∗ . . . ∗ P ( X ( n ) = x ( n ) ∣ Y = c k ) = ∏ j = 1 n P ( X ( j ) = x ( j ) ∣ Y = c k ) ( 3.1 ) \begin{aligned} P(X=x|Y=c_k) &=P(X^{(1)}=x^{(1)},X^{(2)}=x^{(2)},...,X^{(n)}=x^{(n)}|Y=c_k)\\ &=P(X^{(1)}=x^{(1)}|Y=c_k)*P(X^{(2)}=x^{(2)}|Y=c_k)*...*P(X^{(n)}=x^{(n)}|Y=c_k)\\ &=\prod_{j=1}^{n}P(X^{(j)}=x^{(j)}|Y=c_k) \end{aligned} \tag{\color{red}{3.1}} P(X=x∣Y=ck​)​=P(X(1)=x(1),X(2)=x(2),...,X(n)=x(n)∣Y=ck​)=P(X(1)=x(1)∣Y=ck​)∗P(X(2)=x(2)∣Y=ck​)∗...∗P(X(n)=x(n)∣Y=ck​)=j=1∏n​P(X(j)=x(j)∣Y=ck​)​(3.1)
在这里也用极大似然估计法来估计条件概率 P ( X ( 1 ) = x ( 1 ) ∣ Y = c k ) P(X^{(1)}=x^{(1)}|Y=c_k) P(X(1)=x(1)∣Y=ck​):
P ( X ( 1 ) = x ( 1 ) ∣ Y = c k ) = ∑ i = 1 N I ( X i ( 1 ) = x ( 1 ) , y i = c k ) ∑ i = 1 N I ( y i = c k ) ( 3.2 ) P(X^{(1)}=x^{(1)}|Y=c_k)=\frac{\sum_{i=1}^{N}I(X_i^{(1)}=x^{(1)},y_i=c_k)}{\sum_{i=1}^{N}I(y_i=c_k)} \tag{\color{red}{3.2}} P(X(1)=x(1)∣Y=ck​)=∑i=1N​I(yi​=ck​)∑i=1N​I(Xi(1)​=x(1),yi​=ck​)​(3.2)
其中N为样本总个数,当指示函数 I ( y i = c k ) I(y_i=c_k) I(yi​=ck​)括号内的条件成立时, I ( y i = c k ) = 1 I(y_i=c_k)=1 I(yi​=ck​)=1,否则为0;当 I ( X i ( 1 ) = x ( 1 ) , y i = c k ) I(X_i^{(1)}=x^{(1)},y_i=c_k) I(Xi(1)​=x(1),yi​=ck​)括号内的两个条件都成立时为1,否则为0;最后累加起来就相当于在数个数。

当假设各个特征之间相互独立时,相当于假设天气,温度和刮风之间互不影响(其实在正常生活中,天气的好坏会影响温度的,也就是说在现实问题中毫无关系的特征几乎不存在)。
由 ( 3.2 ) \color{red}{(3.2)} (3.2)得x(1)=下雨时,y=去的概率:
P ( x ( 1 ) = 下 雨 ∣ Y = 去 ) = ∑ i = 1 4 I ( x ( 1 ) = 下 雨 , y i = 去 ) = 1 ∑ i = 1 4 I ( y i = 去 ) = 2 P(x^{(1)}=下雨|Y=去)=\frac{\sum_{i=1}^{4}I(x^{(1)}=下雨,y_i=去)=1}{\sum_{i=1}^{4}I(y_i=去)=2} P(x(1)=下雨∣Y=去)=∑i=14​I(yi​=去)=2∑i=14​I(x(1)=下雨,yi​=去)=1​
那么当Y=c1去时,由 ( 3.1 ) \color{red}{(3.1)} (3.1)得x = (下雨,不刮,低温)概率为:
P ( x = ( 下 雨 , 不 刮 , 低 温 ) ∣ Y = 去 ) = P ( x ( 1 ) = 下 雨 , x ( 2 ) = 不 刮 , x ( 3 ) = 低 温 ∣ Y = 去 ) = P ( x ( 1 ) = 下 雨 ∣ Y = 去 ) ∗ P ( x ( 2 ) = 不 刮 ∣ Y = 去 ) ∗ P ( x ( 3 ) = 低 温 ∣ Y = 去 ) = 1 2 ∗ 1 2 ∗ 0 = 0 ( 3.3 ) \begin{aligned} P(x = (下雨,不刮,低温)|Y=去) &=P(x^{(1)}=下雨,x^{(2)}=不刮,x^{(3)}=低温|Y=去)\\ &=P(x^{(1)}=下雨|Y=去)*P(x^{(2)}=不刮|Y=去)*P(x^{(3)}=低温|Y=去)\\ &=\frac{1}{2}*\frac{1}{2}*0\\ &=0 \end{aligned} \tag{\color{red}{3.3}} P(x=(下雨,不刮,低温)∣Y=去)​=P(x(1)=下雨,x(2)=不刮,x(3)=低温∣Y=去)=P(x(1)=下雨∣Y=去)∗P(x(2)=不刮∣Y=去)∗P(x(3)=低温∣Y=去)=21​∗21​∗0=0​(3.3)
当Y=c2不去时,x = (下雨,不刮,低温)概率为:
P ( x = ( 下 雨 , 不 刮 , 低 温 ) ∣ Y = 不 去 ) = P ( x ( 1 ) = 下 雨 , x ( 2 ) = 不 刮 , x ( 3 ) = 低 温 ∣ Y = 不 去 ) = P ( x ( 1 ) = 下 雨 ∣ Y = 不 去 ) ∗ P ( x ( 2 ) = 不 刮 ∣ Y = 不 去 ) ∗ P ( x ( 3 ) = 低 温 ∣ Y = 不 去 ) = 1 2 ∗ 1 2 ∗ 1 2 = 1 8 ( 3.4 ) \begin{aligned} P(x = (下雨,不刮,低温)|Y=不去) &=P(x^{(1)}=下雨,x^{(2)}=不刮,x^{(3)}=低温|Y=不去)\\ &=P(x^{(1)}=下雨|Y=不去)*P(x^{(2)}=不刮|Y=不去)*P(x^{(3)}=低温|Y=不去)\\ &=\frac{1}{2}*\frac{1}{2}*\frac{1}{2}\\ &=\frac{1}{8} \end{aligned} \tag{\color{red}{3.4}} P(x=(下雨,不刮,低温)∣Y=不去)​=P(x(1)=下雨,x(2)=不刮,x(3)=低温∣Y=不去)=P(x(1)=下雨∣Y=不去)∗P(x(2)=不刮∣Y=不去)∗P(x(3)=低温∣Y=不去)=21​∗21​∗21​=81​​(3.4)

4.输入为x的概率

接下来还需要计算输入为x = {x(1),x(2),…,x(n)} 的概率。
输入为x的概率 P ( X = x ) P(X=x) P(X=x)就是x为类c1的概率,x为类c2的概率…x为类ck的概率相加起来:
P ( X = x ) = P ( Y = c 1 ) ∗ P ( X = x ∣ Y = c 1 ) + P ( Y = c 2 ) ∗ P ( X = x ∣ Y = c 2 ) + . . . + P ( Y = c k ) ∗ P ( X = x ∣ Y = c k ) = ∑ k = 1 K P ( Y = c k ) ∗ P ( X = x ∣ Y = c k ) \begin{aligned} P(X=x) &=P(Y=c_1)*P(X=x|Y=c_1)+P(Y=c_2)*P(X=x|Y=c_2)+...+P(Y=c_k)*P(X=x|Y=c_k)\\ &=\sum_{k=1}^{K}{P(Y=c_k)*P(X=x|Y=c_k)} \end{aligned} P(X=x)​=P(Y=c1​)∗P(X=x∣Y=c1​)+P(Y=c2​)∗P(X=x∣Y=c2​)+...+P(Y=ck​)∗P(X=x∣Y=ck​)=k=1∑K​P(Y=ck​)∗P(X=x∣Y=ck​)​

计算x=(下雨,不刮,低温)的概率,由步骤2得 P ( Y = c 1 ) = P ( Y = c 2 ) = 1 2 P(Y=c_1)=P(Y=c_2)=\frac{1}{2} P(Y=c1​)=P(Y=c2​)=21​;
由式 ( 3.3 ) \color{red}{(3.3)} (3.3) ( 3.4 ) \color{red}{(3.4)} (3.4)得: P ( x = ( 下 雨 , 不 刮 , 低 温 ) ∣ Y = 去 ) = 0 P(x = (下雨,不刮,低温)|Y=去)=0 P(x=(下雨,不刮,低温)∣Y=去)=0;
P ( x = ( 下 雨 , 不 刮 , 低 温 ) ∣ Y = 不 去 ) = 1 8 P(x = (下雨,不刮,低温)|Y=不去)=\frac{1}{8} P(x=(下雨,不刮,低温)∣Y=不去)=81​;
故得输入为x = (下雨,不刮,低温)的概率为:
P ( x = ( 下 雨 , 不 刮 , 低 温 ) ) = P ( Y = 去 ) ∗ P ( x = ( 下 雨 , 不 刮 , 低 温 ) ∣ Y = 去 ) + P ( Y = 不 去 ) ∗ P ( x = ( 下 雨 , 不 刮 , 低 温 ) ∣ Y = 不 去 ) = 1 2 ∗ 1 8 + 1 2 ∗ 0 = 1 16 \begin{aligned} P(x = (下雨,不刮,低温)) &=P(Y=去)*P(x = (下雨,不刮,低温)|Y=去)+P(Y=不去)*P(x = (下雨,不刮,低温)|Y=不去)\\ &=\frac{1}{2}*\frac{1}{8}+\frac{1}{2}*0\\ &=\frac{1}{16} \end{aligned} P(x=(下雨,不刮,低温))​=P(Y=去)∗P(x=(下雨,不刮,低温)∣Y=去)+P(Y=不去)∗P(x=(下雨,不刮,低温)∣Y=不去)=21​∗81​+21​∗0=161​​

5.用贝叶斯定理求后验概率

贝叶斯定理:
P ( A ∣ B ) = P ( B ∣ A ) ∗ P ( A ) P ( B ) P(A|B)=\frac{P(B|A)*P(A)}{P(B)} P(A∣B)=P(B)P(B∣A)∗P(A)​
在这里,Y=ck就是A,X=x就是B,那么就得到了计算后验概率的公式:
P ( Y = c k ∣ X = x ) = P ( X = x ∣ Y = c k ) ∗ P ( Y = c k ) P ( X = x ) ( 5.1 ) P(Y=c_k|X=x)=\frac{P(X=x|Y=c_k)*P(Y=c_k)}{P(X=x)} \tag{\color{red}{5.1}} P(Y=ck​∣X=x)=P(X=x)P(X=x∣Y=ck​)∗P(Y=ck​)​(5.1)

我们已经在步骤2,3中计算出了分子,步骤4中计算出了分母,所以将步骤2,3,4中的结果代入式 ( 5.1 ) \color{red}{(5.1)} (5.1)得:
输入x = (下雨,不刮,低温)时,输出Y=去的后验概率为:
P ( Y = 去 ∣ x = ( 下 雨 , 不 刮 , 低 温 ) ) = P ( x = ( 下 雨 , 不 刮 , 低 温 ) ∣ Y = 去 ) ∗ P ( Y = 去 ) P ( x = ( 下 雨 , 不 刮 , 低 温 ) ) = 0 ∗ 1 2 1 16 = 0 ( 5.2 ) \begin{aligned} P(Y=去|x = (下雨,不刮,低温)) &=\frac{P(x = (下雨,不刮,低温)|Y=去)*P(Y=去)}{P(x = (下雨,不刮,低温))}\\ &=\frac{0*\frac{1}{2}}{\frac{1}{16}}\\ &=0 \end{aligned} \tag{\color{red}{5.2}} P(Y=去∣x=(下雨,不刮,低温))​=P(x=(下雨,不刮,低温))P(x=(下雨,不刮,低温)∣Y=去)∗P(Y=去)​=161​0∗21​​=0​(5.2)
输入x = (下雨,不刮,低温)时,输出Y=不去的后验概率为:
P ( Y = 不 去 ∣ x = ( 下 雨 , 不 刮 , 低 温 ) ) = P ( x = ( 下 雨 , 不 刮 , 低 温 ) ∣ Y = 不 去 ) ∗ P ( Y = 不 去 ) P ( x = ( 下 雨 , 不 刮 , 低 温 ) ) = 1 8 ∗ 1 2 1 16 = 1 ( 5.3 ) \begin{aligned} P(Y=不去|x = (下雨,不刮,低温)) &=\frac{P(x = (下雨,不刮,低温)|Y=不去)*P(Y=不去)}{P(x = (下雨,不刮,低温))}\\ &=\frac{\frac{1}{8}*\frac{1}{2}}{\frac{1}{16}}\\ &=1 \end{aligned} \tag{\color{red}{5.3}} P(Y=不去∣x=(下雨,不刮,低温))​=P(x=(下雨,不刮,低温))P(x=(下雨,不刮,低温)∣Y=不去)∗P(Y=不去)​=161​81​∗21​​=1​(5.3)

7.得到答案

朴素贝叶斯分类器将最大的后验概率对应的类ck作为x的类输出,由式 ( 5.1 ) \color{red}{(5.1)} (5.1)得:
y = a r g m a x c k P ( Y = c k ∣ X = x ) y = argmax_{c_k}P(Y=c_k|X=x) y=argmaxck​​P(Y=ck​∣X=x)

我们已经由式 ( 5.2 ) \color{red}{(5.2)} (5.2) ( 5.3 ) \color{red}{(5.3)} (5.3)得到了x对应的每个类的后验概率,只需最后一步比较大小,将最大的找出来,就得到了答案。
y = a r g m a x c k P ( Y = c k ∣ X = x ) = a r g m a x c k { P ( Y = 去 ∣ x = ( 下 雨 , 不 刮 , 低 温 ) ) , P ( Y = 不 去 ∣ x = ( 下 雨 , 不 刮 , 低 温 ) ) } = a r g m a x c k { 0 , 1 } = c 2 不 去 \begin{aligned} y &= argmax_{c_k}P(Y=c_k|X=x)\\ &=argmax_{c_k}\{P(Y=去|x = (下雨,不刮,低温)),P(Y=不去|x = (下雨,不刮,低温))\}\\ &=argmax_{c_k}\{0,1\}\\ &=c_2不去 \end{aligned} y​=argmaxck​​P(Y=ck​∣X=x)=argmaxck​​{P(Y=去∣x=(下雨,不刮,低温)),P(Y=不去∣x=(下雨,不刮,低温))}=argmaxck​​{0,1}=c2​不去​
所以当输入x = (下雨,不刮,低温)时,不会出去玩。

8.简化计算

在计算后验概率的公式 ( 5.1 ) \color{red}{(5.1)} (5.1)中可以发现,对于不同类的对应后验概率的计算中,分母都是一样的,而我们最终只比较后验概率的大小,所以只需比较分子的大小就可以了,去掉分母并不影响最后的结果,所以最终的朴素贝叶斯分类器公式为:
y = a r g m a x c k P ( X = x ∣ Y = c k ) ∗ P ( Y = c k ) = a r g m a x c k P ( Y = c k ) ∏ j P ( X ( j ) = x ( j ) ∣ Y = c k ) \begin{aligned} y &=argmax_{c_k}P(X=x|Y=c_k)*P(Y=c_k)\\ &=argmax_{c_k}P(Y=c_k)\prod_{j}P(X^{(j)}=x^{(j)}|Y=c_k) \end{aligned} y​=argmaxck​​P(X=x∣Y=ck​)∗P(Y=ck​)=argmaxck​​P(Y=ck​)j∏​P(X(j)=x(j)∣Y=ck​)​

9.Laplace平滑

首先在步骤1中我们已经说过,每个x由n个特征来描述,x1 = {x1(1),x1(2),…,x1(n)};每个特征x(j)有Sj个取值。那么所有可能取得的x个数就为 ∏ j = 1 n S j \prod_{j=1}^{n}S_j ∏j=1n​Sj​。比如在该例中S1=2;S2=2;S3=3。所以所有可能取得的x个数就为2×2×3=12。也就是说, 每个输入x的可能性都是 1 12 \frac{1}{12} 121​。

但在步骤4中我们求得输入为x = (下雨,不刮,低温)的概率却为 1 16 \frac{1}{16} 161​,这是为什么呢?

因为在计算过程中,一直使用的是极大似然估计,而极大似然估计可能会出现所要估计的概率值为0的情况,比如在上例中,低温的两个样本都不去玩,导致 P ( x ( 3 ) = 低 温 ∣ Y = 去 ) P(x^{(3)}=低温|Y=去) P(x(3)=低温∣Y=去)的概率为0,进而导致后续计算 P ( Y = 去 ∣ x = ( 下 雨 , 不 刮 , 低 温 ) ) P(Y=去|x = (下雨,不刮,低温)) P(Y=去∣x=(下雨,不刮,低温))也是0。这时就会影响到后验概率的计算结果,使分类产生偏差,因为或许在更多的样本中会出现低温时也出去玩的情况。

解决这个问题的方法就是采用贝叶斯估计。

具体地,在分子分母上加一项正数 λ > 0 \lambda>0 λ>0。一般情况下,常取 λ = 1 \lambda=1 λ=1,这时称为拉普拉斯平滑。

采用贝叶斯估计而非极大似然估计(式 ( 3.2 ) \color{red}{(3.2)} (3.2))的条件概率如下:
P λ ( X ( 1 ) = x ( 1 ) ∣ Y = c k ) = ∑ i = 1 N I ( X i ( 1 ) = x ( 1 ) , y i = c k ) + λ ∑ i = 1 N I ( y i = c k ) + S j ∗ λ P_\lambda(X^{(1)}=x^{(1)}|Y=c_k)=\frac{\sum_{i=1}^{N}I(X_i^{(1)}=x^{(1)},y_i=c_k)+\lambda}{\sum_{i=1}^{N}I(y_i=c_k)+S_j*\lambda} Pλ​(X(1)=x(1)∣Y=ck​)=∑i=1N​I(yi​=ck​)+Sj​∗λ∑i=1N​I(Xi(1)​=x(1),yi​=ck​)+λ​

取 λ = 1 \lambda=1 λ=1,由上式得x(1)=下雨时,y=去的概率:
P λ ( x ( 1 ) = 下 雨 ∣ Y = 去 ) = ∑ i = 1 4 I ( x ( 1 ) = 下 雨 , y i = 去 ) + 1 ∑ i = 1 4 I ( y i = 去 ) + 2 ∗ 1 = 1 2 P_\lambda(x^{(1)}=下雨|Y=去)=\frac{\sum_{i=1}^{4}I(x^{(1)}=下雨,y_i=去)+1}{\sum_{i=1}^{4}I(y_i=去)+2*1}=\frac{1}{2} Pλ​(x(1)=下雨∣Y=去)=∑i=14​I(yi​=去)+2∗1∑i=14​I(x(1)=下雨,yi​=去)+1​=21​
可以看到,当条件概率不为0时,贝叶斯估计的结果与极大似然估计是一致的,但当条件概率恰好为0时,贝叶斯估计的作用就体现了出来,消除了0造成的误差。

用NB分类iris(python实现)

pycharm+python3.7.4,完整代码如下:

# file-settings-python interpreter导包
# 导入科学计算工具
import numpy as np
# 导入鸢尾花数据集
from sklearn.datasets import load_iris
# 导入朴素贝叶斯
from sklearn import naive_bayes# 加载鸢尾花数据集
iris = load_iris()
# 提取数据
trainX = iris.data
# 提取标签
trainY = iris.target
# 建立高斯分布的朴素贝叶斯模型
clf=naive_bayes.GaussianNB()  #高斯分布,没有参数
# 建立多项式分布的朴素贝叶斯模型
# clf=naive_bayes.MultinomialNB()  #多项式分布# 训练模型
clf.fit(trainX,trainY)
# 输出准确率
print("准确率:" + str(clf.score(trainX,trainY)))

实验结果:

准确率:0.96

朴素贝叶斯法(Naive Bayes,NB)(结合例子推公式,通俗易懂)相关推荐

  1. 朴素贝叶斯(naive bayes)原理小结

    朴素贝叶斯(naive bayes)原理小结 1. 朴素贝叶斯的学习 1.1 基本假设:条件独立性 1.2 朴素贝叶斯分类器 1.3 后验概率的含义 2. 参数估计 2.1 极大似然估计 2.2 贝叶 ...

  2. python机器学习-朴素贝叶斯(Naive Bayes)模型建立及评估(完整代码+实现效果)

    实现功能: python机器学习-朴素贝叶斯(Naive Bayes)模型建立及评估. 实现代码: # 导入需要的库 from warnings import simplefilter simplef ...

  3. 朴素贝叶斯(naive bayes)分类

    1. 概念回顾 1.1 条件概率公式 条件概率是指在事件B发生的条件下,事件A发生的概率.条件概率表示为P(A∣B)P(A|B)P(A∣B),读作"A在B发生的条件下发生的概率". ...

  4. 朴素贝叶斯(Naive Bayes)分类和Gaussian naive Bayes

    朴素贝叶斯(Naive Bayes)   参考资料:https://www.cnblogs.com/pinard/p/6069267.html   朴素贝叶斯最关键的就是 (强制认为每种指标都是独立的 ...

  5. 【机器学习sklearn】高斯朴素贝叶斯 Gaussian naive bayes

    贝叶斯Bayes - Thomas Bayes 前言 一.贝叶斯决策论(Bayesian decision theory) 二.实例:高斯朴素贝叶斯 Gaussian Naive Bayes (Gau ...

  6. 朴素贝叶斯(Naive Bayes):鸢尾花分类项目(不调库,手工推)

    一.数据来源 1.数据来源:kaggle 2.数据样式 通过对数据"萼片.花瓣的长度.宽度(sepal_length.sepal_width.petal_length.petal_width ...

  7. 朴素贝叶斯(Naive Bayes)(原理+Python实现)

    朴素贝叶斯(Naive Bayes)(原理+Python实现) 创作背景 算法分类 生成类算法 判别类算法 区别 知识补充 朴素贝叶斯算法 举个栗子 求解思路 求解过程(数学计算) 代码实现 自己实现 ...

  8. python贝叶斯模型_【机器学习速成宝典】模型篇05朴素贝叶斯【Naive Bayes】(Python版)...

    目录 先验概率与后验概率 条件概率公式.全概率公式.贝叶斯公式 什么是朴素贝叶斯(Naive Bayes) 拉普拉斯平滑(Laplace Smoothing) 应用:遇到连续变量怎么办?(多项式分布, ...

  9. 机器学习——朴素贝叶斯(Naive Bayes)详解及其python仿真

    参考视频与文献: https://www.bilibili.com/video/BV1oX4y137p9?spm_id_from=333.999.0.0&vd_source=77c874a50 ...

  10. 朴素贝叶斯(Naive Bayes)详解

    朴素贝叶斯是贝叶斯分类器中的一种模型,用已知类别的数据集训练模型,从而实现对未知类别数据的类别判断.其理论基础是贝叶斯决策论(Bayesian decision theory). 一:基础知识 (1) ...

最新文章

  1. Windows PE 重定位表编程(枚举重定位地址)
  2. vscode c++插件 下载_vscode安装教程及插件推荐
  3. ARINC818(FC-AV)协议详解
  4. 3- 快速上手Linux玩转典型应用- Linux准备工作
  5. 【渝粤题库】国家开放大学2021春3990产品管理题目
  6. django用户认证系统——登录4
  7. LeetCode 276. 栅栏涂色(DP)
  8. FR的控件CSS样式
  9. office之转置EXCEL表格
  10. python 获取图像亮度和锐度,pytesseract 获取图片上字符串,及增加亮度,色感,对比度,锐度...
  11. Ozone Block Chunk文件的layout方式
  12. 计算机语言里的堆栈是什么意思,汇编语言中的堆栈是什么?
  13. 树的递归与非递归遍历算法
  14. UE4打包项目部署到Quest遇到的问题
  15. 微软与华盛顿大学合作研发DNA存储技术
  16. 软件项目开发与管理(赢得值分析参考例题)
  17. python怎么做游戏主播_做一名游戏主播是什么样的感受?
  18. 如何理解WPF中的样式(Style)与模板ControlTemplate
  19. oracle 数据库表结构对比
  20. 通达OA前台任意用户登录漏洞+RCE漏洞复现

热门文章

  1. 高级人工智能之神经网络Artificial Neural Network
  2. SQLcl这个可爱的小工具,来了解一下呀~
  3. harris位_Harris角点
  4. 100个经典的免费外贸网站
  5. 5G与WiFi6相爱相杀的关系
  6. <iomanip>库输入输出控制函数
  7. CAS Server 5.3 demo搭建
  8. Apple Watch带来的商机
  9. 【深度学习】——BN层(batch normalization)
  10. 专精特新“小巨人”启科量子加入飞桨技术伙伴计划,共建“AI+量子”科技创新发展格局...