gpt4 book ai didi

apache-spark - Spark 上的时间序列预测

转载 作者:行者123 更新时间:2023-11-30 08:38:01 24 4
gpt4 key购买 nike

所以我尝试使用 Apache Spark 使用时间序列数据进行功耗预测。数据示例为:

03.01.15;22:30;236,25
03.01.15;22:15;240
04.01.15;16:00;243,775

以此类推两年。我每 15 分钟进行一次观察

预测功耗的最佳方法是什么?

我尝试了线性回归决策树等。我总是得到巨大的MSE(788)。我尝试将月、日、小时、分钟作为 OneHotEncoder 传递。我尝试只进行几周等的预测。

数据的平均值:

[2014.3996710526321,5.726973684210525,15.713815789473673]

数据的方差:

[0.2403293809070049,10.218579294199253,77.46326844706495]

测试均方误差

788.2397552290726

如果我像 LabeledPoint(236.25, 2015.0,1.0,3.0,22.0,30.0)) 那样直接传递值,MSE 会上升到 1280.8。如果我每天只向模型传递一次观察值,即最大值,那么它没有帮助。

但是,如果我使用 KNIME 并尝试时间序列的示例,但根据我的数据,它们不会考虑日期和时间,而是会滞后于每个观察的功耗。

我看到 Cloudera 有一个用于时间序列的库,但我不明白为什么我需要它。

有人可以描述一下对时间序列数据进行良好预测的过程吗?最后我想输入日期和时间并获得预测。

最佳答案

我对您的问题有多个疑问,但让我尝试按照您提供的信息进行操作。

首先,让我们概括一下问题。

您的数据格式为<timestamp>, <value> 。鉴于数据是在 2 年内每 15 分钟收集一次,您的样本大小为 (4 x 24 x 365 x 2) 70080 个观察值(行)

假设您想要开发一个回归模型来预测其行为。

首先,您需要将数据集划分为训练集和测试集。您使用训练集开发模型,并在测试集上测试模型。我建议按 9:1 分割。

Q1。这是您采取的方法吗?

MSE 是使用预测值与测试集中的实际值进行计算的。

第二季度。你提到了 MSE - 我不知道这是如何计算的(只提供了 3 个数据点)或你正在使用的值的范围。您能否确认一下您的误差是如何计算的以及最小化标准是什么?

如果线性回归失败(无法成功预测运动),则可能是您的模型太简单 - 尝试使用 MLP 或将回归模型与贝叶斯模型结合起来(因为功耗是连续函数)。

关于apache-spark - Spark 上的时间序列预测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35241173/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com