前十個樣本作為訓練樣本,後4個樣本作為測試樣本。用樸素貝葉斯**「打網球」的決定。
樣本資料如下所示:
no天氣
氣溫濕度風類別
1晴熱高
無n2晴
熱高有n
3多雲熱高
無y4雨
適中高無y
5雨冷正常
無y6雨
冷正常有n
7多雲冷正常
有y8晴
適中高無n
9晴冷正常
無y10雨
適中正常無y
11晴適中正常有y
12多雲適中高
有y13多雲熱正常
無y14雨
適中高有n
根據上述樣本資料,得到統計結果:
天氣:
晴 y 1/6 n 3/4
多雲 y 2/6 n 0/4
雨 y 3/6 n 1/4
溫度:
熱 y 1/6 n 2/4
適中 y 2/6 n 1/4
冷 y 3/6 n 1/4
濕度:
高 y 2/6 n 3/4
正常 y 4/6 n 1/4
有風:
否 y 5/6 n 2/4
無 y 1/6 n 2/4
打網球:
y 6/10
n 2/4
根據統計結果計算11,12,13,14的概率:
11:p(y)=28% p(n)=72% **不去打網球 **錯誤
12:p(y)=100% p(n)=0% **去打網球 **正確
13:p(y)=100% p(n)=0% **去打網球 **正確
14:p(y)=37% p(n)=63% **不去打網球 **正確
根據**結果計算precision,recall,acc,f1-score
真實\**
positive
negative
positive
tp:2
fn:1
negative
fp:0
tn:1
tp:實正測正
fp:實負測正
fn:實正測負
tn:實負測負
precision:**為正實際正確的概率
2/2=100%
recall:真實為正**正確的概率
2/3=66%
acc:樣本**正確的概率:
3/4=75%
f1-score=(2recallprecision)/(recall+precision)
=(4/3)/(5/3)=80%
樸素貝葉斯
樸素貝葉斯演算法是一種基於概率統計的分類方法,它主要利用貝葉斯公式對樣本事件求概率,通過概率進行分類。以下先對貝葉斯公式做個了解。對於事件a b,若p b 0,則事件a在事件b發生的條件下發生的概率為 p a b p a b p b 將條件概率稍作轉化即可得到貝葉斯公式如下 p a b p b a ...
樸素貝葉斯
1.準備資料 從文字中構建詞向量 2.訓練演算法 從詞向量計算概率 3.測試演算法 儲存為 bayes.py 檔案 參考 coding utf 8 from numpy import 文字轉化為詞向量 def loaddataset postinglist my dog has flea probl...
樸素貝葉斯
機器學習是將資料轉化為決策面的過程 scikit learn縮寫為sklearn 訓練乙個分類器,學習之後 其處理的準確性 def nbaccuracy features train,labels train,features test,labels test from sklearn.bayes ...