计算均值方差时,电脑内存不够怎么办

背景:之前计算一批图片的均值和标准差时,电脑内存不够,又不想去公司运算,所以想到了这个办法。我相信很多资深的算法工程师,也许都用过。其实很简单,就是把数据分开计算就可以了。

处理步骤:
  1. 明确计算的是哪个通道(维度)上的均值 ( mean ) 和标准差 ( std ) ;
  2. 将计算的数据分组;
    注意:必须保证每组的数据量是一致的
  3. 分别计算每组数据的均值,将得到的数据(均值)再求一次均值,即是所有数据的均值;
  4. 计算每组数据的方差(使用步骤3求的均值),然后将所有组的方差求平均值(方差的和除以组数),将所得的数据开平方根,即是标准差。
举个例子

样本(数据)有 10000 张图片 ( RGB模式 ),图片大小是 32 × 32,数据的形状是 ( 10000, 3, 32, 32 ) 。

  1. 明确求的是通道 ( dim = 1 ) 上的均值和标准差;
  2. 将数据分成20组,每组500张图片,每组数据的形状是 ( 500, 3, 32, 32 ) ;
  3. 求出每组数据的均值,由于是求的通道上的均值,所以每组数据都会有3个均值(标准差也是一样的),然后对20组均值再求一次均值,就得到了 10000 张图片在通道上的均值(3个值);
  4. 按通道求出每组数据的方差(标准差的平方),再对20组方差求平均值,再开平方根,便得到 10000 张图片在通道上的标准差(3个值)。
    计算标准差用到的均值,一定要是整个样本求出的均值,而不是每组样本得到的均值

若有纰漏之处,还望指正!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值