ฉันรู้ว่า SVM เป็นตัวจําแนกไบนารี ฉันต้องการขยายไปยัง SVM แบบหลายชั้น วิธีไหนที่ดีที่สุดและอาจจะง่ายที่สุดในการดำเนินการ
รหัส: ใน MATLAB
u=unique(TrainLabel);
N=length(u);
if(N>2)
itr=1;
classes=0;
while((classes~=1)&&(itr<=length(u)))
c1=(TrainLabel==u(itr));
newClass=double(c1);
tst = double((TestLabel == itr));
model = svmtrain(newClass, TrainVec, '-c 1 -g 0.00154');
[predict_label, accuracy, dec_values] = svmpredict(tst, TestVec, model);
itr=itr+1;
end
itr=itr-1;
end
จะปรับปรุงได้อย่างไร?
classes
ทำอะไรในรหัส? ดูเหมือนว่าจะไร้ประโยชน์