今天我們要談的是Navie Bayes演算法:
Naive Bayes 演算法的起源與原理:
Naive Bayes 演算法的數學式:
Naive Bayes 演算法的程式碼:
在談論Naive Bayes 演算法的起源與原理之前,我們要先談談機率的條件機率,全機率定理,再來說貝氏定理:
def.在事件B已發生的情形下,問事件A發生的機率。記做:P[A|B]
數學式: P[A | B] =\frac{P[A\cap B]}{P[B]}
def.已知E1~En均為S之子集,若其具以下性質,則稱E1~En為S之一分割(partition)
a. 任何i \ne j ,Ei \cap Ej = 0
b.E1 \cup E2 \cup …\cup En = S
P[A] =\sum_{i=1}^n P[A | E_i] P[E_i]
P[Ei | A] =\frac{ P[A|E_i]P[E_i]}{\sum_{i=1}^n P[A| E_i]P[E_i]}
上面的def.是定義definition的縮寫,未「def.」。 A \cap B的意思是A交集B,E_1 \cup E_2是E_1聯集E_2,LaTex語法,忘記的同學,可以去翻閱一下day1標題下連結,那裏有詳細用法。
P [A]的def.為P[A] = \frac{|A|}{|S|},其中S為宇集合,就是物件全體總數,以下面條件機率的範例就是那一藍水果,P[A]則表示為從一藍水果中,取出蘋果的機率是多少。
條件機率簡單的範例如:
買一籃蘋果3顆,香蕉2根,芭樂5顆共10個水果中,問隨便從籃子中取出一棵為蘋果的機率就是3/10即0.3也就是有3成的機率為蘋果。