- 预训练参数是最好的参数初始化方式,其次是Xavir。
文章作者: Hongwei Zhao
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Hongwei Zhao's Blog!
相关推荐

2025-11-16
模型
选择模型架构总结: 在开始一个新项目时,尽量重用有效的模型。 首先选择一个完善且常用的模型架构来开始工作。这样可以尽早让模型进入工作状态,之后再构建自定义模型也是可行的。 模型架构通常具有各种超参数,用于确定模型的大小和其他细节(例如层数、层宽度、激活函数类型)。 因此,选择架构实际上意味着选择一整个系列的各种模型(每个模型都有不同的超参数设置)。 如果可以的话,请尝试找到一篇尽可能接近手头问题的相关论文,并将复现该论文中的模型作为起点。 数据量少的时候,最好使用带预训练参数(如Imagenet)的模型去微调。

2025-11-16
损失函数
Focal loss对于极大不平衡的数据集确实有奇效,其中gamma因子可以成10倍数衰减 Loss function是Model和数据之外,第三重要的参数。具体使用MSE、Cross entropy、Focal还是其他自定义,需要具体问题具体分析。

2025-11-16
Batch Size
batch size不能太大,也不能太小;太小会浪费计算资源,太大则会浪费内存;一般设置为16的倍数。对于推荐来说32-64-128-512测试效果再高一般也不会正向了,再低训练太慢了。 Learning rate和batch size是两个重要的参数,而且二者也是相互影响的,在反向传播时直接影响梯度。一般情况下,先调batch size,再调learning rate。 选择BatchSize总结: Batch Size决定训练速度,并且不应该被直接用于调整验证集性能。通常来说,可用硬件支持的最大Batch Size是较为理想的数值。 Batch Size是决定训练时间和计算资源...

2025-11-16
数据
数据量太大的情况下,可以先用1/10,1/100的数据先去估算一下训练或者推理时间,心里有个底。 视觉问题一定要使用数据增强。 一定要进行数据预处理,把数据分布分散到均值为0,方差为1的区间,利于训练模型。

2025-11-16
学习率
学习率最好是从高到低2倍速度递减一般从0.01开始。 如果使用微调,则learning rate设置为0.0001较好。learning rate设置上有很多trick,包括cosing learning rate等。 最好的学习率衰减方案是什么 这是一个开放性问题。目前尚不清楚如何构建一组严格的实验来自信地回答最佳的LR 衰减方案是什么。 虽然我们不知道最好的方案是什么,但我们相信尝试一些(非恒定的)方案很重要并且调整它很重要。 在优化过程中,不同的学习率在不同的时间效果最好。有某种衰减方案可以使模型更有可能达到良好的学习率。 我应该使用哪种学习率衰减方案作为默认值? 我们的偏好...

2025-11-16
Epoch
Epoch number和Early stopping是息息相关的,需要输出loss看一下,到底是什么epoch时效果最好,及时early stopping。 Epoch越大,会浪费计算资源;epoch太小,则训练模型提取特征没到极致。
公告
欢迎来到我的博客!这里分享 AI、机器学习和数学。