用libsvm做时间序列预测,为什么训练数据越少越准确?

论坛 期权论坛 期权     
宋河良液   2018-10-3 21:44   6172   8
用于训练的数据越少,分类得到的胜率越高,当样本数据为1时最好。 这肯定是不对的,会有哪些原因呢?望大牛们多多指教~
。。。。。。。。。。。.
之前描述的不对,我是用前五天的行情数据,预测下一天的涨跌。往前滚动20天,就得到了20个样本。现在是随着样本数目增多,预测准确率变低。样本太少训练出来的svm也没有说服力啊,就很困惑了。。
分享到 :
0 人收藏

8 个回复

倒序浏览
2#
Xi Yang  6级职业 | 2018-10-3 21:44:40 发帖IP地址来自
这完全取决于你生成分割平面的方法。
传统概念的SVM非常傻,只适用于组间分离性非常好的数据集。你加的数据一多,组和组之间出现混杂的情况,SVM就会抽掉。
我现在比较喜欢最弱智的最近距离法。
3#
丁闯  1级新秀 | 2018-10-3 21:44:42 发帖IP地址来自
和实际应用有关,最好在自己的数据上调参试试
4#
龟心似贱  3级会员 | 2018-10-3 21:44:43 发帖IP地址来自
既然是监督学习,那你的监督结果是什么?就是在单样本训练的时候,什么对照结果?
5#
殷然  3级会员 | 2018-10-3 21:44:44 发帖IP地址来自
哥哥们都没做过机器学习啊 我来终结这个问题 这个问题明显不是模型阶数的问题 而是时间序列的平稳性造成的 简单来说就是数据原本的生成模型是时变的,造成使用的训练数据变长后实际学到的是各个时间上模型的平均,而你的测试数据是最近的数据,所以肯定是训练数据越短越效果越好
6#
by wang  2级吧友 | 2018-10-3 21:44:45 发帖IP地址来自
我在使用libsvm的epsilon-svr来预测大盘点数,采用的样本有交易量,交易额,几种不同的平均增长率等等,还有前日的一些信息。
用midaco做通过交叉验证参数优化。
目前为止吧,感觉并不能预测,选择全局较好的参数去训练,虽然验证可以得到99%以上相关度,但是实际上由于预测的是实际值,实际上在最近的样本上并不能展现很好的拟合。
如果放弃全局,只在最近的几十个交易日,可以得到很好的拟合,但是实际上,并不能实现预测,至少观察了几天,所以,显然过拟合了。
其实我感觉要是能预测的话应该早就有人做好了。我个人认为每日的涨跌只是高频的噪声,具有很大随机性,所以预测只能预测趋势性的东西。
我准备再试试SVC,或者抽离一些特性试试。
不过个人认为用svm来生成一些指标,应该比直接的预测更有效。
7#
王若谷  3级会员 | 2018-10-3 21:44:46 发帖IP地址来自
我觉得这是LIBSVM函数本身的性质原因吧,Libsvm在对于数据是稠密话的情况下会呈现出良好的分类预测效果,但是对于股价的预测本来数据就是稀疏的,加上你的数据量增加稀疏度增大,应该就变得不准了。
8#
匿名用户   | 2018-10-3 21:44:47 发帖IP地址来自
提示: 作者被禁止或删除 内容自动屏蔽
9#
null122  3级会员 | 2018-10-3 21:44:48 发帖IP地址来自
你如果预测的是个股的话
我建议你了解一下庄家操盘的过程
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:
帖子:
精华:
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP