机器学习超参数mini-batch(小批量)与正则化

1、一个epoch(周期)为所有数据完成一次前向与反向传播,iteration(迭代次数)为权重参数更新的次数,mini-batch(小批量)为一次权重参数更新所用的数据条数。迭代次数=数据总数/小批量 ,例如数据总数为2000条数据,小批量为500,那么一个周期内迭代次数=2000/500=4 ,如果是两个周期,那么迭代次数=2*(2000/500)=8

2、mini-batch越大,意味着计算量越大,梯度越平滑。但不是越大越好,权衡内存,计算量,优化效果。

3、mini-batch一般为2的次方,层的大小一般也为2的次方,这是由硬件特性造成的。

4、使用CPU进行训练时mini-batch一般为32到256,使用GPU进行训练时mini-batch一般为32 到1024

5、当你增大mini-batch时,迭代次数就会减少,那么参数更新次数也会减小,因此,要适当增加epoch的次数。

6、正则化是为了避免权重参数变化太快太大,以防过拟合。

7、L2更重地惩罚较大的权重,但不会将较小的权重减到0。L1对大权重的惩罚较小,但会导致许多权重被减少到0(或非常接近0),这意味着合成权重向量可以是稀疏的。

猜你喜欢

转载自blog.csdn.net/bewithme/article/details/86708991