朴素贝叶斯分类器_以python为工具【Python机器学习系列(十三)】 0 a2 Q9 E/ g A# }2 s$ L+ j: i. {$ {/ \
文章目录 ( h' r! S3 a/ a3 W1. 朴素贝叶斯算法原理 / d5 d7 J1 x& g1 g2. sklearn提供的朴素贝叶斯算法 0 X+ r! H1 Y6 Z+ J8 d/ h3. 伯努利朴素贝叶斯 BernoulliNB()( N: b& o/ K5 ^5 x) I, ]' `
4. 多项式朴素贝叶斯 MultinomialNB() * C6 j# U* c* o! P) L5. 高斯朴素贝叶斯 GaussianNB() 4 M# K. q. q, K" u5 j1 J ʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞ ! I4 h# w. i& Z% O* [. [5 [1 g+ b0 `; y/ p, m, L0 B- I H
ʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞ+ y+ u6 n# h- T2 ~( r
$ T$ |9 ]3 a% U: y
大家好,我是侯小啾!* F. R/ U3 ~* Q# G0 q
* P4 |7 ]9 q( p3 a* z. O 今天分享的话题是朴素贝叶斯分类器算法。; b2 W* s& _! @* q% x C4 z
& d4 [) o" T% {- i) g🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ ; ~7 e+ o; l9 S0 |4 h1 z4 l2 C3 \ ], d# a% ?4 [
1. 朴素贝叶斯算法原理2 m V$ `5 m+ n6 D" {
使用贝叶斯算法,首先需要理解的是以下两个公式: O: d1 Y+ O T5 A; M
$ q! u6 b+ ]" P5 A
全概率公式 9 u5 T/ {0 z' P5 w6 I7 p* } _! s4 U ( B ) = P ( A 1 ) × P ( B ∣ A 1 ) + P ( A 2 ) × P ( B ∣ A 2 ) + . . . + P ( A n ) × P ( B ∣ A n ) P(B)=P(A_1)×P(B|A_1)+P(A_2)×P(B|A_2)+...+P(A_n)×P(B|A_n)P(B)=P(A . f# n t; L* t; I. ?& v! p1% i* ?, d: I P/ c6 }4 h0 ~' C; \
" k/ k( B+ ?9 q4 m7 [+ c
)×P(B∣A + I# R) p* ^; C# R
13 R5 o& o& y( D% V# b* m
6 S& P; @+ d0 F( t2 g* a
)+P(A 7 Z( }; t3 l, W/ u V3 t2( l5 J2 P# m. P) a! F8 I! _! d
" `! ]+ d2 k) Q' U% \ )×P(B∣A & d) Q8 {$ C1 |, d1 E* W! r
2/ Q1 v- l3 s# M) y3 K$ \" c# h+ `
* J8 T# m: V9 q6 S/ k )+...+P(A 3 V, q: O: c' g r
n ) A! f- x2 D, a' x; D3 ^: e* d2 L( o; U: ~, r1 Y1 D; I
)×P(B∣A 0 V: b7 j& F# r5 Kn % [; S" _ q/ U9 c9 l / v2 o& L3 A* o' y) {. y ) ?* i" U N. t/ I & N/ d9 f+ h1 D贝叶斯公式 7 b: V6 T# A K, b6 G ) M/ J8 E* F) D5 v ( A ∣ B ) = P(A|B)=P(A∣B)=P ( A ) × P ( B ∣ A ) P ( B ) \frac{P(A)×P(B|A)}{P(B)} 7 l2 C# [2 B, J2 ~4 z$ [/ ?P(B)( n, R2 P i8 D0 o0 S( j1 y
P(A)×P(B∣A) e/ t! J, @, f5 F" N
, H2 O$ L V5 o) n. q M
* H; ]9 l5 J0 {6 ], [$ e0 I
( n( a( L+ {% J* N+ c 或5 T# Y) Q$ n) }) b9 V9 m
6 X0 u8 p/ g3 a" j' e ( A n ∣ B ) = P(A_n|B)=P(A ' \0 o- w0 H# J* w& vn & M9 a' Z* R% d/ Q 6 l9 s' L" G- v ∣B)=P ( A n ) × P ( B ∣ A n ) P ( B ) \frac{P(A_n)×P(B|A_n)}{P(B)} 7 t/ a* v; b1 h8 p4 z9 c
P(B)" e5 L+ Q8 u$ F
P(A $ H: l% C1 o. n! n# Kn1 Y$ I8 Y; L1 W6 O
8 \* H; o& E5 Z4 a. X' E' z" P
)×P(B∣A 8 H9 }; Y8 I) p7 ~7 q4 \n 7 u( \& L0 c8 M! B) H4 G! [/ L+ Z& V1 K% n% q1 o2 e
). s; q; Q) U6 Q, v, U- g
1 c- b" }/ V3 [, Z7 e7 ~, N 3 l* E/ O) r; M! R' l* G6 [; o: c& C, K) M9 T: e: a r+ Z# [
通俗地讲,假设需要将对某样本分为为0和1二类,其有A,B,C三个特征且值分别为a、b、c, y5 J ^. Q1 P# h4 Q则只需要求出,在类别为0前提下特证A、B、C分别为a、b、c的概率:+ V+ ?5 _7 s; v9 ~; y4 o0 @' q5 d
' @( @, E3 ?' I7 z d, L; A 即P ( A = a , B = b , C = c ∣ 类别为 0 ) P(A=a,B=b,C=c|类别为0)P(A=a,B=b,C=c∣类别为0) , n: a3 b6 f6 t. j: U B# ?" x ( U; V y8 |0 C/ o: u* v/ A# v% j和在类别为1的前提下特征A、B、C分别为a、b、c的概率:7 |2 r( O m+ V& t# d2 I4 P
% Q h4 e9 Q1 T! I! i0 p$ D7 @ 即P ( A = a , B = b , C = c ∣ 类别为 1 ) P(A=a,B=b,C=c|类别为1)P(A=a,B=b,C=c∣类别为1)& N4 n, [6 @4 h
0 U: L6 L% n5 Q; s3 C
即可。 . H1 K( k4 T8 Y+ R" k P' |然后将这两个概率作比较,大者,则为朴素贝叶斯决策结果所属类别。 ; W$ i, t( C, f$ L+ P7 P2 j( m或者也可以求出在特征为目标特征的前提下,类别为某类别的概率,这样比较出的结果也是会是一致的。" ^+ W Y+ d, [" [7 X