第47-50集:数值稳定性 + 初始化 + 房价实战章节收官 + 首次 Kaggle 🏁
⚠️ 第47集:数值稳定性梯度消失与梯度爆炸
链式法则层层连乘:∂L/∂w = ∏(下层梯度) → 连乘即"乘法灾难"
| 病症 | 机理 | 后果 |
| 梯度消失 😶🌫️ | 连乘 < 1 逐层缩小 | 底层梯度≈0,学不动 |
| 梯度爆炸 🚀 | 连乘 > 1 逐层放大 | 数值溢出,训练崩溃 |
📉 典型元凶
sigmoid 饱和区梯度接近 0,多层连乘后底层直接"断电"
🎯 治疗目标
让每层的梯度和输出值都保持在合理范围内
🧊 第48集:模型初始化和激活函数让均值≈0、方差稳定
Xavier:Var(w) = 2/(fan_in + fan_out) (配 tanh/sigmoid)|He:Var(w) = 2/fan_in (配 ReLU)
| 方案 | 公式 | 适用 |
| Xavier ⭐ | N(0, 2/(n_in+n_out)) | tanh / sigmoid / 线性 |
| He (Kaiming) | N(0, 2/n_in) | ReLU(单侧激活方差大) |
🎯 设计思想
初始化让每层输出的均值≈0、方差稳定 → 前向传播不变形,反向梯度不爆炸
🔄 相互成就
激活函数与初始化方案要配套选择,二者共同保证数值稳定
❓ 第49集:QA 精选诊断与进阶手段
Q:怎么诊断梯度问题?
打印各层梯度范数:突然变 0 → 消失;变成 NaN/巨大 → 爆炸
Q:梯度爆炸怎么办?
梯度裁剪(RNN 常用):范数超阈值就等比缩小
Q:梯度消失怎么办?
换 ReLU、Xavier/He 初始化,更深的方案:残差连接 + BatchNorm
Q:小批量大小影响?
batch 越大梯度估计越稳,但泛化可能略降,算力换稳定
🏆 第50集:实战 Kaggle 房价前 29 集知识全家桶上线
流程五步走:
1️⃣ 读数据 → 2️⃣ 数值标准化+缺失值填0 → 3️⃣ 离散特征 one-hot
→ 4️⃣ 训练线性回归 + weight_decay → 5️⃣ K折验证选超参 → 提交
📊 评估指标
log 域 RMSE:log(预测+1) 与 log(真实+1) 的均方根误差
🛠️ 用的都是老朋友
权重衰退治过拟合、K 折交叉验证选模型——理论终于落地