在Z-score归一化数据集训练的线性回归如何正确应用到原始数据集
线性回归归一化权重适配原始数据集的解决方案
问题根因
你在Z-score归一化后的数据集上训练得到的线性回归权重w、偏置b,仅适配变换后的输入特征X_norm,对应预测逻辑为:
y_pred = w * X_norm + b
其中Z-score变换规则为X_norm = (X_raw - μ) / σ(μ为训练集特征均值,σ为训练集特征标准差)。直接把原始特征X_raw代入上述预测公式时,输入量级和训练时完全不匹配,自然会得到错误的预测结果。
标准修复方案
无需每次预测前对原始特征做归一化,只需对训练得到的权重、偏置做一次逆变换,即可直接适配原始特征输入:
将Z-score变换公式代入原始预测逻辑,整理可得适配原始输入的权重w_raw和偏置b_raw:
w_raw = w / σb_raw = b - (w * μ) / σ
替换后直接使用公式y_pred = w_raw * X_raw + b_raw,即可得到和归一化场景下完全一致的预测结果,精度无损失。
你的缩放方案合规性验证
你当前使用的缩放方案完全符合上述推导逻辑,只要你用到的μ和σ均为训练集单独统计得到的均值、标准差(不能使用测试集或全量数据集的统计值,避免数据泄露问题),该方案就是合规的,属于工业界模型落地时的常规处理方式。
内容的提问来源于stack exchange,提问作者walltime
相关产品推荐
相关产品推荐

