解释为什么训练集的预测结果一直小于真实值

1. 数据偏态(Skewness)或归一化问题:
  • 如果输入数据在归一化时进行了错误的平移或缩放,可能导致模型学习的分布偏离实际分布。
  • 未显示是否反归一化: 如果 RevIN 或归一化/反归一化未正确处理,预测值可能偏离实际范围。
2. 模型学习偏差(Underfitting):
  • 训练过程中,模型可能对损失函数的优化存在偏差。例如,MSE 优化会倾向于降低大值误差,但忽略小值误差,可能导致预测值偏向均值。
  • 使用 KL 散度引入的正则化约束也可能使潜在空间的表示能力受到限制。
3. VAE 模型特性:
  • VAE 模型在重构时往往倾向于生成更平滑、更保守的输出(特别是低复杂度的潜在空间)。
  • 对于时间序列预测,这种特性可能导致输出的幅值较小。
4. 训练策略与超参数设置:
  • 学习率问题: 代码中学习率设为 0.01,但在较深的模型中可能过高,导致训练过程不稳定,权重未能充分学习细节。
  • 早停策略过早: 如果模型未充分训练,可能导致对训练集的拟合不足。
5. 序列间的信息丢失:
  • 编码器中的 CNN 和 LSTM 没有多层设计,可能不足以捕获序列中的高阶特征,从而影响预测值的幅度。

改进建议

数据处理改进
  1. 确保输入序列和目标值的归一化过程正确,并在解码输出时正确反归一化。
  2. 检查数据分布,使用对称分布(如标准化)改善模型学习。
模型结构改进
  1. 使用更复杂的编码器和解码器架构,如堆叠 LSTM 或更深的 CNN 提取高阶特征。
  2. 在解码阶段增加额外的全连接层,优化隐变量的解码能力。
超参数优化
  1. 调整学习率:尝试较小的学习率(如 10−310^{-3}10−3 或 10−410^{-4}10−4),并采用自适应调整策略(如学习率衰减)。
  2. 提高 early_stopping_patience 值,确保模型有足够时间训练。
训练过程
  1. 增加训练轮次,或引入 warm-up 阶段让模型更稳定地学习
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值