捷徑

BatchRenorm1d

class torchrl.modules.BatchRenorm1d(num_features: int, *, momentum: float = 0.01, eps: float = 1e-05, max_r: float = 3.0, max_d: float = 5.0, warmup_steps: int = 10000, smooth: bool = False)[source]

BatchRenorm 模組 (https://arxiv.org/abs/1702.03275)。

程式碼改編自 https://github.com/google-research/corenet

BatchRenorm 是標準 BatchNorm 的增強版本。與 BatchNorm 不同,它在初始預熱階段後,利用運行統計資料來正規化批次。此方法減少了在延長訓練期間可能發生的「離群值」批次的影響,使 BatchRenorm 對於長時間訓練更穩健。

在預熱階段,BatchRenorm 的功能與 BatchNorm 層完全相同。

參數:

num_features (int) – 輸入張量中的特徵數量。

關鍵字參數:
  • momentum (float, optional) – 用於計算運行平均值和變異數的動量因子。預設為 0.01

  • eps (float, optional) – 加到變異數的小數值,避免除以零。預設值為 1e-5

  • max_r (float, optional) – 縮放因子 r 的最大值。預設值為 3.0

  • max_d (float, optional) – 偏差因子 d 的最大值。預設值為 5.0

  • warmup_steps (int, optional) – 用於 running mean 和 variance 的 warm-up 步驟數。預設值為 10000

  • smooth (bool, optional) – 如果 True,行為會從常規的 batch-norm (當 iter=0 時) 平滑轉換到 batch-renorm (當 iter=warmup_steps 時)。 否則,行為將在 iter=warmup_steps 時從 batch-norm 轉換為 batch-renorm。預設值為 False

forward(x: Tensor) Tensor[source]

定義每次呼叫時執行的計算。

應由所有子類別覆寫。

Note

雖然 forward pass 的配方需要在這個函數中定義,但之後應該呼叫 Module 實例而不是這個函數,因為前者會處理已註冊的 hooks,而後者會靜默地忽略它們。

文件

Access comprehensive developer documentation for PyTorch

View Docs

Tutorials

Get in-depth tutorials for beginners and advanced developers

View Tutorials

Resources

Find development resources and get your questions answered

View Resources