局部加权线性回归时间序列预测

华为软件精英挑战赛2018题目。

训练集样本x是日期序列(简略成自然数序列),x=[1,2,3,4,...,n]

虚拟机数量序列(按天累计)y=[y1,y2,...,yn]

在一般的线性回归中,只需要拟合一个参数θ,即可用y(n+1)=θ*(n+1)预测出下一天的虚拟机数量。

而拒不线性回归中,给每一个点赋予一定的权重,赋予权值的准则是距离待预测点越近则权值越大。

具体是使用公式:

局部加权线性回归时间序列预测

来决定每个点的权值。它很像高斯分布,离待预测点x越近的地方w(i)值越大,越远的地方w(i)越小,这就使得离x处近的数据对预测结果的影响更大。

用θ表示回归系数,w表示权重, 那么平方误差的表达式就变成:

局部加权线性回归时间序列预测

通过矩阵可以表示成:

局部加权线性回归时间序列预测

f(θ)对θ求导等于0得到:

局部加权线性回归时间序列预测

通过上面的公式,对于任意给定的未知数据可以计算出对应的回归系数θ,并得到相应的预测值y, 其中W是一个对角矩阵,对角线上的元素wii对应样本点xi的权重值。

局部加权线性回归时间序列预测

 

 

 

 

 

参考:http://python.jobbole.com/88747/