GCP AutoML SDK基于BigQuery数据批量预测输出为空问题咨询
GCP AutoML时序预测错误码3问题原因分析
错误信息:The time series has no values to predict. The time series has been excluded from predictions.
该错误代表AutoML时序模型判定输入的预测数据中不存在符合要求的可预测序列,常见原因如下:
- 预测输入表的时间范围不符合要求
你训练时配置的forecast_horizon=21结合周粒度配置,代表需要预测未来21周的目标值。AutoML批量预测要求输入表必须同时包含完整的历史观测数据,以及未来21周预测窗口的全量数据,如果输入表的时间范围没有覆盖到需要预测的21周窗口,模型找不到可预测的时间点就会抛出该错误。 - 缺少预测窗口内的可用特征值
你训练时指定的available_at_forecast_columns包含价格、温度、促销、假期等字段,这些字段属于预测时就需要提前知晓的特征。你需要在预测输入表中补全未来21周预测窗口内所有这些字段的取值,缺失的话会导致模型无法识别可预测的时间序列。 - 时间粒度匹配错误
训练时配置的时间粒度为单周,要求预测输入表的Date列也必须是严格的周粒度,不能存在日期重复、日期缺失、粒度为天/月等不匹配的情况,也不能存在同一个SKU+Date组合重复的记录。 - 时间序列历史长度不足
AutoML要求每个SKU对应的时间序列历史数据长度至少满足模型的上下文窗口要求,通常不短于预测窗口的1~3倍,如果某条SKU的历史有效数据过少,会被直接排除出预测范围。 - 历史目标列值缺失
很多用户做预测时会误删历史数据中的目标列Sales的取值,只保留空值。但模型需要基于历史的Sales数值学习序列规律,如果历史数据中Sales全为空,也会触发该错误。 - 字段名不匹配
预测输入表的字段名必须和训练时使用的字段名完全一致,包括大小写,比如Date、SKU、Sales等核心字段如果拼写、大小写不匹配,模型无法读取对应数据也会触发错误。 - 参数类型不规范
训练代码中forecast_horizon参数要求传入整数,你当前传入的是浮点数21.0,可能会导致训练时预测窗口长度识别异常,建议修改为整数21后重新训练测试。
内容的提问来源于stack exchange,提问作者Priya Sancheti
相关产品推荐
相关产品推荐

