GroupNormalization
類別keras.layers.GroupNormalization(
groups=32,
axis=-1,
epsilon=0.001,
center=True,
scale=True,
beta_initializer="zeros",
gamma_initializer="ones",
beta_regularizer=None,
gamma_regularizer=None,
beta_constraint=None,
gamma_constraint=None,
**kwargs
)
群組正規化層。
群組正規化將通道劃分為群組,並在每個群組內計算平均值和變異數以進行正規化。 經驗上,如果學習率隨著批次大小線性調整,則其準確性在各種小批次大小中比批次正規化更穩定。
與層正規化的關係:如果群組數量設定為 1,則此操作幾乎與層正規化相同(有關詳細資訊,請參閱層正規化文件)。
與實例正規化的關係:如果群組數量設定為輸入維度(群組數量等於通道數量),則此操作與實例正規化相同。 您可以透過 groups=-1
來實現此目的。
參數
[1, N]
內的整數,其中 N 是輸入維度。 輸入維度必須可被群組數量整除。 預設值為 32。-1
。True
,則將 beta
偏移量添加到正規化張量。 如果為 False
,則忽略 beta
。 預設值為 True
。True
,則乘以 gamma
。 如果為 False
,則不使用 gamma
。 當下一層是線性層(例如 relu
)時,可以停用此功能,因為縮放將由下一層完成。 預設值為 True
。input_shape
(整數元組,不包含樣本軸)。 # 輸出形狀 與輸入形狀相同。name
和 dtype
)。參考文獻