首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
BatchNormalization的作用
[问答题]
Batch
Normalization的作用
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(123)
分享
纠错
3个回答
添加回答
3
tring
因为神经网路每层的权重参数在变化,每层的输入数据的分布在变化,让每一层去拟合输入的分布就容易过拟合且学习率不能太高;BN就是就是让每一层去自适应拟合自己的输入分布,使得每一层比较独立;做法就是把数据标准化为0均值1方差,然后设置2个参数控制均值和方差,让每一层自己去学习这两个参数
发表于 2019-10-21 12:25:06
回复(0)
1
Chia880520
BN可以解决梯度消失的问题假设激活函数为sigmoid.
al=sigmoid(hl)=sigmoid(al−1∗wl)al=sigmoid(hl)=sigmoid(al−1∗wl)
因为在反向传播中:
∂g∂w=∂g∂al∗∂al∂hl∗∂hl∂w=∂g∂al∗∂al∂hl∗∂hl∂al−1∗∂al−1∂hl−1∗∂hl−1∂w=...∂g∂w=∂g∂al∗∂al∂hl∗∂hl∂w=∂g∂al∗∂al∂hl∗∂hl∂al−1∗∂al−1∂hl−1∗∂hl−1∂w=...
如果hlhl非常大,根据sigmoid图像的特点,在两边值的导数几乎为0,只有中间y轴附近值导数值比较大。所以,经过若干次链式求导,最终∂g∂w∂g∂w接近为0,这就是梯度消失。
如果经过了Batch Normalization,可以使得每一层的hh的均值为0,标准差为1,也就是数据集中在y轴附近,这样就使得梯度比较大,解决了梯度消失的问题
发表于 2019-10-21 17:20:47
回复(0)
0
努力的小鱼
1.加速梯度下降的收敛速度
2.控制过拟合,可以少用或者不用dropout和正则化
3.降低网络对初始化权重的不敏感
4.允许使用较大的学习率
发表于 2020-07-10 21:23:07
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
上传者:
小小
难度:
3条回答
123收藏
2162浏览
热门推荐
相关试题
三视图
枚举
评论
(7)
岛屿数量
过关题目
搜索题综合
评论
(1)
以下关于进程和线程的说法,哪些是正确的?
操作系统
评论
(1)
以下关于 TCP 和 UDP 的说...
网络基础
评论
(1)
依次调用 add_user('Al...
Python
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题