8
雖然LIBSVM提供的工具將數據按比例,有Scikit-瞭解(這應基於LIBSVM的SVC分類)我找不到任何的方式來擴展我的數據。縮放數據scikit學習SVM
基本上我想使用4個特徵,其中3範圍從0到1和最後一個是一個「大」高度可變的數。
如果我在libSVM中使用第四個功能(使用可以自動縮放數據的easy.py腳本),我會得到一些非常好的結果(精度爲96%)。 如果我包括第四可變Scikit,學習精度下降到〜78% - 但如果我排除它,我得到排除功能,當我在LIBSVM得到相同的結果。所以我很確定這是一個缺少縮放的問題。
我如何複製程序(即無需調用SVM-規模)SVM的縮放處理?
好知道了,謝謝。我是否應該將測試數據與列車數據一起標準化,然後再進行切片,還是僅應該自行執行測試數據? – luke14free
這在[documentation](http://scikit-learn.org/stable/modules/preprocessing.html#standardization-or-mean-removal-and-variance-scaling)中有提及。我想你應該單獨做,否則訓練數據會受到測試樣本的影響。使用「Scaler」類可以計算訓練數據的平均值和標準偏差,然後對測試數據應用相同的轉換。 – Maehler
你應該使用'Scaler'這一點,而不是獨立的功能'scale'。 「Scaler」可以插入「Pipeline」中,例如'scaling_svm = Pipeline([(「scaler」,Scaler()),(「svm」,SVC(C = 1000))])'。 –