徐海蛟博士 Teaching.
我们实验环境:libsvm 3.17, python 2.7.3, gnuplot 4.6。
数据集从小到大: dna 生物dna, satimage 卫星图像, letter 字母。数据已经下载到了svm-数据/下。我们看下数据集基本情况:
名称源类型 类数训练样本测试样本特征数
----------------------------------------------------------------
dna生物Statlog分类 32,0001,186180
satimage图像Statlog分类 64,4352,00036
letter字母Statlog分类 2615,0005,00016
傻瓜式用法:python easy.py 训练数据路径 测试数据路径
cd libsvm下的tools目录/
python easy.py ../svm-数据/dna.scale ../svm-数据/dna.scale.t
python easy.py ../svm-数据/satimage.scale ../svm-数据/satimage.scale.t
python easy.py ../svm-数据/letter.scale ../svm-数据/letter.scale.t
慢得如同蜗牛!15分钟, 18分钟,...。解释输出如下:
规格化训练数据...
警告: original#nonzeros 91233
new#nonzeros 360000
Use -l 0 if many original feature values are zeros
交叉验证...
Best c=8.0, g=0.0078125 CV rate=95.55
训练...
输出模型: dna.scale.model
规格化测试数据...
警告: original#nonzeros 53669
new#nonzeros 213480
Use -l 0 if many original feature values are zeros
测试...
精度 = 95.6155% (1134/1186) (分类)
Output prediction: dna.scale.t.predict
======================================
规格化训练数据...
交叉验证...
Best c=2.0, g=2.0 CV rate=92.221
训练...
输出模型: satimage.scale.model
规格化测试数据...
测试...
精度 = 91.85% (1837/2000) (分类)
Output prediction: satimage.scale.t.predict
... ...