batchnorm2d函數理解,numpy數據歸一化


 1.batchnorm2d

 

 深刻理解

 對一批數據,計算各個維度上的均值和標准差,一批數據有幾個維度,就有幾個均值,下面代碼加紅部分,一批數據(2,3,64,64),均值有3個

 m = nn.BatchNorm2d(3,affine=True) input = torch.randn(2, 3, 64, 64) output = m(input) print(m) print(output)

 2.numpy數據歸一化

1)最值歸一化: 把所有的數據映射到0-1之間

適用:有明顯邊界的情況

x為m行n列的數據

x[:, 0] = (x[:, 0] - np.min(x[:, 0]))/(np.max(x[:, 0]) - np.min(x[:,0])) # 對第0列(第一個特征)進行最值歸一化
            

 

 2)均值方差歸一化(Standardization):

把所有數據歸一到均值為0方差為1的數據中

既適用於數據沒有明顯的邊界,有可能存在極端數據值的情況。也適用於數據有明顯邊界的情況

 

 x為m行n列的數據,對第0列進行均值方差歸一化代碼如下

import numpy as np x[:, 0] = (x[:, 0] - np.mean(x[:, 0])) / np.std(x[:, 0])

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM