-
作用:
加速训练:防止训练震荡,防止训练过早饱和[数据分布在两端]
//没有用 BN 的时候, 每层的值迅速全部都变为 0, 也可以说, 所有的神经元都已经死了. 而有 BN, relu 过后, 每层的值都能有一个比较好的分布效果, 大部分神经元都还活着.
可以达到更好的精度 -
Normalization
https://www.zhihu.com/question/20924039 -
BN
https://zhuanlan.zhihu.com/p/93643523
https://morvanzhou.github.io/tutorials/machine-learning/tensorflow/5-13-BN/#compare #莫烦教程
https://zhuanlan.zhihu.com/p/24810318
if norm: # 判断书否是 BN 层
fc_mean, fc_var = tf.nn.moments(
Wx_plus_b,
axes=[0], # 想要 normalize 的维度, [0] 代表 batch 维度
# 如果是图像数据, 可以传入 [0, 1, 2], 相当于求[batch, height, width] 的均值/方差, 注意不要加入 channel 维度
)
scale = tf.Variable(tf.ones([out_size]))
shift = tf.Variable(tf.zeros([out_size]))
epsilon = 0.001
Wx_plus_b = tf.nn.batch_normalization(Wx_plus_b, fc_mean, fc_var, shift, scale, epsilon)
# 上面那一步, 在做如下事情:
# Wx_plus_b = (Wx_plus_b - fc_mean) / tf.sqrt(fc_var + 0.001)
# Wx_plus_b = Wx_plus_b * scale + shift
# 如果你已经看不懂了, 请去我最上面学习资料里的链接 (我制作的 Batch normalization 简介视频)
Normalization: 操纵统计分布的隐形之手
报告嘉宾:邵文琪 (The Chinese University of Hong Kong)
报告时间:2021年7月28日 (星期三)晚上20:20
报告题目:Channel Equilibrium Network for Learning Deep Representation
个人主页:https://scholar.google.com/citations?user=Bs9mrwwAAAAJ&hl=en
报告地址:http://valser.org/article-433-1.html
https://www.bilibili.com/video/BV19q4y1H7ra
报告嘉宾:Boyi Li (Cornell University)
报告时间:2021年7月28日 (星期三)晚上20:00 (北京时间)
报告题目:Learning to learn normalization
个人主页:https://sites.google.com/site/boyilics/home
报告地址:http://valser.org/article-433-1.html
https://www.bilibili.com/video/BV16341167ku
时间:2021年7月28日晚20点
主题:Normalization: 操纵统计分布的隐形之手
主持人: 张瑞茂 (香港中文大学深圳校区)
嘉宾:Boyi Li (Cornell University),邵文琪 (The Chinese University of Hong Kong),高尚华 (南开大学),龙明盛 (清华大学),孙若愚 (伊利诺伊大学香槟分校),张辉帅 (微软亚洲研究院),黄雷 (北京航空航天大学)
地址:http://valser.org/article-433-1.html
https://www.bilibili.com/video/BV1UV411p741