2013-03-20 41 views
-1

我有一些問題與SVM。我使用svmtrain和svmclassify進行分類質量和沒有質量。我有數據訓練40個假陽性和13個真陽性。當我測試它(數據測試,我使用=數據培訓)正在工作,並給予100%。但是當我測試它(數據測試我從數據訓練中取出)時,數據訓練(TP = 8 FP = 30)和數據測試(TP = 5 FP = 10)。結果給所有的數據誤報。對這個問題有什麼想法嗎?還是因爲少量的數據測試和培訓?爲什麼使用支持向量機的分類結果在matlab中不好?

回答

1

獨立測試集執行得不好很正常,這意味着您的模型顯然傾向於過度適應,因爲您在適合訓練數據時得到了100%。嘗試調整svm模型參數,應用數據預處理,特別是標準化,以減少訓練和(希望)您的獨立測試數據的適應性。當兩個準確度接近時,該模型將是有效的。

+0

好的。我想確保1.我的分類已經是正確的(因爲在訓練數據用於測試時給出100%)? 2.我應該平衡訓練數據和測試數據的數量嗎? (這也是問題?)。 3.你的意思是什麼調整模型參數?(你的意思是我必須嘗試另一個內核並設置參數?或者有另一個參數?4.如果我使用了libsvm,它會給出更好的結果嗎?在這個領域是初學者,謝謝 – user2157806 2013-03-21 12:07:28

+0

如果你使用的是libsvm包,你可以看看初學者的指南:http://www.csie.ntu.edu.tw/~cjlin/papers/guide/guide.pdf特別注意「網格搜索」技術,100%的訓練數據並不意味着除了過度擬合的可能性之外,重要的是獨立測試數據的%校正和交叉驗證數據。我不確定平衡會是一個問題,因爲它是高度針對特定問題的。 – user2194365 2013-03-21 12:11:29

相關問題