code

2017年9月26日 星期二

Applied Machine Learning in Python 14 - Naiive Bayes Classifier

Guassian Naive Bayes Classification

之前筆記寫過:
https://fu-sheng-wang.blogspot.tw/search?q=bayes+classifier

優點就是非常快速的training和prediction過程,缺點就是generalization可能比其他方法差。
sklearn提供三種naive bayes classifiers,這邊會講到的是Gaussian Bayes classifier。

基本觀念就是把feature找出高斯分佈,然後比對input data feature看是比較可能從哪一個distribution產出的,當然這邊假設所有的feature都是gaussian distribution。

2d feature space會有3d的distribution(加上 train_y 在z軸),如果俯視圖投影到2d平面的話,下圖中有兩個guassian distributions,其交界處形成一個曲線的decision boundary:


所以也是一個linear model (decision boundary curve係數組成的function f(w) 都是一次項),也對linear model適用的對象適用,不過他問題在於假設每個feature都是conditionally independent,這在真實世界中並非如此,所以generalization的成效比較差。


沒有留言:

張貼留言