如何使用外部回归器在 BigQuery 中训练 Arima_PLUS 模型?

Posted

技术标签:

【中文标题】如何使用外部回归器在 BigQuery 中训练 Arima_PLUS 模型?【英文标题】:How to use external regressors for training Arima_PLUS model in BigQuery? 【发布时间】:2021-08-09 22:16:39 【问题描述】:

我在大查询上创建了一个模型,是否可以包含其他列作为外部回归器?

例如,我想包含日期、用户、每次会话的页面、跳出率等以预测用户。

create or replace model bqml_tutorial.create_model
options
(model_type= 'ARIMA_PLUS',
time_series_timestamp_col='Date',
time_series_data_col='Users',
auto_arima=True,
data_frequency = 'AUTO_FREQUENCY',
decompose_time_series= True)
as
select Date, cv as Users from `bqml_tutorial.cvrate` ORDER BY Date 

【问题讨论】:

【参考方案1】:

查看the documentation,目前不可用。您可以在 BigQuery 中训练的 ARIMA_PLUS 模型已经做了很多事情(季节性研究、异常值移除、缺失数据插值等)。但就外部回归器而言,您无法添加特定列来训练您的模型。

您可以添加到模型中的唯一附加数据是假期信息(带有 HOLIDAY_REGION 选项)。这已经很棒了!

请注意,您可以通过使用 TIME_SERIES_ID_COL 参数指定要预测的列来同时训练多个时间序列的模型。但这会让您从独立模型中预测所有这些列(因此不会对一列对另一列的影响进行建模)。

【讨论】:

这很有帮助。对其他列依赖项训练和预测 1 个目标列是否有任何模型建议? 对于时间序列,BQ 中唯一可用的专用模型是 ARIMA 模型,它可以在您的案例中用作基线模型。至于研究其他列的效果,也许你可以看看 XGBOOST 和 AUTOML 模型?但要小心你的方法!

以上是关于如何使用外部回归器在 BigQuery 中训练 Arima_PLUS 模型?的主要内容,如果未能解决你的问题,请参考以下文章

Big Query 线性回归参数

如何在 BigQuery 中执行线性回归?

在 BigQuery 中加载 JSON / JSON 在从位置开始的行中解析错误 ...:解析器在字符串结束之前终止

一维地球移动器在BigQuery / SQL中的距离

可以使用经过普遍训练的深度学习分类器在子类中进行分类吗?

数据挖掘系列 啥是逻辑回归训练模型?