Transformer+物理约束的PCT模型
论文基本信息
| 项目 | 内容 |
|---|---|
| 标题 | Physics-constrained transformer for wind power forecasting |
| 中文标题 | 物理约束Transformer用于风电功率预测 |
| 发表期刊 | Nature Scientific Reports |
| 卷期 | (2026) 16: 4237 |
| DOI | 10.1038/s41598-025-34348-x |
| 作者单位 | 国网湖南电科院、上海交通大学、东方理工大学(宁波) |
| 代码 | https://github.com/daxin007/PCT-WPF |
一、研究背景与核心问题
1.1 风电预测的重要性
风电是全球碳中和转型的基石性可再生能源。准确的风电功率预测对以下方面至关重要:
- 电网集成— 风电间歇性、波动性给电网调度带来挑战
- 市场运营— 预测误差15%可导致市场参与者利润损失2%~13.8%
1.2 核心挑战:风速预测的高噪声
┌─────────────────────────────────────────────────────────┐ │ 风速预测 → 高噪声 → 风电功率预测精度下降 → 经济损失 │ │ │ │ 原因: │ │ • 风速本身波动性大 │ │ • 数值天气预报(NWP)输入存在不确定性 │ │ • 雷暴、强降雨等气象扰动 │ │ • 风速预测误差通常比温度等其他气象变量更大 │ └─────────────────────────────────────────────────────────┘1.3 现有方法的局限
| 方法类型 | 代表 | 优点 | 缺点 |
|---|---|---|---|
| 知识驱动 | NWP、信号分解+集成学习 | 物理可解释、一致性强 | 特征工程繁重、难以充分利用历史数据 |
| 数据驱动 | LSTM、CNN、Transformer | 能捕捉复杂非线性 | 大数据需求、易过拟合、对噪声敏感 |
| 混合方法 | PINNs、TgDPF | 结合两者优势 | PINNs用确定性约束;TgDPF用LSTM(非SOTA) |
关键洞察:风速-功率关系本质上是概率性的(同一风速下功率有分布),而非确定性映射。
二、核心创新:PCT框架
2.1 设计思想
“将物理知识以概率分布形式嵌入Transformer,而非确定性方程”
┌─────────────────────────────────────────────────────────┐ │ PCT 核心架构 │ ├─────────────────────────────────────────────────────────┤ │ │ │ Domain Knowledge (领域知识) │ │ ↓ │ │ ┌─────────────┐ KDE估计 ┌─────────────┐ │ │ │ 历史风速-功率 │ ────────→ │ 目标功率分布Q │ │ │ │ 数据 │ │ (风功率曲线) │ │ │ └─────────────┘ └──────┬──────┘ │ │ │ │ │ Deep Learning Model (深度学习模型) │ │ ↓ │ │ │ ┌─────────────┐ 预测输出P │ │ │ │ Transformer │ ─────────────→ │ JS Divergence │ │ │ (编码器-解码器)│ │ (物理约束) │ │ └─────────────┘ ↓ │ │ ┌─────────────┐ │ │ Input: 风速+桨距角+历史功率 │ Combined Loss │ │ │ Output: 24h风电功率预测 │ = MSE + JS │ │ │ └─────────────┘ │ └─────────────────────────────────────────────────────────┘2.2 三大技术组件
① Transformer时序建模
采用标准Encoder-Decoder架构(图1):
- Encoder: 多头自注意力 + FFN → 捕捉输入序列的时序依赖
- Decoder: 掩码多头注意力 + 交叉注意力 + FFN → 生成未来预测
为什么用Transformer而非LSTM?
| 特性 | LSTM | Transformer |
|---|---|---|
| 长程依赖 | 困难(梯度消失/爆炸) | 直接建模(自注意力) |
| 并行计算 | 序列化 | 完全并行 |
| 噪声处理 | 噪声沿隐藏状态传播 | 自适应加权(注意力机制可降权噪声时间步) |
| 当前SOTA | 否 | 是 |
“当风速预测被噪声污染时,自注意力机制可以自适应地降低不可靠时间步的贡献,转而关注受预测误差影响较小的可靠历史模式。”
② 核密度估计(KDE)表示风功率曲线
物理洞察:风速-功率关系不是单值函数,而是联合概率分布。
f(x)=1nh∑i=1nK(x−Xih)f(x) = \frac{1}{nh}\sum_{i=1}^{n} K\left(\frac{x-X_i}{h}\right)f(x)=nh1i=1∑nK(hx−Xi)
带宽选择:
h=λσ^n−15h = \lambda \hat{\sigma} n^{-\frac{1}{5}}h=λσ^n−51
其中λ∈{0.07,0.1,0.12}\lambda \in \{0.07, 0.1, 0.12\}λ∈{0.07,0.1,0.12}通过网格搜索确定,实验表明λ=0.1最优。
关键设计:KDE所有步骤可微分 → 支持梯度反向传播。
③ JS散度作为物理约束损失
为什么不直接用MSE?
- MSE只关注点对点误差
- 无法保证预测结果的概率分布与物理规律一致
KL散度的局限:
- 非对称:KL(P∣∣Q)≠KL(Q∣∣P)KL(P||Q) \neq KL(Q||P)KL(P∣∣Q)=KL(Q∣∣P)
- 对零概率敏感 → 梯度不稳定
JS散度的优势:
JS(P∣∣Q)=12KL(P∣∣P+Q2)+12KL(Q∣∣P+Q2)JS(P||Q) = \frac{1}{2}KL\left(P\big|\big|\frac{P+Q}{2}\right) + \frac{1}{2}KL\left(Q\big|\big|\frac{P+Q}{2}\right)JS(P∣∣Q)=21KL(P2P+Q)+21KL(Q2P+Q)
| 特性 | KL | JS |
|---|---|---|
| 对称性 | ❌ | ✅ |
| 有界性 | [0, +∞) | [0, 1] |
| 零概率稳定性 | 差 | 好 |
| 适用性 | 一般 | 更适合训练 |
三、训练策略:动态阈值切换机制
3.1 核心问题:JS散度的梯度消失
训练初期: 模型输出随机 → 预测分布P与目标分布Q无重叠 → JS(P||Q) = log(2) ≈ 0.693 (饱和) → ∇JS = 0 (梯度消失!) → 模型无法通过JS损失学习3.2 解决方案:动态权重切换
# 伪代码if(predictions.std()>1e-4)and(mean_powerinvalid_range):js_ratio=1# 启用JS损失else:js_ratio=0# 仅使用MSE损失total_loss=MSE_loss+js_ratio*JS_loss实际效果:JS ratio 通常在最初几次迭代内从0切换到1,之后保持激活。
四、实验验证
4.1 数据集
| 属性 | 详情 |
|---|---|
| 来源 | 中国江苏省盐城市25台风机 |
| 时间 | 2020年全年 |
| 采样间隔 | 10分钟 |
| 总数据点 | 约400万 |
| 特征 | 风速、桨距角、历史功率 |
| 训练/测试 | 1-10月 / 11-12月 |
| 输入窗口 | 4天 (576步) |
| 预测horizon | 1天 (144步) |
数据特点(图4):25台风机的功率、风速、桨距角分布高度一致 → 支持使用平均风功率曲线。
4.2 噪声设置
模拟真实风速预测误差:
St+1′=St+1+N(0,x),x∈{0.1,0.2,...,0.7}S'_{t+1} = S_{t+1} + \mathcal{N}(0, x), \quad x \in \{0.1, 0.2, ..., 0.7\}St+1′=St+1+N(0,x),x∈{0.1,0.2,...,0.7}
- N(0,0.1)~N(0,0.3): 实际常见范围(NRMSE 0.2~0.4)
- N(0,0.6)~N(0,0.7): 极端情况,测试鲁棒性极限
4.3 核心结果:vs 标准Transformer
表1 详细结果:
| 噪声水平 | Transformer MSE | PCT MSE | 提升幅度 |
|---|---|---|---|
| N(0,0.1) | 0.0282 | 0.0262 | 7.1% |
| N(0,0.2) | 0.0386 | 0.0288 | 25.4% |
| N(0,0.3) | 0.0674 | 0.0347 | 48.5% |
| N(0,0.4) | 0.1145 | 0.0398 | 65.2% |
| N(0,0.5) | 0.1812 | 0.0607 | 66.3% |
| N(0,0.6) | 0.2383 | 0.0886 | 62.8% |
| N(0,0.7) | 0.3294 | 0.1432 | 58.3% |
关键发现:
- 低噪声:适度提升(7%~25%)
- 中高噪声:大幅提升(48%~66%)
- 噪声越大,物理约束的价值越显著
图5 雷达图直观展示了PCT在各噪声水平下的全面优势。
4.4 可视化对比(图6)
┌─────────────────────────────────────────┐ │ 三个典型时段的预测曲线 (N(0,0.5)噪声) │ │ │ │ 红色: 真实功率 | 紫色: PCT | 浅蓝: Transformer │ │ │ │ 观察: │ │ • Transformer预测偏离真实值,波动异常 │ │ • PCT紧密跟踪真实曲线,保持物理合理性 │ │ • PCT在峰值和谷值处表现尤其出色 │ └─────────────────────────────────────────┘4.5 vs TgDPF(前SOTA)
表2 对比结果:
| 噪声水平 | TgDPF (LSTM+JS) | PCT (Transformer+JS) | 提升 |
|---|---|---|---|
| N(0,0.1) | 0.0310 | 0.0262 | 15.4% |
| N(0,0.2) | 0.0332 | 0.0288 | 13.3% |
| N(0,0.3) | 0.0373 | 0.0347 | 6.7% |
| N(0,0.4) | 0.0405 | 0.0398 | 1.7% |
| N(0,0.5) | 0.0455 | 0.0607 | -33.4%⚠️ |
重要发现:
- 低噪声(x≤0.3):Transformer > LSTM,提升显著
- 极高噪声(x≥0.5):LSTM更鲁棒,Transformer复杂架构放大了噪声影响
- 实际意义:N(0,0.5)以上的噪声在实际风速预测中极为罕见(图7显示此时风速趋势已完全不可辨)
4.6 消融实验与补充分析
① 带宽参数敏感性(表3):
| λ | MSE |
|---|---|
| 0.10 | 0.0347 |
| 0.07 | 0.0359 |
| 0.12 | 0.0365 |
→ λ=0.1 最优,模型对带宽选择不敏感
② 模型深度(表4):
| 层数 | N(0,0.1) | N(0,0.3) | N(0,0.5) |
|---|---|---|---|
| 1层 | 0.0262 | 0.0347 | 0.0607 |
| 2层 | 0.0265 | 0.0347 | 0.0603 |
| 3层 | 0.0266 | 0.0355 | 0.0612 |
→单层Transformer已足够!物理约束(JS损失)起到了正则化作用,减少了过拟合风险,无需深层架构。
③ 对比其他基线(表5):
| 模型 | N(0,0.1) | N(0,0.3) | N(0,0.5) |
|---|---|---|---|
| PCT (Ours) | 0.0262 | 0.0347 | 0.0607 |
| Transformer | 0.0282 | 0.0674 | 0.1812 |
| Poly_Transformer | 0.0289 | 0.0660 | 0.1190 |
| NWP+Power Curve | 0.0657 | 0.1339 | 0.4372 |
- Poly_Transformer(多项式回归约束):性能与标准Transformer相当 →确定性物理约束不准确,反而误导学习
- NWP+PC(纯物理方法):性能最差 → 凸显深度学习价值
4.7 注意力热力图分析(图8)
Transformer注意力图 (N(0,0.5)): • 整体暗淡,模式不规则 • 无法从噪声输入中识别可靠特征 → 预测不准确 PCT注意力图 (N(0,0.5)): • 明显更亮,呈现清晰周期性结构 • 物理约束引导模型聚焦有意义模式 • 有效过滤噪声干扰 → 预测更鲁棒五、方法论启示
5.1 物理约束的三种范式
┌─────────────────────────────────────────────────────────┐ │ ① 硬约束 (Hard Constraint) │ │ → 如PINNs中的PDE残差 = 0 │ │ → 优点:严格满足物理定律 │ │ → 缺点:要求精确方程,难以处理随机性 │ ├─────────────────────────────────────────────────────────┤ │ ② 软约束 - 确定性 (Soft Constraint - Deterministic) │ │ → 如Poly_Transformer中的多项式回归 │ │ → 优点:实现简单 │ │ → 缺点:近似误差大,可能误导学习 │ ├─────────────────────────────────────────────────────────┤ │ ③ 软约束 - 概率性 (Soft Constraint - Probabilistic) ★ │ │ → 如PCT中的KDE+JS散度 │ │ → 优点:捕捉真实随机性,更鲁棒 │ │ → 适用:存在内在不确定性的物理过程 │ └─────────────────────────────────────────────────────────┘5.2 关键设计原则
| 原则 | PCT中的体现 |
|---|---|
| 物理知识要"对" | 用KDE捕捉风速-功率的概率本质,而非强制单值映射 |
| 约束要"可训练" | KDE和JS全部可微分,支持端到端梯度优化 |
| 训练要"稳定" | 动态阈值切换解决JS初期梯度消失 |
| 模型要"够用" | 单层Transformer+物理约束 = 深层模型效果 |
七、局限与未来方向
| 局限 | 说明 | 潜在改进 |
|---|---|---|
| 极高噪声下不如LSTM | Transformer复杂度放大噪声 | 探索更轻量的注意力机制 |
| 单一场景验证 | 仅25台相似风机 | 跨风场、跨机型验证 |
| 静态风功率曲线 | 未考虑季节/老化导致的曲线漂移 | 在线自适应KDE更新 |
| 仅风速噪声 | 未考虑其他气象变量噪声 | 多变量联合不确定性建模 |
八、总结
PCT的核心贡献可以概括为一句话:
“用概率分布刻画物理知识,用JS散度约束深度学习,让Transformer在噪声中保持物理合理性”
这项工作为物理信息深度学习领域提供了重要范式:
- 不是所有物理知识都适合用确定性方程表达
- 概率性约束(分布对齐)可能比点约束(方程残差)更适合某些工业场景
- 物理约束不仅是精度提升器,更是噪声鲁棒性增强器
