【跟李沐学AI—机器学习】6 模型的调参

1 调参概述

简单来说,就是一个玄学,没法科学解释每个参数的作用,只能靠经验和直觉

介绍了几个记录实验数据的工具,如tensorboard、weights&bias

2 超参数优化

又名HPO(HyperParameter Optimization),是用于寻找最佳超参数的一类算法,即用算法调参

首先确定每个超参数的范围(主要靠经验)和具体数值选择方式

然后选择算法:

  1. black box黑盒:不知道模型其中细节,直接试,对比结果
    1. grid search网格搜索:暴力穷举所有超参数组合
    2. random search随机搜索:随机组合超参数
    3. bayesian optimization贝叶斯优化:比较复杂,但比较火。
      ML是学习从数据到预测中的函数,而BO是要学习从超参数到在该超参数上训练出的模型的评估指标中的函数。
      BO中有两个模型,一个是采样超参数进行学习,一个模型是帮助前者判断下一个采样点选哪个。一开始的时候其实和随机搜索效果差不多,是个循序渐进的过程
  2. multi-fidelity多保真度:
    即先验实验——a. 在子数据集上训练;b. 降低模型层数/复杂度;c. 模型一开始就不对劲时就停止
    1. successive halving(SH):先选取n个超参数,每个超参数训练m遍,把参数表现最好的一半留下,剩下的一半丢掉,再训练m遍,最后得到最佳的参数(n、m也不好取)
    2. hyperband:即跑多个SH,每次修改n、m的值,如减半,有时候一次SH效果不好不代表真的不好

3 网络架构搜索

Neural Architecture Search,NAS

在深度神经网络如何通过算法来选取网络架构

  1. NAS with reinforcement learning强化学习

    把超参数看成时序文本作为RL网络的输入,使用RNN循环神经网络进行RL,将我们要构建的模型训练得到评估结果,结果不断反馈给RL网络,调整超参数

    缺点是贵

  2. the one-hot approach

    只关注模型架构的好坏,只训练一些轮次,好的话就再完整地训练

    1. differentiable architecture search 可微分搜索

      假设每一层都有几个候选网络结构,如卷积核不同、通道数不同等

      该层的第i个候选是Oi.l,若该层有n个候选,把这n个候选进行softmax加权和(权重通过学习得到),作为输出,每次选择参数时选择权重最大的候选

      (Softmax函数可以将多分类的输出值转换为范围在[0, 1]、和为1的概率分布)

在这里插入图片描述

  1. scaling CNNs
    调节CNN的三个方法
    1. 增加层数,让网络更深
    2. 增加输出通道,让网络更宽
    3. 提高输入图像的分辨率,让输入更大

EfficientNet 则综合使用上面3个方法,用一些调节决策确定超参数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值