CNN图像分类的tricks
Baseline:
预处理:
-
随机抽取一张图片,解码成32位浮点型的[0,255]的像素值形式
-
随机在原图上裁剪一片比例在[3/4, 4/3],面积在[8%, 100%]的矩形区域,然后resize到224x224
-
按0.5的概率对上一步的图片水平翻转
-
在[0.6, 1.4]之间均匀采样系数用于缩放色调、饱和度和亮度(HSB)
-
按正态分布N(0, 0.1)采样系数,用于添加一个PCA噪声
-
在图片的RGB通道上分别减去123.68,116.779,103.939然后除以58.393,57.12,57.375进行归一化。
验证:
保持验证图片的比例不变,将短边缩放到256,然后在其正中裁剪一块224x224的区域,并按和预处理中一样进行归一化。
参数初始化:
卷积层和全连接层的参数都是用Xavier算法初始化,使用中会将参数在[-a,a]之间均匀随机选取,a又由输入输出通道数决定a=sqrt(6/(in_channels+out_channels))。所有的bias都初始化为0。BN层的γ初始化为全1向量,β初始化为全0向量。
训练过程:
梯度更新策略使用NAG,每个模型在8个V100上训练120个epoch,batch size为256,学习率初始化为0.1,每30epoch衰减为1/10。

本文总结了卷积神经网络(CNN)在图像识别、目标检测和语义分割任务中的优化技巧,包括预处理策略、参数初始化、训练过程的优化,如批量训练、学习率调整、模型结构改进等,还探讨了这些技巧在迁移学习中的应用。
最低0.47元/天 解锁文章
&spm=1001.2101.3001.5002&articleId=85159176&d=1&t=3&u=f292ee38f8554f98b70a3e538dfb9999)
7695

被折叠的 条评论
为什么被折叠?



