SVM为每个输入输出相同的预测值......为什么?

时间:2013-10-30 13:33:55

标签: svm encog

我使用Encog,我使用SVM来预测数据。我的训练集值没有标准化,但最初在[-1,1]范围内。我不明白为什么会出现问题。

我的培训数据:

EURUSD_OPEN_CH,EURUSD_HIGH_CH,EURUSD_LOW_CH,EURUSD_CLOSE_CH,EURUSD_MACD,EURUSD_MACDS,EURUSD_STTDEV
 0.0134883819,0.0132838637,0.0135361889,0.0140344719,0.0023983892,0.0010403195,0.0054870487
 0.0001454143,0.0000969039,-0.0002216665,-0.0005261919,0.0035244907,0.0013168603,0.0070012526
 -0.0005261846,0.0006574986,0.0001593581,0.0009628839,0.0044774819,0.0017225556,0.0081131621
 0.0009282350,-0.0001867452,-0.0004156506,-0.0005882475,0.0051052958,0.0021969854,0.0088044648
 -0.0005605769,-0.0006641071,0.0001455382,0.0000069246,0.0055397905,0.0027231400,0.0092672117
 (...)

我应该将这些值标准化吗?我认为这不是问题,但是谁知道......我训练SVM并且一切似乎都正确,但是当我评估SVM时,输出对于每个输入都是相同的。如果需要,我可以附加代码。

1 个答案:

答案 0 :(得分:3)

我是个小伙子......规范化解决了这个问题。这些值太小而无法预测,因此我将整个CSV标准化为[0.1,0.9]范围,并且有所帮助。