#神经网络#
- 量子位
- 2022-08-01 23:42:50
【神经网络 】
Batch大小不一定是2的n次幂?是否选择2的n次幂在运行速度上竟然也相差无几?
有没有感觉常识被颠覆?
这是威斯康星大学麦迪逊分校助理教授Sebastian Raschka的最新结论。
他通过实验得出:选择2的n次幂或8的倍数作为batch大小在实践中不会产生明显差异。
然而,由于在实际使用中已成为约定俗成,选择2的n次幂作为batch大小,的确可以帮助运算更简单并且易于管理。
此外,如果你有兴趣发表学术研究论文,选择2的n次幂将使你的论文看上去不那么主观。
尽管如此,R教授仍然认为,batch的最佳大小在很大程度上取决于神经网络架构和损失函数。例如,在最近使用相同ResNet架构的研究项目中,他发现batch的最佳大小可以在16到256之间,具体取决于损失函数。
因此,R教授建议始终把调整batch大小,作为超参数优化的一部分。
但是,如果你由于内存限制而无法使用512作为batch大小,那么则不必降到256,首先考虑500即可。
Batch大小不一定是2的n次幂!ML资深学者最新结论
Batch大小不一定是2的n次幂?是否选择2的n次幂在运行速度上竟然也相差无几?
有没有感觉常识被颠覆?

这是威斯康星大学麦迪逊分校助理教授Sebastian Raschka的最新结论。
他通过实验得出:选择2的n次幂或8的倍数作为batch大小在实践中不会产生明显差异。
然而,由于在实际使用中已成为约定俗成,选择2的n次幂作为batch大小,的确可以帮助运算更简单并且易于管理。
此外,如果你有兴趣发表学术研究论文,选择2的n次幂将使你的论文看上去不那么主观。
尽管如此,R教授仍然认为,batch的最佳大小在很大程度上取决于神经网络架构和损失函数。例如,在最近使用相同ResNet架构的研究项目中,他发现batch的最佳大小可以在16到256之间,具体取决于损失函数。
因此,R教授建议始终把调整batch大小,作为超参数优化的一部分。
但是,如果你由于内存限制而无法使用512作为batch大小,那么则不必降到256,首先考虑500即可。
