我的数据:我的每小时数据中有两种季节性模式......每日和每周。例如......我的数据集中的每一天基于一天中的小时具有大致相同的形状。但是,像星期六和星期日这样的某些日子我的数据会有所增加,而且每小时的形状也会有所不同。
(使用holt-winters,正如我在此发现的那样:https://gist.github.com/andrequeiroz/5888967)
我运行算法,每季使用24作为我的时段,并预测出7个季节(1周),我注意到它会过度预测工作日并低估周末,因为它估计周六曲线基于星期五曲线而不是周五曲线和星期六(t-1)曲线的组合。在我的数据中包含次要期间的好方法是什么,如24和7?他们应该使用不同的算法吗?
答案 0 :(得分:3)
考虑不同形状的一种显而易见的方法是仅使用一种周期,但使其周期为7 * 24,因此您可以将整周预测为单一形状。
您是否尝试过线性回归,其中预测值是线性趋势加上虚拟变量的贡献?解释的最简单的例子是趋势加上每日贡献。那么你会有
Y = X * t + c + A * D1 + B * D2 + ... F * D6(+噪音)
在这里,您使用线性回归来找到X,c和A ... F的最佳拟合值。 t是时间,无限地向上计数0,1,2,3 ......所以X的拟合值给出了趋势。 c是一个常数值,因此它会向上或向下移动所有预测的Y. D1在星期二设置为1,否则为0,D2在星期三设置为1,否则为0 ... D6在星期日设置为1,否则为0,因此A..F条款为星期一以外的日期提供贡献。我们不适合星期一的术语,因为如果我们这样做,那么我们无法区分c术语 - 如果你将1添加到c并从A..F中减去一个,则预测将保持不变。
希望您现在可以看到我们可以添加23个术语来计算每天24小时的形状,并且总计46个术语来计算每个工作日24小时和不同24小时的形状每个周末的一天。
您最好找一个统计软件包来处理这个问题,比如免费的R软件包(http://www.r-project.org/)。它确实有一点学习曲线,但您可能会找到书籍或文章,它们会将您用于此类预测。
无论你做什么,我都会继续根据您的历史数据检查预测方法 - 人们发现实际中最准确的预测方法往往非常简单。