多卡bn怎么做

单卡bn: 不能在训练时只计算一个批次内的样本的均值和方差,然后通过减均值除以方差乘上缩放系数再加上偏移系数;
多卡bn:多卡的时候,对于数据并行这种处理方式,如果想要同步bn,因为数据是平均放在多个gpu上面,但是模型又需要所有数据进行nomalize,常规的想法就是,首先各个gpu单独计算该gpu上的数据的均值,然后做一次同步,计算所有该批次内所有数据的全局均值,然后用全局均值去算每张卡对应的方差,然后再做一次同步,得到全局方差;但是这样多次通信会很耗时,所以为解决这个问题,提出来下面的方法:在第一次同步均值的时候提前算好x平方和x的和,因为方差的计算只与x有关,所以我们事先算好,就可以在第一次同步均值时同时同步方差。
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值