[英]Matlab multidimensional feature SVM
我在Matlab中使用SVM分類器有一個小問題。 我有一個61200x59的要素矩陣,其中每一行代表從圖像中提取的一組要素(所有double值)。 所有這些功能都與包含2個標簽的61200x1矩陣相關聯:0和1(作為雙變量)。 現在,我想訓練線性分類器,並且使用了以下函數:
SVM_Model = fitcsvm(train_features, train_labels, 'KernelFunction', 'linear')
如果查看此行的詳細信息,我將得到以下結果:
SVM_Model =
ClassificationSVM
ResponseName: 'Y'
CategoricalPredictors: []
ClassNames: [0 1]
ScoreTransform: 'none'
NumObservations: 61200
Alpha: [40956×1 double]
Bias: 0.9998
KernelParameters: [1×1 struct]
BoxConstraints: [61200×1 double]
ConvergenceInfo: [1×1 struct]
IsSupportVector: [61200×1 logical]
Solver: 'SMO'
但是,當我在測試集上調用預測函數時( [label, score] = predict(SVM_Model, test_features(i, :));
),它總是預測標簽1(超過15000個測試,因此似乎有點可疑) ),並且在所有0類對象上都存在分類錯誤。 誰能告訴我可能是什么問題? 由於SVM無法處理高維點,是否有必要重新調整功能? 還是存在另一個問題(例如配置錯誤是SVM學習)?
使用HIK內核,一切正常。 同樣,使用RBF內核也可以很好地解決此問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.