Adaptive Horizon Learning via Bi-level Optimization (双层优化的自适应标签视界学习)

Song-Liu-Chen 2026 Section 4。不依赖 grid search,在单次训练内学出每个候选视界 \delta 的权重 \lambda_\delta,等价于"自动 SNR 探测器"。

问题

给定 \Delta 个候选视界 \{\delta = 1, \ldots, \Delta\},每个对应标签 \mathbf{r}_t^{[\delta]}。学习 \lambda \in \mathbb{R}^\Delta (\sum_\delta \lambda_\delta = 1) 用于加权组合不同视界的损失,使最终在 \mathbf{r}_t^{[\Delta]} 上的 IC 最大。

双层目标 (BLO)

Inner Loop (proxy learning on B_in):
  L_inner = Σ_δ λ_δ · ℓ(ŷ, r_t^δ)
  θ_{m+1} = θ_m - η_inner · ∇_θ L_inner

Outer Loop (target validation on B_out):
  L_outer = -ρ(ŷ_{θ_M(λ)}, r_t^Δ) - γ · H(λ)    # 最大化熵 (Eq. 7)
  λ ← λ - η_outer · ∇_λ L_outer
  • 内层 (\theta 更新):在 support set B_{\text{in}} 上,按当前 \lambda 加权更新 \theta M 步 (通常 M=1)。
  • 外层 (\lambda 更新):在 query set B_{\text{out}} 上,验证 \theta_M(\lambda) 在真实目标 \mathbf{r}_t^{[\Delta]} 上的 IC,加熵正则 H(\lambda) 防止 \lambda collapse 到单一 \delta。

理论等价性: 外层梯度 \nabla_\lambda L_{\text{outer}} = "在 \lambda 方向上的泛化变化"——自动捕获 Signal-Noise 均衡的局部斜率 (Theorem 3.2)。

关键设计

1. 熵正则 (Entropy Regularization)

H(\lambda) = -\sum_\delta \lambda_\delta \ln \lambda_\delta

外层目标最大化 H(\lambda) (Eq. 7: \min_\lambda L_{\text{outer}} - \gamma H(\lambda))。

作用:防止 \lambda collapse 到单 \delta——若 collapse,瞬时噪声扰动会主导梯度,导致训练不稳定;实际是"防止过拟合到单一候选视界"。

\lambda 由可学习参数经 softmax 归一化 (Appendix A.5.2)。

2. Warm-up (Mean-Field Initialization)

直接做 BLO 容易 collapse,因为 \theta 初始时无有效表征 → meta-optimization landscape 高 volatility → 训练抖崩。

Warm-up 流程 (N_{\text{warm}} epochs):

  1. 对所有 \delta 的标签做截面标准化 (z-score),消除不同 \delta 的 volatility scale 差异;
  2. 求所有标准化标签的算术平均 \bar{\mathbf{y}}_t = \frac{1}{\Delta}\sum_\delta \mathbf{z}_t^\delta;
  3. 用 \bar{\mathbf{y}}_t 做标准监督学习 \mathcal{L} = \ell(\hat{\mathbf{y}}, \bar{\mathbf{y}}_t)。

效果:得到一个"对所有视界平均表征"的 \theta_0,作为 BLO 起步点。

3. Inner-loop Single Step (M=1)

经验发现:Warm-up 后 \theta_0 已有充分表征,单步 inner loop (M=1) 即可捕获 \nabla_\theta 对 \lambda 的敏感性。这使 BLO 在计算上几乎无额外开销。

实证验证

必须性 (Table 2, CSI 500 LSTM, Scenario 1):

配置 IC (×10) ICIR RankIC (×10) RankICIR
Naive Averaging 0.969 0.778 0.821 0.817
Equal-Weight MTL 0.932 0.803 0.814 0.837
BLO (Ours) 1.029 0.861 0.859 0.895

BLO 比"平均"和"等权 MTL"都好——证实学习权重比简单平均更有效。

