Batch Normalization 使用位置讨论

17 篇文章 1 订阅
2 篇文章 0 订阅

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)不使用

在此数据上,将Batch Normalization 放在激活函数前,与不使用相比,可以少量提高性能

实验二:一个二分类生物数据,近似平衡,训练集越600样本,验证集约400样本,约200特征,full batch,学习率{1e-3,1e-4}和epoch{100, 200, 300, 400, 500}进行网格搜索,取最好结果

(1)激活函数前

(2)激活函数后

(3)不使用

在此数据上,不使用Batch Normalization技术反而更好

因此,实际问题需要额外讨论。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冰糖不在家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值