使用支持向量机进行时间序列预测
time series forecasting using Support Vector Machine
要使用 SVM 进行预测的时间序列中使用的属性是什么?我有两个值 date 和 value at that date for the class 我已经知道我可以使用 -1 和 1当价格上涨或下跌但仍然不知道如何绘制时间序列来计算超平面
有一些论文展示了一些方法:
Financial time series forecasting using support vector machine
Using Support Vector Machines in Financial Time Series Forecasting
Financial Forecasting Using Support Vector Machines
我真的建议您阅读现有的文献,但为了好玩,我将描述一种简单的方法(可能不是最好的)。
假设您有 N 对
,其中
是该对的特定 date/time,
是其对应值。这些对按其 X 分量排序。
假设您想要预测,如果给定
,相应的未知值
会上升或下降(请注意,您也可以使用回归,而不是尝试预测值本身) .
然后我们可以用这样的训练集训练模型:
Input Value
====================== ================
y_t0, y_t1, ..., y_ti-1 1 :if y_ti > y_ti-1, -1 otherwise
y_t1, y_t2, ..., y_ti 1 :if y_ti+1 > y_ti, -1 otherwise
y_t2, y_t3, ..., y_ti+1 1 :if y_ti+2 > y_ti+1, -1 otherwise
y_t3, y_t4, ..., y_ti+2 1 :if y_ti+3 > y_ti+2, -1 otherwise
y_t4, y_t5, ..., y_ti+3 1 :if y_ti+4 > y_ti+3, -1 otherwise
基本上,您将训练算法通过瞥见过去对未来的下一个 "tick" 做出有根据的猜测。一旦你的模型被训练来做出预测,你就可以在你想要预测的值之前为模型提供 N 个值(其中 N 是你在训练阶段用作输入的值的数量)。
要使用 SVM 进行预测的时间序列中使用的属性是什么?我有两个值 date 和 value at that date for the class 我已经知道我可以使用 -1 和 1当价格上涨或下跌但仍然不知道如何绘制时间序列来计算超平面
有一些论文展示了一些方法:
Financial time series forecasting using support vector machine
Using Support Vector Machines in Financial Time Series Forecasting
Financial Forecasting Using Support Vector Machines
我真的建议您阅读现有的文献,但为了好玩,我将描述一种简单的方法(可能不是最好的)。
假设您有 N 对 ,其中
是该对的特定 date/time,
是其对应值。这些对按其 X 分量排序。
假设您想要预测,如果给定 ,相应的未知值
会上升或下降(请注意,您也可以使用回归,而不是尝试预测值本身) .
然后我们可以用这样的训练集训练模型:
Input Value
====================== ================
y_t0, y_t1, ..., y_ti-1 1 :if y_ti > y_ti-1, -1 otherwise
y_t1, y_t2, ..., y_ti 1 :if y_ti+1 > y_ti, -1 otherwise
y_t2, y_t3, ..., y_ti+1 1 :if y_ti+2 > y_ti+1, -1 otherwise
y_t3, y_t4, ..., y_ti+2 1 :if y_ti+3 > y_ti+2, -1 otherwise
y_t4, y_t5, ..., y_ti+3 1 :if y_ti+4 > y_ti+3, -1 otherwise
基本上,您将训练算法通过瞥见过去对未来的下一个 "tick" 做出有根据的猜测。一旦你的模型被训练来做出预测,你就可以在你想要预测的值之前为模型提供 N 个值(其中 N 是你在训练阶段用作输入的值的数量)。