深度学习超参数
学习率(Learning Rate)
- 每次迭代中成本函数最小化的量。即:下降到成本函数最小值的速率。
- 学习率可变。
- 从梯度下降算法的角度,选择合适学习率会提高梯度下降法的性能。
- 常用学习率:0.00001,0.0001,0.001,0.003,0.01,0.03,0.1,0.3,1,3,10.
学习率调整策略
- fixed固定策略:学习率为固定值。
- step均匀分步策略:设置step需要设置stepsize,返回base_lr*gamma(floor(iter / stepsize))次方。 iter:当前迭代次数。floor(9.9)=9:下取整。
- 分步策略:base_lr*gamma(iter)次方,gamma值 < 1.
- multistep多分步或不均匀分步策略:训练网络一开始需要高学习率,后期需要低学习率。multistep需要设置stepvalue,参数类似step。step是均匀等间隔变化,multistep是根据stepvalue值变化。
- poly指数下降策略:学习率进行指数下降,返回base_lr*(1-iter / max_iter)(power)次方。
深度学习训练过程
过拟合
模型学习数据过于彻底,把噪声数据特征也学习了。导致后期测试识别数据不准。模型泛化能力太差。
欠拟合
模型没有很好捕捉到数据,不能很好拟合数据。
误差变化
根据特征层进行调参
因为左图的 网络不收敛 或 学习速率设置不对 或 惩罚因子设置过小,导致显示不了底层特征。右图特征多样合理,干净平滑。