Batch Normalization 技术出现在各种模型中
关于 Batch Normalization 层在模型中的位置,有人说放在激活函数前结果好,有人说放在激活函数后比较好
最合适的确定方式就是在实验过程中进行确定(这同样也是令人无奈的结论)
通过以下实验进行一个简单讨论:
模型:一个4层的神经网络(num_features -> 128 -> 64 -> 32 -> 2),激活函数 LeakyReLU,损失函数交叉熵,
需要讨论的 BatchNorm1d 的应用:(1)放在激活函数前;(2)放在激活函数后;(3)不使用
实验一:一个二分类生物数据,约700个特征,100个样本,近似平衡,10次10倍交叉验证,full batch,epoch为100次,学习率1e-3
(1)激活函数前
(2)激活函数后
(3)不使用