(2009-04-13 22:24:38)
转载
标签: | 分类:科研-支持向量机(SVM)预测 |
P.S. 多谢“三月未央”网友的提醒,本文中的一些错误得到改正,原先的第五幅图中路径有错(估计那晚太困了,稀里糊涂的就写出来了,实为害人啊)!再次感谢你们的关注,希望在交流中一起进步!修改和增加部分已经用红色字体区分了,还有就是第五章图,估计以前做错的人不少,不要怪我!
晚上一网友发来消息说还是不清楚怎么做,老出错,现在有点闲功夫,截了一些图按部就班的做了,希望能看懂。
其实只要修改一个文件(gridregression.py)的路径就可以了,其他网上说的两个文件(grid.py和easy.py)的路径可以不做修改,因为回归根本没有用到。修改的地方是绿色的两行路径,写成实际路径就可以了。网上下载下来的一般都是r"...svm-..."所以要改。修改后如下图。
改完之后,首先把你的数据集包括da
现在要做的就是真正意义上的第一步,归一化处理,这一步要做,希望不要为了简便不做,这样预测出来不准。具体在dos下调完路径后,执行下面两句,分别是归一化数据集和测试集后产生新的两个文件da
至于路径的问题,很多不涉及计算机专业的网友很痛苦,经常会不知所措。不过我再多嘴一次:先输入字母cd,大小写都无所谓了,然后空格,之后就是你想要让dos去运行的地址(路径)。可以老老实实的手打,也可以复制C:\libsvm-2.88\windows,然后粘贴,dos框下Ctrl+V无效,只能鼠标右击选择粘帖。最后按一回车键就把路径调到C:\libsvm-2.88\windows下了。
现在C:\libsvm-2.88\windows中多了两个文件,其实还有一个scale,不用管他,不起作用!
现在是通过gridregression.py函数进行参数寻优,把路径调好,注意调到C:\Python25下了。输入下面的语句python C:\libsvm-2.88\python\gridregression.py -svmtrain C:\libsvm-2.88\windows\svm-train.exe -gnuplot C:\gnuplot\bin\pgnuplot.exe -log2c -10,10,1 -log2g -10,10,1 -log2p -10,10,1 -v 10 -s 3 -t 2 C:\libsvm-2.88\windows\da
有天早上一个朋友说你昨晚这么晚回来,早上怎么7点就上线了啊qq,汗,电脑一夜跑这玩意儿。。。扯远了。
PS.命令很长可以选择上述方法复制后,在dos框中右击粘贴完成。当然有热心的新浪网友的建议:(这么长的命令在dos下敲很容易出错的,建议大家在相应目录下建立一个bat文件,如“py.bat",把相应命令拷贝过去,直接运行"py",这样就省事多了。希望博主把这方法加到你的博文里。),我还没有试过。
训练完后,在C:\Python25中会有一个gridregression_da
打开它,下面最后一行分别为c,g,p,mse。其中mse没有用,其实这个值越小越好。
P.S.
把刚才的3个参数用来进行训练svm模型。把路径重新调回C:\libsvm-2.88\windows,输入语句训练,会在C:\libsvm-2.88\windows里产生一个da
最后打开out和test文件比较一下结果差多少,自己去计算咯。
到此已经实现了libsvm软件做回归预测的全过程,个人认为已经很详尽,比网上任何帖子都清楚哈哈。哪里不清楚的希望大家一起讨论~~
《科研-支持向量机(SVM)预测》中的相关文章:
使用宏命令FormatDataLibsvm.xls将数据转成LIBSVM格式
分享到新浪微博
阅读(3878)┊ 评论 (77)┊收藏(1)┊ 转载┊分享┊ 打印┊举报
已投稿到: |
---|
转载是分享博文的一种常用方式...
前一篇:终于搞定svm回归
后一篇:回去半个月
评论重要提示:警惕虚假中奖信息,点击查看详情 [
新浪网友2009-04-15 10:33:40 [举报]
确实很详细,不过是不是还要设置一下环境变量才行?加我的QQ:363229939。我已经把我的身份验证取消了。
新浪网友2009-04-17 21:38:32 [举报]
请问,我老在第54行判断参数个数那出错,导致:print
是怎么回事,我按照你的输的
博主回复:2009-04-20 09:41:22
还是路径问题不正确吧,路径和我不一样的话,语句要相应修改的。
新浪网友2009-04-22 11:04:32 [举报]
方法路径完全和你一样还是老出错,第52行,print
梦在继续2009-04-22 18:28:38 [举报]
第几步出错,哪张图片出错,你跟我说清楚,不行的话你留下qq我教你...
新浪网友2009-04-23 09:07:27 [举报]
我算的是这样的,你的第一幅图里svmtrain_exe
C:\Python25>python
vm\windows\svm-train.exe
-10,10,1
train.2.txt>gridregression_train2.parameter
IndentationError:
新浪网友2009-04-23 09:33:28 [举报]
不好意思,刚才那个报错是因为多了些空格
现在又出现这个错误了
C:\Python25>python
vm\windows\svm-train.exe
10,10,1
rain.2.txt>gridregression_train2.parameter
E:\svm\libsvm\python\gridregression.py:204:
梦在继续2009-04-23 09:45:53 [举报]
你的第一行"-svm-train
新浪网友2009-04-23 11:01:48 [举报]
我试过了,结果是一样的:(
新浪网友2009-04-23 16:23:17 [举报]
我刚才已经可以算了,是执行命令里几个空格写错了,非常感谢你回答我的问题!
新浪网友2009-04-23 21:38:58 [举报]
非常感谢!先看看再说.
dongxu2009-04-24 11:22:38 [举报]
你好
新浪网友2009-05-03 16:27:59 [举报]
博主支持向量机达人,加我QQ吧:546479552,不光应用上有些问题,我想问问你应用到实际中的一些应用问题,看你做过电力系统方面的应用
新浪网友2009-05-04 10:02:05 [举报]
博主。能加下QQ吗?11661211
博主回复:2009-05-04 10:31:54
百度键入「下载grid...」在一个论坛有人贴出来了
新浪网友2009-05-06 15:29:00 [举报]
第五张图片,照着用gridregression.py寻优,报错‘python’不是内部或外部命令,也不是可运行的程序或批处理文件,这是哪出错了呢
博主回复:2009-05-07 10:31:56
你可能没有下载gridregresion.py文件,或是下载下来的文件路径不对,或在dos下运行的路径或语句错了!
新浪网友2009-05-08 13:16:23 [举报]
强大的楼主,我有问题想请教。
如果我的输入是30组的66维数据,输出是30组的400维数据(66个输入节点,400个数出节点)用libsvm能实现么?
博主回复:2009-05-08 13:57:09
不管是回归还是分类,svm输出只有一个value.
新浪网友2009-05-18 09:01:36 [举报]
你好,问一下,你的第一副图中的gnuplot_exe=r"C:\gnuplot\bin\pgnuplot.exe"是不是要先下载gnuplot啊?为什么我下载的gnuplot中没有bin呢?
新浪网友2009-05-18 09:02:15 [举报]
第五张图片,照着用gridregression.py寻优,报错‘python’不是内部或外部命令,也不是可运行的程序或批处理文件,这是哪出错了呢
梦在继续2009-05-18 09:14:48 [举报]
你可能没有下载gridregresion.py文件,或是下载下来的文件路径不对,或在dos下运行的路径或语句错了!
新浪网友2009-05-29 10:08:55 [举报]
楼主,最终预测效果很好,但是从得到的参数中,如何写出f(x)的回归函数模型呢,qq:939795666?
梦在继续2009-05-29 15:33:22 [举报]
模型就是svm的理论啊,,,什么转化为二次规划问题,libsvm是基于理论来计算该问题的,所以只要把你做的参数和结果写上去就好了.
新浪网友2009-05-30 17:17:39 [举报]
您好,我下载的libsiv2.86怎么没有gridregression文件啊?能不能给我传一个完整的libsiv2.86?谢谢!!QQ276204899
lypzqq2009-06-02 21:23:51 [举报]
你好,在你的博客中看到关于libsvm的文章,有个问题已经困扰好几天,想请教一下,不胜感激:
我按照网络上的方法把libsvm-2.82解压到C:\下面,grid.py,easy.py移动到libsvm-2.82\python下面,并且
里面的内容也改了。为什么在
C:\Python>python
出现错误:
File
print
syntaxError:invalid
好向使用命令
谢谢!
新浪网友2009-06-05 10:54:16 [举报]
hi,有一个问题,问什么我gridregression寻优出来的参数的预测结果还不如默认参数的识别率高?
新浪网友2009-06-05 10:55:12 [举报]
解释就是说参数寻优没发生效果,这让人很无语。
博主回复:2009-06-05 11:04:16
寻优的范围是自己定的,你没有设好范围,所以最优参数没有落在你的范围内!
新浪网友2009-06-05 16:22:50 [举报]
很详细,谢谢共享
新浪网友2009-06-05 16:22:52 [举报]
很详细,谢谢共享
新浪网友2009-06-05 16:26:50 [举报]
“训练好了紧接着对test文件预测,输入第二条语句,得出结果在out里面。最后打开out和test文件比较一下结果差多少”。个人理解貌似有点问题吧,我觉得这样比较没有什么意义呀?应该对da
新浪网友2009-06-05 16:29:34 [举报]
“训练好了紧接着对test文件预测”,为什么是对test文件预测不是对da
博主回复:2009-06-05 20:41:07
你没有理解什么叫拟合和预测。拟合是你所说的预测da
新浪网友2009-06-06 10:36:32 [举报]
谢谢博主回复!经你一说,基本搞清了拟合和预测是怎么回事。用SVM训练da
博主回复:2009-06-06 19:14:11
大体就两个办法,一是参数不好,二是你本身的数据不适合拟合和预测或者说你特征选错了,选了一些不相关的了
馨韵2009-06-10 09:16:37 [举报]
博主,非常感谢这么详细地提供了libsvm步骤!同时,看到你这么热心地为大家解决问题,我也十分想和你交流一下,我的QQ是84005291,最近在做毕设,像上面的网友一样,照着用gridregression.py寻优,总是出现报错“‘python’不是内部或外部命令,也不是可运行的程序或批处理文件”的情况,查看了一些帖子,是不是我没有做好python和libsvm的接口问题,还是其他问题尼?我明天能在线,如果你看到了,希望能加我的QQ帮助我,多谢了!
新浪网友2009-06-18 14:31:18 [举报]
博主你好!我已经按你的方法把路径调好,在用gridregression.py函数进行参数寻优,在C:\Python25下运行,回车后电脑一直在计算,CPU一直是100%,我的训练数据集(已归一化)只有20行3列呀,怎么会算不出结果呢???期待博主的答复……
博主回复:2009-06-18 18:38:17
要等一段时间的,还有可能你电脑配置问题吧~
中国墨海堂2009-06-18 23:08:01 [举报]
╰╮╰
╭╯╭╯╰╮╰╮
╰╮╰╮
╭
███████
█
███████
███████═╯
◥█████◤
给你增加点人气来咯·记得也来踩踩我的博客哦!~~
新浪网友2009-06-29 17:27:49 [举报]
谢谢楼主了,讲解的这么详细,我有个问题,在运行时出现了错误
Traceback(most
unboundLocalError:
这时进程svm-train.exe还在运行,CPU使用率在68%,请问这种情况正常么,会不会影响结果,谢谢了
博主回复:2009-07-01 14:25:40
你贴出来的错误我木有碰到过哦。不过在寻优(gridregression)过程中cpu是很高的,运行train时候应该不高的!
新浪网友2009-07-03 11:49:57 [举报]
非常感谢博主。这么长的命令在dos下敲很容易出错的,建议大家在相应目录下建立一个bat文件,如“py.bat",把相应命令拷贝过去,直接运行"py",这样就省事多了。希望博主把这方法加到你的博文里。
新浪网友2009-07-11 14:52:33 [举报]
第三幅图中,svm-scale中的参数-r与-s的差距在哪里,楼主能具体解释一下吗??要是第二条scale语句中,也和第一条一样用-s会有区别吗?还是一样呢,请指教
博主回复:2009-07-12 08:36:04
这几天在桂林玩真没时间上网!你提的很好,有很大的区别!第二条语句是用第一条语句中的规一化格式来归一化测试集文件的。我电脑不在,否则把英文版原话贴出来,你可以去READ
新浪网友2009-07-14 11:14:20 [举报]
我看了一下,楼主的da,楼主help
博主回复:2009-07-15 07:54:56
考虑到时间问题,很多学者采用其他改进算法来加快计算,什么分块,最小二乘SVM等我看过也忘了!
新浪网友2009-07-15 10:19:17 [举报]
谢谢楼主回复,我以上说的其实是“参数寻优”的过程,我的gridregression快运行72小时了,还没有最终的结果;其实我的训练还没开始呢,实在是等的有点无法忍受了。我的机器还可以,运行时cpu用到50%左右。我也不知道该如何提高参数寻优的速度。我想做几组数据,一组数据就耗费这么长时间,其它的时间都来不及做。
博主回复:2009-07-15 23:11:45
语句中log后面有三个参数,为左、右区间和步长,你把步长这个参数弄大点,搜索的网格大,时间少!三个步长都去改改哦!
Haylyer2009-07-15 19:53:35 [举报]
请问楼主设定的参数里面,哪个是误差惩罚因子,哪个是不敏感损失系数啊。
在训练之前是不是一定要做归一化处理啊?我有6组数据是用来做预测的,最后6组数据的预测值都是同一个数字,当然跟实际值相差很大。这个可能是什么原因啊,是不是参数的选择有问题。我也有用楼主说的“参数寻优”,得出来的结果感觉怪怪的。想跟楼主讨论一下啊,我的QQ147324147
博主回复:2009-07-15 23:24:12
属性太相近了
Haylyer2009-07-15 21:08:26 [举报]
我的gridregression_da
[local]
[local]
[local]
[local]
[local]
[local]
[local]
博主回复:2009-07-16 08:53:59
选最后一行,我博客中有详细介绍,不过我看了你的结果貌似寻优还未结束你就复制上来了,还有你寻参的结果不是很好,MSE太大了!
新浪网友2009-07-16 16:23:36 [举报]
楼主,你好。我就是楼上的那个da
再次感谢楼主无私的把自己的研究成果与大家共享。
博主回复:2009-07-16 18:14:01
可以用你说的方法加速寻优!TRAIN的时候速度是很快!我的MAE是3多一点,你的结果也不差!还有你参照我上面回复的方法,增加步长减少时间寻优!我只是用了这个软件,提不上研究成果!
Haylyer2009-07-17 16:26:05 [举报]
谢谢楼主对我问题的回复。我删除了一些相似的属性,但是寻参时MSE还是太大了,寻参的结果不好,得到的预测值跟实际值相差很大。请问楼主这有什么办法改进啊。
博主回复:2009-07-17 17:38:21
能说明一些问题,就是你的属性不能准确的反映(预测)你的目标值,可能是你选取的属性不好,也可能是你的数据有问题!
新浪网友2009-08-06 15:31:32 [举报]
楼主,你好!我和你在QQ讨论过这个问题,不知道你注意没有:da
博主回复:2009-08-06 16:31:41
你说的很对~thx
新浪网友2009-08-06 15:32:47 [举报]
怎么看不见我的回复啊
新浪网友2009-08-09 09:43:12 [举报]
楼主,想问一下,执行SVM-SCALE归一化后如果数据不在-1到1之间,是不是出了问题啊
新浪网友2009-08-11 16:56:44 [举报]
gridregression.py这个文件我怎么找不到呢?
HELP2009-08-18 10:39:25 [举报]
C:\python26>python
Traceback
请高手么帮忙看看这是咋回事,我按版主的只改了girdregression.py中的两个路径svmtrain_exe
gnuplot_exe
HELP2009-08-18 11:27:01 [举报]
版主帮忙看看呀,如果方便可否加我QQ271230272想你讨教以下我是初学
HELP2009-08-18 11:39:56 [举报]
简单的快乐2009-08-19 13:35:32 [举报]
博主,我按照你做的里面参数寻优的时候老师出错,能不能加下你的QQ请教下您!十万火急,谢谢了
简单的快乐2009-08-19 14:10:58 [举报]
博主,我参照你写的这个我做了但是参数寻优老是出错,能不能加一下我的QQ请教下您,十万火急,谢谢
评论