Я реализую алгоритм BN в моей модели CNN, используя C ++. Но я очень запутался из-за его вычисления среднего значения и стандартного отклонения.
Предположим, что карта объектов имеет вид [B, C, H, W], где B - размер пакета, C - количество каналов, (H, W)
- размер карты объектов ([B, C, H, W] = [3,2,2,2]).
[[ 0 1] [ 4 5]
[ 2 3], [ 6 7]],
[[ 8 9 ] [12 13]
[10 11], [14 15]],
[[16 17] [20 21]
[18 19], [22 23]]
. Нормализация партии выполняется для каждого пикселя по всем активациям в партии. Поэтому я думаю, что среднее значение для мини-партии будет
[[ 8 9] [ 12 13]
[ 10 11] , [ 14 15]]
ex, [8 = (0+8+16)/3, 9 = (1+9+17)/3]
В полностью подключенном слое, если на выходе будет
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]],
, среднее значение для мини-партии будет
[ 4. 5. 6. 7.]
ex, [4 = (0+4+8)/3, 5 = (1+5+9)/3]
Правильно ли мое понимание?