Keras批次归一化权重

时间:2019-11-27 09:09:26

标签: python keras deep-learning batch-normalization

我的批处理规范化层采用形状为[1、32、128、128]的输入(通道优先顺序)。在训练具有权重的层之后,该权重包含具有形状(128,)的γ,具有形状(128,)的beta,具有形状(128,)的移动平均值和具有形状(128,)的移动方差。 我在c中从头开始在推断时实现批处理规范化。

`for(i = 0; i < 1; i++) // loop over each image in batch
 {
    for(j = 0; j < 32; j++)  // loop over each channel
    {
       for(k = 0; k < 128; k++) // loop over height of image
       {
          for(l = 0; l < 128; l++)   // loop over width of image
          {
             X_norm[i][j][k][l] =  (X[i][j][k][l] - running_mean[l]) / ((float)(sqrt(running_var[l] + epselon)));
             X_hat[i][j][k][l] = gamma[l] * X_norm[i][j][k][l] + beta[l];
          }
       }
    }
 }`

在这里,我正在通过使用第L个伽玛,第L个beta,第L个移动平均值和第L个移动方差来计算第L个像素上的X_hat。它是否正确? 要么 我们必须使用第K个伽马,第K个beta,第K个移动平均值和第K个移动方差来计算第L个像素上的X_hat

0 个答案:

没有答案