对齐性 (Figure 4):学出的 \lambda 峰值位置与 brute-force grid search 的 \delta^\star 高度吻合 (论文原文 "coincides closely")——证实 BLO 外层梯度等价于"自动 SNR 探测器"。

Warm-up 必须性 (Figure 4 bottom, 仅 Scenario 3): 无 warm-up 时 \lambda 偏向最早 \delta (shortcut learning, Geirhos et al. 2020),训练快但天花板低。Warm-up 防止 trapped in 平凡局部最优。

跨架构普适性 — 但不一致

10 个基模型 × 3 个数据集 (CSI 300/500/1000) 全部获益 IC,但最大者跨数据集不一致:

数据集 IC 提升最大的架构 提升 IC 提升最小的架构
CSI 300 DLinear (Linear) +27% Mamba (+12%)
CSI 500 GRU (RNN) +25% Bi-Mamba+ (+11%)
CSI 1000 TCN (CNN) +14% Mamba (+3%) / Bi-Mamba+ (+3%)

重要 nuance: 论文没有按架构族比较的论断。"复杂架构受益最大"或"SSM 最大"不成立——Mamba/Bi-Mamba+ 只在 CSI 500 表现突出,跨数据集看反而最小。

与 wiki 现有算法的关系

算法 关系
Decision-Focused Learning for MVO DFL 修 loss 梯度 (Σ⁻¹ 倾斜);BLO 修 label 时间结构——正交的两类"训练端目标设计"
Predict-then-Optimize PtO 两阶段独立 + 后校正;BLO 直接选最有效标签,不分离两阶段
Meta-Weight-Net (Shu et al. 2019) BLO 早期用于 sample reweighting;本文扩展到 label selection(视界选择)
MentorNet (Jiang et al. 2018) 同属 BLO 用于 curriculum learning 的样本加权
Bi-level Optimization for Hyperparameter (Franceschi et al. 2018) BLO 的经典 meta-learning 应用

算法伪代码

# Phase 1: Warm-up (N_warm epochs)
for epoch in range(N_warm):
    Z = standardize([r_t[δ] for δ in range(Δ)])   # 截面标准化
    y_bar = Z.mean(dim=0)                          # 算术平均
    loss = criterion(model(X_t), y_bar)
    loss.backward(); optimizer.step()

# Phase 2: BLO (remaining epochs)
raw_lambda = nn.Parameter(torch.zeros(Δ))   # softmax 归一化前的参数
for epoch in range(N_warm, N_total):
    λ = F.softmax(raw_lambda, dim=-1)         # Appendix A.5.2 归一化
    B_in, B_out = split_batch(batch)
    # Inner loop (M=1 step)
    loss_inner = Σ_δ λ[δ] * criterion(model(X_t), r_t[δ])
    θ_M = θ - η * autograd.grad(loss_inner, θ)
    # Outer loop: MIN L_outer = -ic - γ·H   (Eq. 7, 最大化熵)
    pred = model_with_params(X_t, θ_M)
    L_outer = -ic(pred, r_t[Δ]) - γ * entropy(λ)
    L_outer.backward()
    raw_lambda_opt.step(); θ_opt.step()  # 同步更新

进一步阅读

Open Questions

  1. N_{\text{warm}} / M / \gamma 三个超参是否可自适应?当前是手工调,迁移到新数据集需重调。
  2. BLO 在 \Delta 极大 (\Delta \sim 10^3 tick 级) 时的可扩展性:内层梯度累积的计算量是否限制?
  3. 跨架构增益不一致的机制根源:为何 CSI 500 上 GRU 最大、CSI 300 上 DLinear 最大、CSI 1000 上 TCN 最大,而 Mamba/Bi-Mamba+ 只在 CSI 500 表现突出?论文无系统解释。
  4. 与 Distributionally Robust Optimization 联合:在 BLO 内层损失上加 Wasserstein DRO 球,泛化是否进一步提升?