深度模型参数及超参数调整的经验汇总

本文分享了深度学习模型调参的11个关键步骤,包括权重初始化、BatchNormalization使用、激活函数选择、学习率调整、归一化、残差与密集连接结构应用、损失函数选择、模型集成、防止过拟合、优化器选取及batchsize设置,助您快速提升模型性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(1)初始化
对网络的权重参数进行初始化,比如:
Xavier 的uniform, normal;
一般的均匀分布,标准正态分布都可以尝试。

神经网络参数初始化及Pytorch接口

(2)Batch Normalization
加快网络收敛,如果有BN了,全连接可以考虑不加Dropout。

(3)激活函数
选择Relu, 也可以改成PReLU, GELUs等relu变形。

(4)学习率
使用学习率衰减, 初始化的LR, 0.01, 0.001, 0.0001 等。
注意的是,如果开始的学习率过大, 可能因为RELU激活函数,使得一些神经元永久 “死亡”。

(5)归一化
比如 z-score 归一化。

(6)残差结构和密集连接

Resnet的残差结构和dense net的密集连接,都可以应用到全连接网络中。

(7)损失函数
根据任务选择合适的损失,比如 focal loss能对YOLOv3 带来提升。

(8)Ensemble
对模型结果进行集成。

(9)防止过拟合
L1,L2正则项,限制参数搜索空间;

(10)优化器
自适应的优化器, Adam, RMSprop, 等。

(11) batch size大小
小批量添加正则化的效果大;
大批量添加的正则化效果小,收敛需要的epoch更多。

模型对不同超参数的敏感度:
在这里插入图片描述
也就是,优先调整学习率, 网络层数,网络参数初始化。


参考:

  1. 深度学习调参有哪些技巧?
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

rosefunR

你的赞赏是我创作的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值