在线时间序列预测常因标签延迟而适应过时概念。本文结合 KDD 2025 研究思路,讲清如何主动应对概念漂移,让负荷与需求预测更稳更准。
在线预测如何提前防漂移:让负荷与需求预测更稳更准
电力系统里,很多预测不是“算一次就完事”。负荷预测、风光出力预测、甚至电价与备用容量预测,都是在线时间序列预测:每隔几分钟或几小时滚动更新一次。问题也出在这里——模型最怕的不是“没训练过”,而是概念漂移(Concept Drift):现实规律变了,但模型还在用昨天的经验。
2025 年接近年末,很多地区会进入典型的“负荷波动季”:寒潮、取暖负荷、工业排产冲刺、节假日出行与商业活动叠加,波动不仅更大,而且更频繁。供应链同样如此:年终促销、跨境清关节奏、原材料价格变化,让需求预测误差被放大。同一种漂移问题,在能源与物流两条链路上,本质相同:数据分布在动,决策却必须实时。
最近一篇被 KDD 2025 接收的研究提出了一个很实用的观点:很多在线学习方法“以为自己在更新”,其实因为标签延迟,更新得太慢,甚至在适应过时的概念。论文提出的框架 Proceed 把这件事说透了,也给了可落地的思路:在拿到真实值之前,先估计漂移,再主动调整模型参数。
传统在线学习为什么经常“越学越偏”
结论先说:在线学习在时间序列里经常输给现实,不是算法不够强,而是监督信号来得太晚。
很多团队做在线预测的标准流程是:
- 用最近一段窗口的数据训练/微调模型
- 对未来 H 步(如未来 24 小时或未来 96 个 15 分钟点)做预测
- 等未来真实值到来后,再把“刚才预测的那段”变成训练样本,继续更新
这听起来合理,但论文指出一个关键缺口:真实值的到来是延迟的。当你要预测未来 H 步时,训练可用的最新标签最多只能到 t-H。于是训练样本的“概念”可能仍停留在 t-H 的世界,而你要预测的是 t 的世界。
在能源与智能电网里,这个缺口特别致命
负荷预测里,概念漂移往往不是慢慢变,而是突然变:
- 寒潮来临:采暖负荷陡增,日负荷曲线形状改变
- 工业负荷集体调整班次:峰谷时段迁移
- 分布式光伏大面积出力波动:净负荷模式改变
如果模型一直用“几小时前甚至几天前”的标签反馈来更新,它可能在追着旧规律跑。更直白一点:你以为模型在追现实,其实它在追历史。
在物流与供应链里,同样是“标签延迟”惹的祸
需求预测里真实销量、渠道回传、退货确认、促销归因常常有延迟;运输时效预测里,签收时间、异常原因编码也常延后。漂移恰恰发生在延迟期间:
- 促销上线后一小时内流量激增
- 断供/爆仓导致履约节奏改变
- 天气或管制造成路网时效突变
当你拿到“真实值”时,市场已经换了一副面孔。
Proceed 的核心思路:先估计漂移,再主动改参数
一句话概括 Proceed:把“漂移”当成一个可估计、可生成的调整量,在预测时刻就对模型做“面向当前样本”的参数修正。
论文把流程拆成两步,逻辑很清晰:
- 漂移估计(Drift Estimation):比较“最近用于训练的数据分布”和“当前要预测的测试样本分布”,得到一个漂移表征
- 自适应生成器(Adaptation Generator):把漂移表征映射成模型参数的调整量(可以理解为轻量级的参数增量/偏置修正),在预测前就完成适应
这和常见在线学习最大的差别是:
- 常见做法:等真实值回来 → 用梯度更新 → 影响未来
- Proceed:真实值还没回来 → 先估计漂移 → 直接影响当前预测
一句特别“能落地”的理解:Proceed 把“概念漂移”从事后纠错,变成事前对齐。
为什么这更适合电网的滚动预测
电网滚动预测常见的预测步长 H 可能是:
- 未来 4 小时的 15 分钟点(H=16)
- 未来 24 小时的小时点(H=24)
H 越大,“标签延迟缺口”越大,概念漂移越可能在缺口内发生。Proceed 的主动适应可以把这段缺口的损失压下去,尤其适用于:
- 负荷与净负荷预测
- 风速/光照变化带来的风光出力预测
- 需求侧响应引发的负荷形态改变
把论文思路落到业务:三类“可复制”的工程做法
不需要完全复现论文,也能把“主动适应”的思想用在生产系统里。我建议从三件事开始。
1) 把“漂移”量化成可监控指标(先把问题看见)
做在线预测,最怕 KPI 只看 MAE/MAPE,漂移发生时只能“事后复盘”。更有效的是同时监控:
- 特征分布漂移:例如 PSI、KS 检验、均值/方差变化率
- 残差结构漂移:误差是否从“白噪声”变成“有趋势”
- 季节性形态漂移:峰谷时段偏移、曲线相似度下降
在智能电网里,建议把漂移监控按馈线/台区/区域分层,做到“哪里先变,先看见”。
2) 做“轻量级参数修正”,别总想着全量再训练
Proceed 的适应生成器,本质上是把漂移翻译成参数调整。工程上可以简化成:
- 只更新最后几层(或只更新一组 adapter)
- 用漂移强度决定更新幅度(强漂移强修正,弱漂移弱修正)
- 预测前快速校准(类似 online calibration),不等标签
这样做的好处很现实:
- 计算成本可控,满足电网调度/EMS 的时效要求
- 风险更低,不会因一次异常导致模型“学坏”
3) 用“合成漂移”做训练,让模型见过更多变化
论文强调 Proceed 通过合成的多样漂移来训练,从而提升泛化。这个点在业务里非常值钱:真实漂移样本少、且覆盖不全。
在能源场景可以合成的漂移包括:
- 温度阶跃(突然降温/升温)
- 峰谷时段平移(班次变化、居民作息变化)
- 光伏出力随机遮挡(云团快速移动)
在供应链场景可以合成的漂移包括:
- 促销冲击(需求强度短时翻倍再回落)
- 供给约束(可售库存上限改变)
- 运输异常(时效分布长尾变长)
我更倾向把它当作一种“漂移压力测试”:让模型在训练阶段就经历各种坏情况,上线后不容易慌。
常见落地问答:团队最容易卡的四个点
Q1:没有真实值,怎么判断当前漂移?
答案很直接:用输入特征的分布变化来做代理信号。电网里温度、湿度、节假日、价格、分布式出力、历史负荷形态都能反映“环境是否变了”。 Proceed 的价值在于把这种变化系统化,并转成参数修正。
Q2:主动适应会不会把异常当漂移,导致越改越错?
会,所以要加“保险丝”:
- 漂移门限:只有超过阈值才触发适应
- 回退机制:适应后误差若持续恶化,回退到稳定版本
- 多模型投票:基线模型与适应模型并行,按风险选择输出
Q3:这适合用在多长预测步长?
H 越大越适合。因为标签延迟缺口随 H 增大而变严重。对电网常见的日前/日内滚动预测、供应链的周内滚动补货预测,都属于高收益区。
Q4:我已经有在线微调了,还需要这种框架吗?
需要。在线微调解决的是“追着真实值更新”,Proceed 解决的是“真实值到来前的空窗期”。现实里两者可以叠加:
- 预测前:主动适应(对齐当前概念)
- 真实值到来后:在线学习(巩固新的概念)
给能源与供应链团队的行动清单(7 天内能做)
如果你负责电力负荷预测或供应链需求预测,我建议用一周做一次小闭环:
- 把标签延迟画出来:你的预测步长 H 是多少?真实值多晚回传?缺口多大?
- 加一个漂移看板:选 3 个关键特征做分布漂移监控(PSI/KS/均值方差)
- 做一次“漂移触发的轻量校准”:比如仅对最后一层做快速偏置修正,对比基线
- 做两类合成漂移压测:温度阶跃 + 峰谷平移(电网)/ 促销冲击 + 供给约束(供应链)
你会很快得到一个现实结论:提升预测准确率不一定靠更大的模型,往往靠更快地适应变化。
结尾:稳定预测不是“永远不变”,而是“变化来了也不慌”
Proceed 这类主动适应框架给我的启发是:在线预测真正的敌人不是噪声,而是“新规则”。电网的智能调度、可再生能源整合、能源效率优化,都会越来越依赖实时预测;供应链的补货、库存与运输同样如此。
如果你的系统在概念漂移面前仍靠“等真实值回来再改”,那很可能已经慢半拍了。更好的做法是:先检测漂移,再让模型在当下就对齐现实。
下一步你最想先解决哪种漂移:寒潮导致的负荷形态变化,还是促销导致的需求突增?把它明确下来,主动适应就有了最清晰的落点。