有没有办法在历史数据上使用 BigQuery 的 ML.FORECAST 来测试您的模型?

Is there a way to use BigQuery's ML.FORECAST on historical data to test your model?

ARIMA 模型对 BigQuery ML.FORECAST 的默认调用是:

ML.FORECAST(MODEL model_name,
           [, STRUCT<horizon INT64, confidence_level FLOAT64> settings])

例如,

SELECT
  *
FROM
  ML.FORECAST(MODEL `mydataset.mymodel`,
              STRUCT(30 AS horizon, 0.8 AS confidence_level))

但我想根据历史数据测试我的模型,以便我可以看到我的模型与训练集的叠加情况。默认的 ML.FORECAST 参数列表只允许我查看未来 (3 < X < 1000) 天数(在示例中为 30)。

有没有一种方法可以让我完全使用 BQ ML ARIMA 模型进行回顾?我尝试使用负值但没有成功。而ARIMA模型不支持ML.PREDICT.

感谢您的帮助。

参考文档:

这在 BigQuery ML 中是不可能的。 ARIMA 模型可用于预测时间序列中给定点数的未来数据,但不能用它来预测与过去某个点相关的值。

如果你想知道关于你的模型的一些指标,我建议你使用 ML.EVALUATE function。使用时请注意:

Neither table_name nor query_statement is required when evaluating the ARIMA-based time series models.

您可以在下面找到有关您的模型的信息,您可以使用 ML.EVALUATION 函数

访问这些信息


如果您仍然需要查看一些您确实有历史数据可以比较的值的预测,我建议您:

  1. 使用您的训练数据创建模型,但不使用最新数据。换句话说,保留你的时间序列的最新数据用于测试。
  2. 使用您的模型预测未来的价值
  3. 将预测值与实际历史值进行比较。