You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

反归一化后CNN回归模型MSE骤增的原因及解决方法

反归一化后MSE骤增的原因
  • MSE的尺度依赖特性:MinMaxScaler将原始数据缩放到[0,1](或指定范围),此时归一化后的误差本身数值极小,平方后的MSE自然很低。反归一化时,误差会被还原为原始尺度的误差——假设原始数据的范围是max_y - min_y,那么反归一化后的误差是归一化误差乘以max_y - min_y,对应的MSE就是归一化MSE乘以(max_y - min_y)²。如果原始测力台数据的数值范围很大(比如几万级别),平方后会让MSE骤增,这是完全正常的数学现象。
  • 指标本质差异:R² Score是相对指标,衡量的是模型解释数据方差的比例,和数据的绝对尺度无关,所以反归一化前后R²几乎不变;而MSE是绝对误差的平方,完全依赖数据的绝对尺度,因此会随尺度放大而剧烈增长。
如何看待及调整
  1. 无需强制让MSE数值一致:归一化前后的MSE处于不同尺度,没有直接可比性。真正需要关注的是反归一化后的MSE是否符合业务场景的误差容忍度,或者用**MAE(平均绝对误差)、MAPE(平均绝对百分比误差)**这类相对/绝对但不平方的指标来评估,这些指标的尺度变化更直观,也更容易判断模型效果。
  2. 换用标准化(StandardScaler):如果希望归一化前后的MSE差异更小,可以用StandardScaler将数据缩放到均值为0、方差为1的分布。此时反归一化后的MSE等于归一化MSE乘以原始数据的方差(MSE_original = MSE_norm * var_y),相比MinMaxScaler,当原始数据分布相对集中时,方差不会像(max-min)²那样大,MSE的增长幅度会小一些,但本质上还是尺度差异导致的变化,无法完全一致。
  3. 直接用原始数据训练(谨慎尝试):如果模型在原始数据上能正常收敛,可以跳过归一化步骤,这样训练和预测的MSE就处于同一尺度。但CNN模型通常对数据尺度敏感,原始数据范围过大可能导致梯度爆炸/消失,需要配合学习率调整、权重初始化等技巧。
  4. 自定义损失函数(不推荐):可以在训练时先将模型输出反归一化,再计算原始尺度的MSE作为损失。但这样损失值会非常大,可能影响优化器的稳定性,导致模型难以收敛,除非有针对性的优化策略,否则不建议使用。

内容的提问来源于stack exchange,提问作者stack offer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 11:55:47