Batch Normalization层中有个参数use_global_stats,它表示是否使用caffe内部的均值和方差。
训练的时候,要将use_global_stats设置为false,也可以不写,caffe默认是false。测试的时候将use_global_stats设置为true。
影响:
1.训练如果不设为false,会导致模型不收敛
2.测试如果不设置为true,会导致准确率极低
区别:
use_global_stats: false是使用了每个Batch里的数据的均值和方差;
use_global_stats: true是使用了所有数据的均值和方差
参考文献:
- https://www.jianshu.com/p/d8e0d847dbd1