BatchNorm1d
нормализует данные до среднего значения 0 и единицы измерения для 2/3-мерных данных (N, C)
или (N, C, L)
, рассчитанных по размеру канала на каждом срезе (N, L)
или (N,)
; в то время как BatchNorm2d
делает то же самое для 4 измерений (N, C, H, W)
, вычисленных по измерению канала на каждом срезе (N, H, W)
.
Какой из них использовать, зависит от размерности входных данных. Например, при обработке изображений карты объектов обычно имеют 2 пространственных измерения (N, C, H, W)
, поэтому здесь полезно BatchNorm2d
. Однако для некоторых задач НЛП, если нужно учитывать только измерение длины, можно использовать BatchNorm1d
. Для обеих функций параметр d1
- это число признаков, равное dim C
входного тензора.