理解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是在优化器中实现的,在代码中构建了两个优化器,一个优化器不带有正则化,一个优化器带有正则化。对与模型的优化有进一步提升。

相关推荐
三声三视6 分钟前
uni-app 鸿蒙端传参变成 [object Object]?顺着源码追到 ArkTS router 底层才搞明白
人工智能·ai·uni-app·aigc·ai编程·harmonyos
fthux34 分钟前
“装闭”,让装修套路“装”不下去
人工智能·ai·开源·github·open source
andxe36 分钟前
安科士 AndXe 技术博客:400G QSFP112 SR4 光模块|AI 算力与超算短距互联最优方案
网络·人工智能·光模块·光通信
玉鸯1 小时前
Agent Hook:在概率推理之上,为 Agent 叠加确定性控制
python·langchain·agent
weixin_446260852 小时前
HACO:面向动态部署环境的对冲式智能计算可靠多智能体调度框架
后端·python·flask
计算机魔术师2 小时前
Karpathy:用语音与LLM长谈可提升理解效率
人工智能·ai编程
我的xiaodoujiao2 小时前
API 接口自动化测试详细图文教程学习系列32--Allure测试报告2
python·学习·测试工具·pytest
DFT计算杂谈2 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
qetfw2 小时前
MXU:Tauri 2 + React 的 MaaFramework 跨平台 GUI 源码
前端·python·react.js·前端框架·开源项目·效率工具