1.nn.BatchNorm1d(num_features)
1.對小批量(mini-batch)的2d或3d輸入進(jìn)行批標(biāo)準(zhǔn)化(Batch Normalization)操作
2.num_features:
來自期望輸入的特征數(shù)朦乏,該期望輸入的大小為'batch_size x num_features [x width]'
意思即輸入大小的形狀可以是'batch_size x num_features' 和 'batch_size x num_features x width' 都可以球及。
(輸入輸出相同)
輸入Shape:(N, C)或者(N, C, L)
輸出Shape:(N, C)或者(N,C呻疹,L)
eps:為保證數(shù)值穩(wěn)定性(分母不能趨近或取0),給分母加上的值桶略。默認(rèn)為1e-5。
momentum:動(dòng)態(tài)均值和動(dòng)態(tài)方差所使用的動(dòng)量诲宇。默認(rèn)為0.1际歼。
affine:一個(gè)布爾值,當(dāng)設(shè)為true姑蓝,給該層添加可學(xué)習(xí)的仿射變換參數(shù)鹅心。
3.在每一個(gè)小批量(mini-batch)數(shù)據(jù)中,計(jì)算輸入各個(gè)維度的均值和標(biāo)準(zhǔn)差纺荧。gamma與beta是可學(xué)習(xí)的大小為C的參數(shù)向量(C為輸入大行窭ⅰ)
在訓(xùn)練時(shí),該層計(jì)算每次輸入的均值與方差宙暇,并進(jìn)行移動(dòng)平均输枯。移動(dòng)平均默認(rèn)的動(dòng)量值為0.1。
在驗(yàn)證時(shí)占贫,訓(xùn)練求得的均值/方差將用于標(biāo)準(zhǔn)化驗(yàn)證數(shù)據(jù)桃熄。
4.例子
>>> # With Learnable Parameters
>>> m = nn.BatchNorm1d(100) #num_features指的是randn(20, 100)中(N, C)的第二維C
>>> # Without Learnable Parameters
>>> m = nn.BatchNorm1d(100, affine=False)
>>> input = autograd.Variable(torch.randn(20, 100)) #輸入Shape:(N, C)
>>> output = m(input) #輸出Shape:(N, C)
2.nn.BatchNorm2d(num_features)
1.對小批量(mini-batch)3d數(shù)據(jù)組成的4d輸入進(jìn)行批標(biāo)準(zhǔn)化(Batch Normalization)操作
2.num_features:
來自期望輸入的特征數(shù),該期望輸入的大小為'batch_size x num_features x height x width'
(輸入輸出相同)
輸入Shape:(N, C型奥,H, W)
輸出Shape:(N, C, H, W)
eps: 為保證數(shù)值穩(wěn)定性(分母不能趨近或取0),給分母加上的值瞳收。默認(rèn)為1e-5碉京。
momentum: 動(dòng)態(tài)均值和動(dòng)態(tài)方差所使用的動(dòng)量。默認(rèn)為0.1螟深。
affine: 一個(gè)布爾值谐宙,當(dāng)設(shè)為true,給該層添加可學(xué)習(xí)的仿射變換參數(shù)界弧。
3.在每一個(gè)小批量(mini-batch)數(shù)據(jù)中凡蜻,計(jì)算輸入各個(gè)維度的均值和標(biāo)準(zhǔn)差。gamma與beta是可學(xué)習(xí)的大小為C的參數(shù)向量(C為輸入大泄富)
在訓(xùn)練時(shí)咽瓷,該層計(jì)算每次輸入的均值與方差,并進(jìn)行移動(dòng)平均舰讹。移動(dòng)平均默認(rèn)的動(dòng)量值為0.1茅姜。
在驗(yàn)證時(shí),訓(xùn)練求得的均值/方差將用于標(biāo)準(zhǔn)化驗(yàn)證數(shù)據(jù)月匣。
4.例子
>>> # With Learnable Parameters
>>> m = nn.BatchNorm2d(100) #num_features指的是randn(20, 100, 35, 45)中(N, C钻洒,H, W)的第二維C
>>> # Without Learnable Parameters
>>> m = nn.BatchNorm2d(100, affine=False)
>>> input = autograd.Variable(torch.randn(20, 100, 35, 45)) #輸入Shape:(N, C,H, W)
>>> output = m(input)
3.nn.BatchNorm3d(num_features)
1.對小批量(mini-batch)4d數(shù)據(jù)組成的5d輸入進(jìn)行批標(biāo)準(zhǔn)化(Batch Normalization)操作
2.num_features:
來自期望輸入的特征數(shù)锄开,該期望輸入的大小為'batch_size x num_features depth x height x width'
(輸入輸出相同)
輸入Shape:(N, C素标,D, H, W)
輸出Shape:(N, C, D, H, W)
eps: 為保證數(shù)值穩(wěn)定性(分母不能趨近或取0),給分母加上的值。默認(rèn)為1e-5萍悴。
momentum: 動(dòng)態(tài)均值和動(dòng)態(tài)方差所使用的動(dòng)量头遭。默認(rèn)為0.1。
affine: 一個(gè)布爾值癣诱,當(dāng)設(shè)為true计维,給該層添加可學(xué)習(xí)的仿射變換參數(shù)。
3.在每一個(gè)小批量(mini-batch)數(shù)據(jù)中撕予,計(jì)算輸入各個(gè)維度的均值和標(biāo)準(zhǔn)差鲫惶。gamma與beta是可學(xué)習(xí)的大小為C的參數(shù)向量(C為輸入大小)
在訓(xùn)練時(shí)实抡,該層計(jì)算每次輸入的均值與方差欠母,并進(jìn)行移動(dòng)平均。移動(dòng)平均默認(rèn)的動(dòng)量值為0.1吆寨。
在驗(yàn)證時(shí)赏淌,訓(xùn)練求得的均值/方差將用于標(biāo)準(zhǔn)化驗(yàn)證數(shù)據(jù)。
4.例子
>>> # With Learnable Parameters
>>> m = nn.BatchNorm3d(100) #num_features指的是randn(20, 100, 35, 45, 10)中(N, C, D, H, W)的第二維C
>>> # Without Learnable Parameters
>>> m = nn.BatchNorm3d(100, affine=False) #num_features指的是randn(20, 100, 35, 45, 10)中(N, C, D, H, W)的第二維C
>>> input = autograd.Variable(torch.randn(20, 100, 35, 45, 10)) #輸入Shape:(N, C, D, H, W)
>>> output = m(input)