理解pytorch中的L2正则项

1 问题

  1. 正则化与偏差-方差分解之间的联系。

  2. Weight decay全值衰减。

2 方法

  1. regularization:减小方差的策略

    误差可分解为:偏差,方差与噪声之和。即误差=偏差+方差+噪声之和偏差度量了学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力

    方差度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响

    噪声则表达了在当前任务上任何学习算法所能达到的期望泛化误差

    方差(Variance)是刻画数据扰动所造成的影响

    偏差是指刻画学习算法的本身拟合能力

    目标函数处理公式:( Objective Function ): Obj = Cost + Regularization Term

  2. 权值衰减代码复现模型搭建

  3. classMLP(nn.Module):

  4. def__init__(self, neural_num):

  5. super(MLP, self).init()

  6. self.linears=nn.Sequential(

  7. nn.Linear(1, neural_num),

  8. nn.ReLU(inplace=True),

  9. nn.Linear(neural_num, neural_num),

  10. nn.ReLU(inplace=True),

  11. nn.Linear(neural_num, neural_num),

  12. nn.ReLU(inplace=True),

  13. nn.Linear(neural_num, 1),

  14. )

  15. defforward(self, x):

  16. returnself.linears(x)

3 总结

针对问题一:对于pytorch模型中存在的过拟合与欠拟合做出明确原因与产生的数据来源的算法做出明确标注,解释清楚了误差的组成成分。

针对问题二:正则化策略的目的就是降低方差,减小过拟合的发生。weight_decay是在优化器中实现的,在代码中构建了两个优化器,一个优化器不带有正则化,一个优化器带有正则化。对与模型的优化有进一步提升。

相关推荐
hsfxuebao7 分钟前
380K Star 的 OpenClaw 凭什么碾压 Hermes Agent?源码级架构对决——从 Gateway 到 Agent Loop 的五维拆解
人工智能
唠点键盘之外的7 分钟前
26 向量数据库实战:从 0 搭一条能用的检索链路(pgvector + Spring AI)
数据库·人工智能·spring
冬奇Lab13 分钟前
开源项目第235期:REA — 让 AI Agent 逆向任何东西,从网站/Electron 应用一路分析到二进制层
人工智能·开源·资讯
别动我齐刘海22 分钟前
Linux 系统调试学习1
linux·运维·服务器·c++·学习·机器学习·机器人
棉猴25 分钟前
玩游戏学Python1-Python和pgzero库的安装
python·pygame·玩游戏·pgzero·pgzrun
冬奇Lab31 分钟前
LLM 驱动的自动化测试系列(11):API 测试为什么反而是 LLM 最保守的战场
人工智能·测试
Csvn40 分钟前
提示词即代码:有版本、能评审、可回滚(R01)
人工智能·aigc·agent
诺伦1 小时前
GEO优化数据实证:78%引用流向官网的机制拆解与小品牌三步管线实战教程 | RiseClaw玄策
python·seo·geo·内容营销·ai搜索
oooost1 小时前
pytorch学习笔记1
python·学习方法
阿明副业观察1 小时前
AI视频生成技术全解:生成方法、操作流程与选型指南
大数据·人工智能·ai作画·aigc·ai写作