2
我想使用支持向量機從一個非常高維的數據集,這是一個3249X40
矩陣做二進制分類。我有五個類似的數據集。雖然我正確地從決策樹中得到結果(低但不同),但每次使用任何數據集時,我都會得到與SVM完全相同的結果。我以如下方式使用svm:在Matlab中支持向量機分類的不尋常結果
svmModel = svmtrain(train_mat(trainIdx,:), groups(trainIdx), ...
'Autoscale',true, 'Showplot',false, 'Method','QP', ...
'BoxConstraint',2e-1, 'Kernel_Function','rbf', 'RBF_Sigma',1);
pred = svmclassify(svmModel, train_mat(testIdx,:), 'Showplot',false);
它有什麼問題?我使用的決策樹是這樣的:
tree=ClassificationTree.fit(train_mat(trainIdx,:),groups(trainIdx,:));
pred=tree.predict(train_mat(testIdx,:));
我正在從決策樹的5個集不同的結果(這似乎正確的爲好)。怎麼了?是否因爲支持向量機不能處理與變量數量相比觀察數量很少的數據集?
交叉驗證是獲得正確的訓練和測試數據的組合?我已經在這裏做了。 – MaxSteel 2013-04-26 17:11:16
不,要平均找到箱子約束和伽瑪效果最好。 – carlosdc 2013-04-26 17:12:45
你能解釋一下多一點。不好意思問這樣一個小問題。 – MaxSteel 2013-04-26 17:13:48