[深度学习] 超参数设定和网络训练

超参数设定

介绍一些重要的网络设计过程中的超参数设定技巧和训练技巧,如学习率,批规范化操作和网络优化化策略的选择。

网络超参数的设定

网络超参数设定在搭建整个网络架构之前,需首先指定与网络结构相关的各项超参数:输入图像像素,卷积层个数,卷积核相关参数。

输入数据像素大小

使用卷积神经网络处理图像问题时,对不同输入图像为得到同规格输出,同时便于GPU运行,会将图像压缩到2222222222 2^2104数量级以下。

  • 卷积神经网络浅层拥有更泛化的特征(如边缘,纹理等),深层的特征则更抽象对应高层语义。因此,在新数据上微调时泛化特征更新可能或程度很小,高层语义特征更新可能程度较大,故可根据层神对不同层设置不同学习率:网络深层的学习率可稍大于浅层学习率
  • 根据目标任务数据与原始数据相似程度采用不同微调策略:
    a) 当目标数据较少且目标数据与原始数据非常相似时,可仅微调网络靠近目标函数的后几层;
    b) 当目标数据充足且相似时,可微调更多网络层,也可全部微调;
    c) 当目标数据充足但与原始数据差异较大,此时须多调节一些网络层,直至微调全部;
    d) 当目标数据极少,同时还与原始数据有较大差异时,这种情形比较麻烦,微调成功与否要具体 问题具体对待,不过仍可尝试首先微调网络后几层后再微调整个网络模型。
  • 针对“当目标数据极少,同时还与原始数据有较大差异时”的情况,目前比较有效的方式是借助部分原始数据与目标数据协同训练。Ge和Yu提出,因预训练模型的浅层网络特征更具有泛化力,故可在浅层空间选择目标数据的近邻作为原始数据子集。之后,将微调阶段改为多任务学习(多任务学习就是有两个不同的任务,用同一个网络,同时生成两个结果):一者将目标任务基于原始数据子集,二者将目标任务基于全部目标数据。
    [深度学习] 超参数设定和网络训练

    参考文献

    [1] 解析卷积神经网络——深度学习实践手册
    [2] 深度学习(花书)