Google Cloud Blog

Introducing TimesFM 3.0 with multivariate time-series forecasting in BigQuery

6.9内容质量
Introducing TimesFM 3.0 with multivariate time-series forecasting in BigQuery

TL;DR · AI 摘要

BigQuery TimesFM 3.0 with multivariate time-series forecasting Google Cloud Blog Data Analytics Introducing TimesFM 3.0...

核心要点

  • 主题聚焦:Introducing TimesFM 3.0 with multivariate time-s
  • 来源:Google Cloud Blog,建议结合原文判断细节。
  • AI 分析暂不可用,本条为保底评分与摘要。
#AI#云计算#产品
打开原文

BigQuery TimesFM 3.0 多变量时间序列预测 | Google Cloud 博客

数据分析

在 BigQuery 中推出支持多变量时间序列预测的 TimesFM 3.0

2026 年 10 月 13 日

##### Haiyang Qi

软件工程师

##### Haoming Chen

工程经理

##### 11 月 4 日:Agentic Data Cloud 事件

与我们的产品负责人一起构建您的智能体未来

注册

概述

自 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 进行多变量预测

让我们通过纽约市 Citi Bike 公共数据集(bigquery-public-data.new_york.citibike_trips)演示如何使用 TimesFM 3.0 进行多变量预测。我们将针对 7 天的预测范围,预测每日通勤(subscriber_trips)和休闲(casual_trips)自行车骑行次数。

BigQuery 使用一种单表输入格式进行多变量预测,该格式结合了两组行:

  • 历史观测行:时间戳在开始时间(2016-01-01)和预测截止日期(2016-06-01)之间,完全填充目标指标、历史协变量和已知未来协变量
  • 未来预测行:时间戳覆盖 7 天预测范围(2016-06-01 至 2016-06-07),填充已知未来协变量,目标列和仅历史协变量设置为 NULL

lang-sql

加载中...

WITH data AS ( SELECT DATE(starttime) AS date, IF(MIN(starttime) < '2016-06-01', COUNTIF(usertype = 'Subscriber'), NULL) AS subscriber_trips, IF(MIN(starttime) < '2016-06-01', COUNTIF(usertype = 'Customer'), NULL) AS casual_trips, IF(MIN(starttime) < '2016-06-01', AVG(tripduration / 60.0), NULL) AS avg_duration_min, IF(EXTRACT(DAYOFWEEK FROM MIN(starttime)) IN (1, 7), 1.0, 0.0) AS is_weekend FROM bigquery-public-data.new_york.citibike_trips WHERE starttime >= '2016-01-01' AND starttime < '2016-06-08' GROUP BY date ) SELECT * FROM AI.FORECAST( TABLE data, MODEL => 'TimesFM 3.0', TIMESTAMP_COL => 'date', TARGET_COLS => ['subscriber_trips', 'casual_trips'], PAST_COVARIATE_COLS => ['avg_duration_min'], FUTURE_COVARIATE_COLS => ['is_weekend'] );

此查询展示了 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 中指定的每个目标列返回结构化预测结果。对于每个目标列,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

2016-06-03 00:00:00 UTC 41379.15 26218.65 54940.09 5341.36 1568.23 11805.86

2016-06-04 00:00:00 UTC 30164.34 14266.43 45075.92 9097.74 2558.27 18452.52

2016-06-05 00:00:00 UTC 26727.27 10101.44 42239.33 8398.50 1692.15 17768.99

2016-06-06 00:00:00 UTC 36713.84 19493.00 52679.59 4723.08 400.08 11710.73

2016-06-07 00:00:00 UTC 39749.97 22157.42 56119.86 4180.97 95.70 10845.74

BigQuery 会话分析中的 TimesFM 3.0

你也可以在 BigQuery 对话式分析(Conversational Analytics)中使用自然语言运行多变量预测。在相同的 bigquery-public-data.new_york.citibike_trips 数据集上,只需询问 "使用两个月的历史数据,以平均行程时长作为过去协变量、周末指示器作为未来协变量,预测 2016 年 6 月 1 日至 7 日的每日订阅用户和非订阅用户行程"。对话式分析会自动生成并执行底层 AI.FORECAST 查询(使用 TimesFM 3.0),返回结果摘要、每个目标变量的交互式预测图表(含预测区间)以及关键预测洞察。

在 BigQuery 对话式分析中使用 TimesFM 3.0 进行多变量预测,通过自然语言提示生成 7 天预测、交互式图表和洞察。

总结与下一步

凭借 TimesFM 3.0 原生的多变量支持,BigQuery 将最先进的基础模型预测能力带入复杂且相互关联的企业数据集,无需数据迁移、定制特征工程流水线或专用模型托管基础设施。

要开始在 BigQuery 中使用 TimesFM 3.0 进行预测:

  • 阅读 Google Research 博客文章,了解 TimesFM 3.0 模型架构和功能特性。
  • 查阅 BigQuery TimesFM 文档。
  • 按照多变量预测分步教程进行操作。
  • 在 BigQuery Studio SQL 工作区直接使用 model => 'TimesFM 3.0' 尝试 AI.FORECAST。
  • 在 BigQuery 中使用 model => 'TimesFM 3.0' 尝试 AI.DETECT_ANOMALIES 进行单变量时间序列异常检测。
  • 在 BigQuery 中使用 model => 'TimesFM 3.0' 尝试 AI.EVALUATE 进行单变量时间序列评估。

发布分类:

  • 数据分析
  • BigQuery