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

相关推荐
zjy277771 分钟前
Layui tab选项卡如何动态根据ID值进行程序化切换
jvm·数据库·python
Slow菜鸟3 分钟前
Codex CLI 教程(五)| AI 驱动项目从零到一:面向 Java 全栈工程师打造个人 ECC(V2版)
java·开发语言·人工智能
m0_602857765 分钟前
Redis如何修复槽位分配重叠的脏状态_使用redis-cli --cluster fix工具扫描并修复不一致的Slot
jvm·数据库·python
一碗白开水一8 分钟前
【论文解读】VMamba: Visual State Space Model
人工智能·计算机视觉
网安情报局11 分钟前
如何选择合适的AI大模型:快快云安全AI大模型聚合平台全解析
人工智能·网络安全·ai大模型
2301_7662834418 分钟前
怎样开启phpMyAdmin的操作审计日志_记录每条执行的SQL
jvm·数据库·python
动物园猫18 分钟前
工业织物缺陷目标检测数据集分享(适用于YOLO系列深度学习分类检测任务)
深度学习·yolo·目标检测
yongyoudayee22 分钟前
业务语义模型:AI CRM从“能用”到“好用”的技术分水岭
大数据·人工智能
tang7778924 分钟前
代理IP质量检测实战:Python实现IP可用性、延迟、匿名度自动测试脚本
大数据·爬虫·python·网络协议·tcp/ip
我的世界洛天依27 分钟前
官宣|VFrame 企划正式成立:九州合唱团登场,九州网络用 RVC 重构跨 IP 虚拟歌手音乐生态
人工智能·电脑