机器学习第二十一讲:正则化 → 给模型带定位手环防走极端路线

发布于:2025-05-22 ⋅ 阅读:(22) ⋅ 点赞:(0)

机器学习第二十一讲:正则化 → 给模型带定位手环防走极端路线

资料取自《零基础学机器学习》
查看总目录:学习大纲

关于DeepSeek本地部署指南可以看下我之前写的文章:DeepSeek R1本地与线上满血版部署:超详细手把手指南


正则化是模型的减肥教练,通过控制参数大小防止过拟合(类似于防止暴饮暴食)[^8-4]。通过健身房训练案例详解:

一、核心原理(健身阻力带限制训练)

无约束训练
练出畸形肌肉
力量测试成绩差
有哑铃限制
均衡增肌
实战表现优秀

健身对比实验

  1. 自由深蹲:过度追求大重量 → 姿势变形受伤(过拟合)
  2. 带阻力带训练:限制重量范围 → 稳定提高核心力量(正则化)
  3. 比赛成绩:有约束小组平均提升15% [参考材料5]

类比说明:就像父母给青少年设置门禁时间,防止过度放纵[^8-4]

二、技术原理(房价预测案例)

问题描述:线性回归模型过度拟合噪声数据

# 无正则化模型
model = LinearRegression()
model.fit(X_train, y_train)  # 测试集R2=0.72

# 加入L2正则化(岭回归)
from sklearn.linear_model import Ridge
ridge = Ridge(alpha=0.5)  # 调节力度的阀门[^8-4]
ridge.fit(X_train, y_train)  # 测试集R2提升至0.85

数学原理

原始损失函数 = 预测误差平方和
L2正则化损失 = 原始损失 + α*(w1² + w2² + ... + wn²)  # 给参数带上紧箍咒

效果对比:参数值压缩30%-50%,模型泛化能力提升 [参考材料4]

三、类型对比(不同减肥方案)

| 正则化类型 | 作用方式 | 适用场景 | [参考材料5] |
|------------|-----------------------|------------------|
| L1(Lasso)| 让部分参数归零 → 特征选择 | 高维度稀疏数据 |
| L2(岭回归)| 均匀压缩参数值 → 稳定输出 | 中小规模数据集 |
| ElasticNet | L1+L2组合拳 → 平衡效果 | 复杂特征关系 |

案例对比

  • 无正则化:模型参数最大达152.3 → 测试误差0.28
  • L2正则化:参数压缩至23.5 → 测试误差0.15
  • L1正则化:10个特征参数归零 → 模型更简洁 [参考材料3]

四、实践要点(健身房使用指南)

  1. 力量调节(α参数):
    alpha = 0
    无约束自由训练
    alpha = 0.5
    最佳性能区间
    alpha = 10
    过度限制变僵化
  2. 配合策略
    • 先做特征标准化(保证各参数惩罚力度一致)[^4-1]
    • 结合交叉验证选择最佳α值(自动找最佳阻力)[8-2][8-3]
  3. 可视化监控
    import matplotlib.pyplot as plt
    alphas = [0.001, 0.01, 0.1, 1, 10]
    scores = [0.72, 0.81, 0.85, 0.83, 0.75] 
    plt.plot(alphas, scores)  # 呈现倒U型曲线
    

典型错误

错误用法
全模型参数统一惩罚
有用特征被压制
正确做法
分层惩罚
重点压制高频噪声参数

目录:总目录
上篇文章:机器学习第二十讲:网格搜索 → 像尝试所有密码组合找最佳解锁方式
下篇文章:机器学习第二十二讲:感知机 → 模仿大脑神经元的开关系统


[3][4][^5]《零基础学机器学习》第八章第五节正则化
[^8-4]《零基础学机器学习》第八章第五节正则化