【发布时间】:2016-01-31 00:01:59
【问题描述】:
我有 40,000 个资产的时间序列。我已将数据拆分为训练数据和目标数据。训练数据有 119 天的回报,目标数据有 59 天。我是故意这样拆分的。
Train:(119 行返回,40000 个不同系列) 目标:(59行返回,同40000系列)
我运行了以下代码来拟合模型:
SVR_model = svm.SVR(kernel='rbf',C=100,gamma=.001).fit(t_train_scale.transpose(), t_test.transpose())
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-185-2a0fd827e2a4> in <module>()
1
2
----> 3 SVR_model = svm.SVR(kernel='rbf',C=100,gamma=.001).fit(t_train_scale.transpose(), t_test.transpose())
C:\Users\nnayyar\Anaconda\lib\site-packages\sklearn\svm\base.pyc in fit(self, X, y, sample_weight)
174
175 seed = rnd.randint(np.iinfo('i').max)
--> 176 fit(X, y, sample_weight, solver_type, kernel, random_seed=seed)
177 # see comment on the other call to np.iinfo in this file
178
C:\Users\nnayyar\Anaconda\lib\site-packages\sklearn\svm\base.pyc in _dense_fit(self, X, y, sample_weight, solver_type, kernel, random_seed)
229 cache_size=self.cache_size, coef0=self.coef0,
230 gamma=self._gamma, epsilon=self.epsilon,
--> 231 max_iter=self.max_iter, random_seed=random_seed)
232
233 self._warn_from_fit_status()
C:\Users\nnayyar\Anaconda\lib\site-packages\sklearn\svm\libsvm.pyd in sklearn.svm.libsvm.fit (sklearn\svm\libsvm.c:1864)()
ValueError: Buffer has wrong number of dimensions (expected 1, got 2)
从研究中,我看到使用 SVM 最常见的答案是形状必须“匹配”,但如何使 SVM 适合各种大小的数据?
编辑:仍然需要一些帮助,我如何预测数千个预测,而不仅仅是下一个?
【问题讨论】:
-
训练有 119 天的回报,目标有 59 天的回报是什么意思?
-
我在训练集中有119天的回报信息,在目标集中有59天的回报。所以库存 1 的 40,000;第 1 天返回 X,第 2 天返回 Y....有意义吗?
标签: python scikit-learn svm