BigQuery 推出 TimesFM 3.0,支持多变量时序预测
DataHot 速览
BigQuery 宣布 TimesFM 3.0 预览,新增原生多变量时间序列预测,可在 BigQuery SQL 中通过 AI.FORECAST 使用。TimesFM 3.0 是 Google Research 开发的 330M 参数基础模型,支持单/多目标列以及仅历史值和历史+未来值协变量。它称在 GIFT-Eval、FEV-Bench 和 TIME 三个公开时序榜单上取得第一的零样本准确率。该模型也可作为 TimesFM 2.0/2.5 的 drop-in 升级用于 AI.FORECAST 单变量预测和 AI.DETECT_ANOMALIES 异常检测;文中用 NYC Citi Bike 数据集演示 7 天 subscriber_trips 与 casual_trips 预测。
为什么值得关注:把多变量基础模型预测直接带入 BigQuery SQL,分析团队无需自训模型即可处理更贴近现实的预测问题,并以 drop-in 方式升级现有单变量/异常检测工作流。
本文目录 6 节
译文
AI 逐段翻译概述
自从在 BigQuery 中通过 AI.FORECAST 引入零样本时间序列预测以来——最初由 TimesFM 2.0 提供支持,后来升级到 TimesFM 2.5——你就可以直接在 SQL 中生成预测,而无需训练或管理自定义模型。然而,在 TimesFM 2.5 之前,这些基础模型仅限于单变量预测,即仅根据单个时间序列的历史来预测未来值。在实践中,大多数现实世界的预测问题都是多变量的,其中相关目标和外部驱动因素(如天气、促销和节假日)会共同塑造未来结果。
今天,我们非常高兴地宣布在 BigQuery 中推出 TimesFM 3.0 预览版。该模型由 Google Research 开发,TimesFM 3.0 是一个拥有 3.3 亿参数的最先进基础模型,旨在直接在 BigQuery SQL 中实现原生多变量时间序列预测。TimesFM 3.0 在三大公共时间序列排行榜——GIFT-Eval、FEV-Bench 和 TIME——中均排名第一,与现有基础模型相比,在协变量和多变量预测任务上均实现了顶级的零样本准确率。
除了新的多变量能力外,TimesFM 3.0 还可作为即插即用的升级,用于通过 AI.FORECAST 进行单变量预测,以及通过 AI.DETECT_ANOMALIES 进行异常检测。现有工作流只需指定 model => 'TimesFM 3.0',即可立即从更高的基准准确率中受益。
新特性:多变量基础建模
借助 TimesFM 3.0,BigQuery 通过 AI.FORECAST 将企业级多变量建模带入熟悉的 SQL 工作流:
| 能力 | TimesFM 2.0 / 2.5 | TimesFM 3.0 |
| 预测范围 | 仅单变量 | 单变量和多变量 |
| 目标列 | 单个目标 | 单个或多个目标 |
| 仅含历史值的协变量列 | 不支持 | 支持 |
| 含历史值和未来值的协变量列 | 不支持 | 支持 |
使用 BigQuery SQL 进行多变量预测
为了了解这些能力如何协同工作,让我们使用 NYC Citi Bike 公共数据集(bigquery-public-data.new_york.citibike_trips)预测未来七天内的日常通勤者(subscriber_trips)和休闲骑行者(casual_trips)骑行量。
BigQuery 使用单表输入格式进行多变量预测,该格式合并了两组行:
- 历史观测行:开始时间(2016-01-01)与预测截止日期(2016-06-01)之间的时间戳,完整填充目标指标、历史协变量和已知未来协变量
- 未来预测期行:七天预测期(2016-06-01 至 2016-06-07)内的时间戳,填充已知未来协变量,而目标列和仅含历史值的协变量设置为 NULL
lang-sql
正在加载...
此查询突出了 TimesFM 3.0 中支持的三个多变量维度:
- 预测相关目标(target_cols) 无需为每个骑行者细分群体分别运行模型,传递 TARGET_COLS => ['subscriber_trips', 'casual_trips'] 即可在单次调用中联合预测这两个指标。TimesFM 3.0 捕捉通勤者和休闲骑行者之间的跨序列动态——例如共同的天气敏感性和不同的周末骑行模式。
- 使用历史协变量(past_covariate_cols) 有些信号只能从历史中观察到,无法提前得知,例如平均骑行时长(avg_duration_min)、历史人流量或计划外服务中断。传递 PAST_COVARIATE_COLS => ['avg_duration_min'](未来预测期行设置为 NULL)可为模型提供历史上下文,以区分暂时性冲击和潜在趋势,而无需该特征的未来值。
- 使用未来协变量(future_covariate_cols) 其他外部驱动因素在历史窗口和预测期均可提前得知——例如周末(is_weekend)、节假日或已安排的促销活动。传递 FUTURE_COVARIATE_COLS => ['is_weekend'](在所有行中填充至 2016-06-07)使 TimesFM 3.0 能够直接根据即将到来的日历事件调整其七天预测。
了解输出
该函数为 target_cols 中指定的每个目标列返回结构化预测。对于 target_cols 中的每一列,AI.FORECAST 返回一个结构体,其中包含点预测(value)以及预测区间下限和上限:
| date | subscriber_ trips.value | subscriber_trips.prediction_ interval_lower_bound | subscriber_trips.prediction_ interval_upper_bound | casual_trips.value | casual_trips.prediction_ interval_lower_bound | casual_trips.prediction_ interval_upper_bound | time_series_type | confidence_level | ai_forecast_status |
| 2016-06-01 00:00:00 UTC | 44699.64 | 32590.76 | 55723.44 | 4581.32 | 1727.91 | 9189.31 | forecast | 0.95 | |
| 2016-06-02 00:00:00 UTC | 44611.75 | 30413.05 | 57209.19 | 4647.17 | 1466.23 | 10273.55 | forecast | 0.95 | |
| 2016-06-03 00:00:00 UTC | 41379.15 | 26218.65 | 54940.09 | 5341.36 | 1568.23 | 11805.86 | forecast | 0.95 | |
| 2016-06-04 00:00:00 UTC | 30164.34 | 14266.43 | 45075.92 | 9097.74 | 2558.27 | 18452.52 | forecast | 0.95 | |
| 2016-06-05 00:00:00 UTC | 26727.27 | 10101.44 | 42239.33 | 8398.50 | 1692.15 | 17768.99 | forecast | 0.95 | |
| 2016-06-06 00:00:00 UTC | 36713.84 | 19493.00 | 52679.59 | 4723.08 | 400.08 | 11710.73 | forecast | 0.95 | |
| 2016-06-07 00:00:00 UTC | 39749.97 | 22157.42 | 56119.86 | 4180.97 | 95.70 | 10845.74 | forecast | 0.95 |
在 BigQuery Conversational Analytics 中使用 TimesFM 3.0
你还可以在 BigQuery Conversational Analytics 中使用自然语言运行多变量预测。在同一个 bigquery-public-data.new_york.citibike_trips 数据集上,你只需询问“使用两个月的历史数据,预测 2016 年 6 月 1 日至 7 日的每日订阅者和休闲骑行量,以平均骑行时长作为历史协变量,以周末指示符作为未来协变量。” Conversational Analytics 会自动生成并执行底层带 TimesFM 3.0 的 AI.FORECAST 查询,返回结果摘要、包含每个目标预测区间的交互式预测图表,以及关键预测洞察。
在 BigQuery 对话式分析中使用 TimesFM 3.0 进行多变量预测,通过自然语言提示生成 7 天预测、交互式图表和洞察。
总结与后续步骤
借助 TimesFM 3.0 的原生多变量支持,BigQuery 将最先进的基础模型预测能力带给复杂、相互关联的企业数据集,且无需数据移动、自定义特征工程管道或专用模型托管基础设施。
要在 BigQuery 中开始使用 TimesFM 3.0 进行预测:
- 阅读 Google Research 博客文章,了解有关 TimesFM 3.0 模型架构和能力的更多信息。
- 探索 BigQuery TimesFM 文档。
- 遵循分步多变量预测教程。
- 尝试AI.FORECAST,在 BigQuery Studio SQL 工作区中直接使用 `model => 'TimesFM 3.0'`。
- 尝试AI.DETECT_ANOMALIES,使用 `model => 'TimesFM 3.0'` 在 BigQuery 中进行单变量时间序列异常检测。
- 尝试AI.EVALUATE,使用 `model => 'TimesFM 3.0'` 在 BigQuery 中进行单变量时间序列评估。
发布在
这篇内容对你有用吗?
反馈只用于改善内容筛选,不等同于收藏