資料探勘-SVM(支援向量機)的matlab基礎DEMO詳細註解
阿新 • • 發佈:2019-01-23
load fisheriris %載入matlab自帶的資料[有關資料的資訊可以自己到UCI查詢,這是UCI的經典資料之一] %其中meas是150*4的矩陣代表著有150個樣本每個樣本有4個屬性描述,species代表著這150個樣本的分類. data = [meas(:,1), meas(:,2)]; %在這裡只取meas的第一列和第二列,即只選取前兩個屬性. groups = ismember(species,'setosa'); %由於species分類中是有三個分類:setosa,versicolor,virginica,為了使問題簡單,我們將其變為二分類問題:Setosa and non-Setosa. [train, test] = crossvalind('holdOut',groups); cp = classperf(groups); %隨機選擇訓練集合測試集[有關crossvalind的使用請自己help一下] %其中cp作用是後來用來評價分類器的. svmStruct = svmtrain(data(train,:),groups(train),'showplot',true); %使用svmtrain進行訓練,得到訓練後的結構svmStruct,在預測時使用. classes = svmclassify(svmStruct,data(test,:),'showplot',true);