樸素貝葉斯分類器:MATLAB工具箱實現
阿新 • • 發佈:2019-01-02
MATLAB工具箱的statistic toolbox中有naivebayes的類,可以直接使用。
使用預設的高斯分佈和混淆矩陣:
>> load fisheriris
>> O1 = fitNaiveBayes(meas,species);
生成
其中,NClass是因變數的頻數,ClassLevels則是因變數類別,prior為類別的頻率。
NDims是特徵數量,
Dist是分佈名稱,為normal。
Params是各特徵對各因變數的引數估計。
<span style="font-family:Times New Roman;font-size:14px;">>> C1 = O1.predict(meas); >> cMat1 = confusionmat(species,C1) cMat1 = 50 0 0 0 47 3 0 3 47</span>
獲得預測資料。
二、指定分佈函式
>> O2 = NaiveBayes.fit(meas,species,'dist',{'normal','kernel','normal','kernel'});
>> C2 = O2.predict(meas);
>> cMat = confusionmat(species, C2)
cMat =
50 0 0
0 47 3
0 3 47
此處則指定四個特徵分別符合高斯、核密度平滑估計、高斯、核密度平滑估計分佈。