libsvm使用
SVM基礎(chǔ):
http://www.chinakdd.com/article-W82k0g2822JE712.html
看了一部分,還沒看完。。
博文:
(1)http://blog.csdn.net/chl033/article/details/4645544
寫的淺顯易懂
(2)如何提升LibSVM分類效果
http://blog.csdn.net/xiahouzuoxin/article/details/9372805
1. ‘svm-scale’的使用
2. 實際使用LibSVM的步驟
3. 關(guān)于交叉驗證(CrossValidation,簡稱CV)
4. 關(guān)于GridSearch
5. 非平衡數(shù)據(jù)
6. 自定義核函數(shù)(轉(zhuǎn)自http://www.matlabsky.com/forum.php?mod=viewthread&tid=15296)
另:
一、SVM 怎樣能得到好的結(jié)果
參考:http://jacoxu.com/?p=118
svmscale是用來對原始樣本進行縮放的, 范圍可以自己定, 一般是[0,1]或[-1,1]. 縮放的目的主要是
1) 防止某個特征過大或過小, 從而在訓(xùn)練中起的作用不平衡;
2) 為了計算速度. 因為在核計算中, 會用到內(nèi)積運算或exp運算, 不平衡的數(shù)據(jù)可能造成計算困難.
用法: svmscale [-l lower] [-u upper]
[-y y_lower y_upper]
[-s save_filename]
[-r restore_filename] filename
其中, []中都是可選項:
-l: 設(shè)定數(shù)據(jù)下限; lower: 設(shè)定的數(shù)據(jù)下限值, 缺省為-1
-u: 設(shè)定數(shù)據(jù)上限; upper: 設(shè)定的數(shù)據(jù)上限值, 缺省為1
-y: 是否對目標值同時進行縮放; y_lower為下限值, y_upper為上限值;
-s save_filename: 表示將縮放的規(guī)則保存為文件save_filename;
-r restore_filename: 表示將按照已經(jīng)存在的規(guī)則文件restore_filename進行縮放;
filename: 待縮放的數(shù)據(jù)文件, 文件格式按照libsvm格式.
默認情況下, 只需要輸入要縮放的文件名就可以了: 比如(已經(jīng)存在的文件為test.txt)
svmscale test.txt
這時, test.txt中的數(shù)據(jù)已經(jīng)變成[-1,1]之間的數(shù)據(jù)了. 但是, 這樣原來的數(shù)據(jù)就被覆蓋了, 為了讓規(guī)劃好的數(shù)據(jù)另存為其他的文件, 我們用一dos的重定向符>來另存為(假設(shè)為out.txt):
svmscale test.txt > out.txt
運行后, 我們就可以看到目錄下多了一個out.txt文件, 那就是規(guī)范后的數(shù)據(jù). 假如, 我們想設(shè)定數(shù)據(jù)范圍[0,1], 并把規(guī)則保存為test.range文件:
svmscale –l 0 –u 1 –s test.range test.txt > out.txt
這時, 目錄下又多了一個test.range文件, 可以用記事本打開, 下次就可以用-r test.range來載入了.
應(yīng)用 RBF kernel
用cross-validation和grid-search得到最優(yōu)的c和g
用得到的最優(yōu)c和g訓(xùn)練訓(xùn)練數(shù)據(jù)
測試
二、Windows下svm使用的文件格式形成代碼
在matlab中調(diào)用svm時沒有那么多功能(我目前理解的是這樣哦~~),如交叉驗證和數(shù)據(jù)歸一化等。為了使用這些功能,可以使用libsvm的exe文件進行交叉驗證和訓(xùn)練等。這些文件能夠接收的訓(xùn)練數(shù)據(jù)是下面的形式。下面程序就是把matlab中的特征向量和標簽轉(zhuǎn)換成需要的格式。
最終形成的文件格式為:
[標簽] 1:value 2:value 3:value……..
1 1:0 2:0 3:0.123379 4:0.56402 5:1.25773 6:2.27725 7:3.36294 8:2.5937
0 1:0 2:0 3:0 4:0.00410983 5:0.294078 6:1.3213 7:2.09252 8:3.55806
…
總結(jié)
- 上一篇: AMDD 一个把大问题分成小问题的优化算
- 下一篇: caffe 练习1:training L