Spark & Spark Streaming 中的时间序列预测

Time series forecasting in Spark & Spark Streaming

我对机器学习还很陌生,所以我需要一些帮助。

我有一个 Spark Streaming 作业,可以将有关用户用电量的数据提取到 Cassandra 中。我用这些数据填充了多个表格,其中最重要的是 "hourly_data",它指定了每个用户在特定小时内消耗了多少电量。

我想做的是预测直到一天、一个月或一年结束时用户将花费多少电费。

我应该使用哪些库和模型? 回归是我真正需要的吗?

我想我无法在流式作业中进行预测,但我需要为此启动批处理?

此外,如果我可以在特定的一天绘制预期的用户行为直到一天结束(一个月或一年相同...),Spark 中的哪些库可以帮助我做那?有教程吗?

非常感谢

为了预测一天、一​​个月和一年,您需要相应地分析您的时间序列。 例如,如果您想预测当天的使用情况。您需要按天汇总每小时的数据。 输入数据:

date       | hour | consumption|
--------------------------------
2016-05-07 | 01   | 0.3        |
2016-05-07 | 02   | 0.3        |
2016-05-07 | 03   | 0.3        |
2016-05-08 | :    | 0.3        |
2016-05-08 | :    | 0.3        |
2016-05-09 | 20   | 0.4        |
2016-05-09 | 21   | 0.1        |
2016-05-09 | 22   | 0.2        |
2016-05-09 | 23   | 0.3        |
2016-05-09 | 24   | 0.3        |

你的个人资料系列应该是

date       | consumption|
--------------------------------
2016-05-07 | 1          |
2016-05-08 | 1.3        |
2016-05-09 | 2.3        |

此外,如果您有缺失的数据,则必须考虑到这一点。 分析数据后,您可以尝试不同的模型,如 ARIMA、Holt-Winters,也可以尝试一些状态空间模型。至于图书馆 spark-timeseries 有 ARIMA 实现。