今日要談的是:
Naive Bayes 演算法的起源與原理
Navie Bayes 演算法的程式碼
昨天我們談到Navie Bayes的數學式,因為今日要談的的起源與原理與昨日的數學式有關,忘記或還沒有閱讀的同學,可以經由[上一篇的連結](https://ithelp.ithome.com.tw/articles/10346920) 去看一下,昨日說過的我們不會細談,詳細的內容還是回去翻閱一下,了解前情提要。
昨日我們有談到貝氏定理是在某事件A發生的情形下,事件Ei發生的機率。例如:以昨日的一籃水果範例來說,我們已知從這一籃水果中,隨機取出蘋果的機率為0.3,而貝氏定理則是要問從一籃水果取出是蘋果,蘋果被蟲咬的機率是多少,這個被蟲咬的機率與蘋果的生長環境有關。但是,ML的Navie Bayes的演算法,沒有那麼複雜,之所以取之為Navie單純,就是假設蘋果被蟲咬的機率這個事件與蘋果生長環境的事件,「彼此獨立」,也就是原本相關的兩個事件,現在看成彼此不相干,其目的是要簡化計算成本。
from sklearn.naive_bayes import GaussianNB
nb = GaussianNB()
nb.fit(X_train, y_train)
nb.predict(X_train)
nb.score(X_train, y_train)