SVM使用方法总结 本文关键词:使用方法,SVM
SVM使用方法总结 本文简介:SVM的使用方法(整理完成于2011-03-14)目录1Libsvm下载32Libsvm3.0环境变量设置33训练和测试数据集下载34运行python程序的环境配置35LIBSVM使用的一般步骤是:36再来说一下,libsvm-3.0的需要的数据及其格式。47Libsvm数据格式制作:48Windo
SVM使用方法总结 本文内容:
SVM的使用方法
(整理完成于2011-03-14)
目
录
1
Libsvm下载3
2
Libsvm3.0环境变量设置3
3
训练和测试数据集下载3
4
运行python程序的环境配置3
5
LIBSVM
使用的一般步骤是:3
6
再来说一下,libsvm-3.0的需要的数据及其格式。4
7
Libsvm数据格式制作:4
8
Windows版本的工具4
9
核函数的使用简介8
10
grid.py的使用10
11
subset.py使用方法11
12
checkdata.py的使用方法12
13
easy.py使用方法12
14
一个具体的应用实例13
15
备注:常见问题的解决办法15
1
Libsvm下载
在你给我发的邮件地址http://www.16fw.com/fileview_352799.html
下载,这个解压放到C盘根目录,然后拷贝C:/gnuplot/binary中的gnuplot.exe放到C:/libsvm-3.0/windows下面即可。
5
LIBSVM
使用的一般步骤
1)按照LIBSVM软件包所要求的格式准备数据集
2)对数据进行简单的缩放操作;
3)首要考虑选用RBF
核函数;
4)采用交叉验证选择最佳参数C与g
;
5)采用最佳参数C与g
对整个训练集进行训练获取支持向量机模型;
6)利用获取的模型进行测试与预测。
6
libsvm-3.0数据及其格式
该软件使用的训练数据和检验数据文件格式如下:
[label]
[index1]:[value1]
[index2]:[value2]
…
[label]
[index1]:[value1]
[index2]:[value2]
…
Label
就是说class(属于哪一类),就是你要分类的种类,通常是一些整数。
index
是有順序的索引,通常是连续的整数。就是指特征编号,必须按照升序排列
value
就是特征值,用来
train
的数据,通常是一堆实数组成。
(注:修改训练和测试数据的格式为程序可以识别的程序
目标值
第一维特征编号:第一维特征值
第二维特征编号:第二维特征值…
目标值
第一维特征编号:第一维特征值
第二维特征编号:第二维特征值…
……
目标值
第一维特征编号:第一维特征值
第二维特征编号:第二维特征值…
例如:
2.3
1:5.6
2:3.2
表示训练用的特征有两维,第一维是5.6,第二维是3.2,目标值是2.3
注意:训练和测试数据的格式必须相同,都如上所示。测试数据中的目标值是为了计算误差用
)
7
Libsvm数据格式制作
该过程可以自己使用excel或者编写程序来完成,也可以使用网络上FormatDataLibsvm.xls来完成。
FormatDataLibsvm.xls使用说明:
a.
先将数据按照下列格式存放(注意label放最后面):
value1
value2
…
label
value1
value2
…
label
…
value1
value2
…
label
b.
然后将以上数据粘贴到FormatDataLibsvm.xls中的最左上角单元格,接着工具->宏->执行FormatDataToLibsvm宏。就可以得到libsvm要求的数据格式。测试可用,下载地址在(http://ishare.iask.sina.com.cn/f/9299654.html?from=like
),或者自己再google中搜索下载即可。
8
Windows版本的工具
Windows版本的工具svm-scale.exe进行训练和测试数据的归一化,svm-train.exe进行模型训练,svm-predict.exe进行预测,具体步骤和过程在下面介绍。
2、
C:/libsvm-3.0/windows下的工具使用方法
打开C:/libsvm-3.0/windows
,里面有四个windows的exe程序。下面解释一下这四个exe执行程序的意义和用法
①svm-scale.exe:
scale输入数据,简单优化数据以提高精度。
扫描数据.
因为原始数据可能范围过大或过小,svmscale可以先将数据重新scale
(縮放)
到适当范围使训练与预测速度更快
使用方法:svm-scale.exe
[-l
lower]
[-u
upper]
[-y
y_lower
y_upper]
[-s
save_name]
[-r
store_name]
filename;其中
-l:数据下限标记;
lower:缩放后数据下限
缺省值:
lower
=
-1;
-u:数据上限标记;
upper:缺省值:
upper
=
1,代表着没有对y进行缩放;
-y:是否对目标值同时进行缩放;
y_lower:为下限值;
y_upper:为上限值;(回归需要对目标进行缩放,因此该参数可以设定为
–y
-1
1
);
-s
save_name:表示将缩放的规则保存为文件save_name;
-r
store_name:表示将缩放规则文件store_name载入后按此缩放;
filename:待缩放的数据文件(要求满足前面所述的格式)。
缩放规则文件可以用文本浏览器打开,看到其格式为:
y
lower
upper
min
max
x
lower
upper
index1
min1
max1
index2
min2
max2
其中的lower
与upper
与使用时所设置的lower
与upper
含义相同;index
表
示特征序号;min
转换前该特征的最小值;max
转换前该特征的最大值。数据集的缩放结果在此情况下通过DOS窗口输出,当然也可以通过DOS的文件重定向符号“>”将结果另存为指定的文件。该文
件中的参数可用于最后面对目标值的反归一化。反归一化的公式为:
(Value-lower)*(max-min)/(upper
-
lower)+lower
其中value为归一化后的值,其他参数与前面介绍的相同。
建议将训练数据集与测试数据集放在同一个文本文件中一起归一化,然后再将归一化结果分成训练集和测试集。
②
svm-train.exe:训练数据,生成模型
使用方法:svm-train.exe
[options]
training_set_file
[model_file],其中:
options(操作参数):可用的选项即表示的涵义如下所示
-s
svm类型:设置SVM
类型,默认值为0,可选类型有(对于回归只能选3或4):
0
–
C-SVC
1
–
n-SVC
2
--
one-class-SVM
3
–
e-SVR
4
–
n-SVR
-t
核函数类型:设置核函数类型,默认值为2,可选类型有:
0
--
线性核:uv
1
--
多项式核:
(g*uv+
coef
0)deg
ree
2
--
RBF
核:e(
u
v
2)
g
–
3
--
sigmoid
核:tanh(g*uv+
coef
0)
-d
degree:核函数中的degree设置,默认值为3;
-g
g
:设置核函数中的g
,默认值为1/
k
;
-r
coef0:设置核函数中的coef
0,默认值为0;
-c
cost:设置C-
SVC、e
-
SVR、n
-
SVR中从惩罚系数C,默认值为1;
-n
n
:设置n
-
SVC、one-class-SVM
与n
-
SVR
中参数n
,默认值0.5;
-p
e
:设置n
-
SVR的损失函数中的e
,默认值为0.1;
-m
cachesize:设置cache内存大小,以MB为单位,默认值为40;
-e
e
:设置终止准则中的可容忍偏差,默认值为0.001;
-h
shrinking:是否使用启发式,可选值为0
或1,默认值为1;
-b
概率估计:是否计算SVC或SVR的概率估计,可选值0
或1,默认0;
-wi
weight:对各类样本的惩罚系数C加权,默认值为1;
-v
n:n折交叉验证模式。
training_set_file:是要进行训练的数据集;
model_file:是训练结束后产生的模型文件,该参数如果不设置将采用默认的文件名,也可以设置成自己惯用的文件名。
(注1:其中-g选项中的k是指输入数据中的属性数。操作参数
-v
随机地将数据剖分为n
部分并计算交叉检验准确度和均方根误差。以上这些参数设置可以按照SVM
的类型和核函数所支持的参数进行任意组合,如果设置的参数在函数或SVM
类型中没有也不会产生影响,程序不会接受该参数;如果应有的参数设置不正确,参数将采用默认值。)
(注2:网上实验中的参数-s取3,-t取2(默认)还需确定的参数是-c,-g,-p
另,
实验中所需调整的重要参数是-c
和
–g,-c和-g的调整除了自己根据经验试之外,还可以使用gridregression.py对这两个参数进行优化。(需要补充)
该优化过程需要用到Python(测试是2.5),Gnuplot(测试是4.2),gridregression.py(1、该文件需要修改路径2、下载地址在http://ishare.iask.sina.com.cn/f/6784903.html,再试没有使用过)。
然后在命令行下面运行:
python.exe
gridregression.py
-log2c
-10,10,1
-log2g
-10,10,1
-log2p
-10,10,1
-s
3
–t
2
-v
5
-svmtrain
E:/libsvm/libsvm-2.86/windows/svm-train.exe
-gnuplot
E:/libsvm/libsvm-2.86/gnuplot/bin/pgnuplot.exe
E:/libsvm/libsvm-2.86/windows/train.txt
>
gridregression_feature.parameter
以上三个路径根据实际安装情况进行修改。
-log2c:是给出参数c的范围和步长
-log2g:是给出参数g的范围和步长
-log2p:是给出参数p的范围和步长上面三个参数可以用默认范围和步长
-s:选择SVM类型,也是只能选3或者4
-t是选择核函数
-v
:10
将训练数据分成10份做交叉验证。默认为5
为了方便将gridregression.py可以将其存放在python.exe安装目录下
trian.txt为训练数据,参数存放在gridregression_feature.parameter中,可以自己命名。
搜索结束后可以在gridregression_feature.parameter中最后一行看到最优参数。
其中,最后一行的第一个参数即为-c,第二个为-g,第三个为-p,最后一个参数为均方误差。前三个参数可以直接用于模型的训练。
然后,根据搜索得到的参数,重新训练,得到模型。
例如:svmtrain.exe
-s
3
-p
0.0001
-t
2
-g
32
-c
0.53125
-n
0.99
feature.scaled
;
再例如:运行svmtrain.exe
heart_scale会得出下面结果输出:
其中,
#iter为迭代次数,
nu
是你选择的核函数类型的参数,
obj为SVM文件转换为的二次规划求解得到的最小值,
rho为判决函数的偏置项b,
nSV
为标准支持向量个数(0=
0x020400A1:
self.queue.appendleft(item)
else
self.queue.insert(0,item)
16
篇2:八秒手机编辑器使用方法总结
八秒手机编辑器使用方法总结 本文关键词:编辑器,使用方法,手机
八秒手机编辑器使用方法总结 本文简介:1八秒微信营销神器,可以在微信文章中任何时候都可插入自己的产品图片、文字、姓名电话、微信号、视频,链接地址!用热门文章来宣传自己的产品和项目,轻轻松松搞定。?让广告没有痕迹,朋友不烦你,还帮你分享,纯软性广告工具!不管你做什么项目,都可以加?快推广速度和受欢迎程度!为什么要升级,升级有什么好处?(免
八秒手机编辑器使用方法总结 本文内容:
1
八秒微信营销神器,可以在微信文章中任何时候都可插入自己的产品图片、文字、姓名电话、微信号、视频,链接地址!用热门文章来宣传自己的产品和项目,轻轻松松搞定。?让广告没有痕迹,朋友不烦你,还帮你分享,纯软性广告工具!不管你做什么项目,都可以加?快推广速度和受欢迎程度!
为什么要升级,升级有什么好处?(免费用户和付费用户的区别)
八秒会员有免费会员和付费升级会员两种。
1.免费会员只能选择八秒里面规定文章进行编辑,而不能对微信里的任意文章进行编辑操作。
2.免费会员在编辑时只能插入文字类的广告,而不能插入图片,视频等广告。
3.付费会员不仅可以选择插文字,还可以插入图片、自定义链接、插视频、二维码等所有广告操作。
4.其次,免费会员推广八秒不能获得佣金奖励,升级会员推广八秒可以获得三级佣金(30%,15%,15%)奖励。
4.升级为总代还会增加收益.全部团队加15%
5一箭多雕!广告效果更好更人性化更方便!而且获得源源不断推广软件的不菲收入,重要的是很多人不知道但是非常需要。
八秒——送你微信营销利器,功能强悍,独一无二无限传播;
八秒——送你方便快捷,使用简单,史上最强手机编辑神器;
八秒——只需八秒手机变自动赚钱机器,轻松转发一键完成。
八秒:一款专用的手机编辑器
快速便捷的制作推广软文,广告发布
现场制作图文混排,活动直播
注册使用功能强悍并可赚钱的微营销利器;
篇3:文字材料中序号、标点符号、汉语拼音的正确使用方法
文字材料中序号、标点符号、汉语拼音的正确使用方法 本文关键词:汉语拼音,标点符号,使用方法,序号,正确
文字材料中序号、标点符号、汉语拼音的正确使用方法 本文简介:文字材料中序号、标点符号、汉语拼音的正确使用方法一、文字材料中序号、标点的正确使用(一)“第一、”、“第二、”或“首先、”、“其次、”等用顿号不规范,应该用逗号,即“第一,”、“第二,”、“首先,”、“其次,”等。(二)“一,”、“二,”、“三,”等用逗号不规范,应该用顿号,即“一、”、“二、”、“
文字材料中序号、标点符号、汉语拼音的正确使用方法 本文内容:
文字材料中序号、标点符号、汉语拼音的正确使用方法
一、文字材料中序号、标点的正确使用
(一)
“第一、”、“第二、”或“首先、”、“其次、”等用顿号不规范,应该用逗号,即“第一,”、“第二,”、“首先,”、“其次,”等。
(二)“一,”、“二,”、“三,”等用逗号不规范,应该用顿号,即“一、”、“二、”、“三、”。
(三)“1、”、“2、”、“3、”和“A、”、“B、”、“C、”等用顿号不规范,应该使用齐线墨点(实心小圆点),即“1.”、“2.”、“3.”
或“A.”、“B.”、“C.”。
(四)序号如加括号,如(1)(2)(3)①②③等不再加标点符号。
(五)用“一是”、“二是”、“三是”表示顺序时,可在“一是”、“二是”、“三是”之后分别用逗号。例如:“一是,”、“二是,”、“三是,”。也可以不用标点符号,直接连接下文。
(六)用“甲”、“乙”、“丙”、“丁”表示顺序时,在“甲”、“乙”、“丙”、“丁”之后分别用顿号。例如:“甲、”,“乙、”,“丙、”,“丁、”。
(七)在“一方面”、“另一方面”之后,可以分别用逗号,也可以不用标点符号,直接连接下文。
二、年份中“零”的正确使用
年份如用中文形式表示,如“二○○九年十月”,则中间的“○”不能写成阿拉伯数字的长“0”或英语全角字符“O”,而应该用圆“○”(一般在电脑“插入”栏里“特殊符号”或“几何图形符”中选择);年份如用阿拉伯数字形式表示,则中间应该用长“0”表示,如:“2010年10月”。
三、公文的年份中“括号”的正确使用
印发公文时,年份外的括号应该用中括号“〔〕”,而不应该用小括号“(
)”或方括号“[
]”。
如:教办字(2011)5号(不规范)
教办字
[2011]
5号(不规范)
教办字〔2011〕5号(规范)
四、正确区分连接号和破折号
(一)凡文中使用连接号的应该使用“~”,而不使用“——”。
如:2010年9月~10月中的“~”(使用规范)
(二)凡文中使用破折号的应该使用占两个空格的连线“——”而不用“~”或只占一个空格的短线“―”或两个短线“——”表示。如:再接再厉,推进语言文字规范化工作——2009年语言文字工作总结(选取破折号,一般在电脑“插入”栏“标点符号”中查找)。
五、相邻的两个数字间顿号的使用
(一)相邻的两个数字表示概数,要用汉字数码,中间也不要加顿号。
如:2、3个
5、6天
27、8岁
6、7点钟
(不规范)
两三个
五六天
二十七八岁
六七点钟
(规范)
(二)相邻两个数字连用,有时不是表示概数,而是一种缩略形式,中间要用顿号。
如:初中一、二年级
国棉六、七厂
八、九两个月
退居二、三线(规范)
六、汉语拼音注音字母的正确使用
(一)大小写:句子的首字母大写;诗行的首字母大写;专有名词每个词首字母大写;标题、标语可以全部大写。
(二)分连写:词内连写,词间分写。
例1:“公共场所请勿吸烟”
GONG
GONG
CHANG
SUO
QING
WU
XI
YAN
(不规范)
“公共场所请勿吸烟”
GONGGONG
CHANGSUO
QINGWU
XIYAN
(规范)
例2:中国井冈山经贸洽谈会
ZHONGGUOJINGGANGSHANJINGMAOQIATANHUI(不规范)
ZHONGGUO
JINGGANGSHAN
JINGMAO
QIATANHUI(规范)
七、文章正文文中标题
一级标题:标题序号为“一、”,独占行,末尾不加标点;
二级标题:标题序号为“(一)”,与正文字体字号相同,独占行,末尾不加标点符号;
三级以下标题:三、四、五级标题序号分别为“1.”、“(1)”和“①”,与正文字体字号相同,可根据标题的长短确定是否独占行。若独占行,则末尾不使用标点;否则,标题后必须加句号。每级标题的下一级标题应各自连续编号。