MATLAB中的分類器

2021-07-05 17:40:13 字數 1530 閱讀 7613

目前了解到的

matlab

中分類器有:

k近鄰分類器,隨機森林分類器,樸素貝葉斯,整合學習方法,鑑別分析分類器,支援向量機。現將其主要函式使用方法總結如下,更多細節需參考

matlab 

幫助檔案。

設訓練樣本:

train_data             % 

矩陣,每行乙個樣本,每列乙個特徵

訓練樣本標籤:

train_label       % 

列向量測試樣本:

test_data

測試樣本標籤:

test_label

k近鄰分類器

(knn

)mdl = classificationknn.fit(train_data,train_label,'numneighbors',1);

predict_label   =       predict(mdl, test_data);

accuracy         =       length(find(predict_label == test_label))/length(test_label)*100

隨機森林分類器(

random forest

)b = treebagger(ntree,train_data,train_label);

predict_label = predict(b,test_data);

樸素貝葉斯

(na?ve bayes

)nb = *****bayes.fit(train_data, train_label);

predict_label   =       predict(nb, test_data);

accuracy         =       length(find(predict_label == test_label))/length(test_label)*100;

整合學習方法(

ensembles for boosting, bagging, or random subspace

)ens = fitensemble(train_data,train_label,'adaboostm1' ,100,'tree','type','classification');

predict_label   =       predict(ens, test_data);

鑑別分析分類器(

discriminant analysis classifier

)obj = classificationdiscriminant.fit(train_data, train_label);

predict_label   =       predict(obj, test_data);

支援向量機(

support vector machine, svm

)svmstruct = svmtrain(train_data, train_label);

predict_label  = svmclassify(svmstruct, test_data)

MATLAB中的分類器

目前了解到的 matlab 中分類器有 k近鄰分類器,隨機森林分類器,樸素貝葉斯,整合學習方法,鑑別分析分類器,支援向量機。現將其主要函式使用方法總結如下,更多細節需參考 matlab 幫助檔案。設訓練樣本 train data 矩陣,每行乙個樣本,每列乙個特徵 訓練樣本標籤 train label...

貝葉斯分類器的MATLAB實現

貝葉斯分類器是一種簡單的模式分類器,它是以特徵值的統計概率為基礎的,簡單的講,例如已知兩個類w1和w2,乙個未知樣本x,這裡說的未知,就是不知道它屬於w1類還是屬於w2類,然後根據統計方法分別計算得到x屬於w1類的概率,即p w1 x 和屬於w2類的概率,即p w2 x 如果p w1 x p w2 ...

matlab 實現貝葉斯分類器

網上有很多文章介紹貝葉斯原理,這裡推薦個鏈結。這裡再說貝葉斯分類器的設計步驟 1.對每個簇的資料求均值mu 和協方差矩陣sigma 2.對測試資料,將其對每個簇用均值和協方差矩陣求相關性。3.將資料分類到相關性大的簇中。分類器函式 bayesclassifer.m function labels b...