快捷方式

RMSNorm

torch.nn.RMSNorm(normalized_shape, eps=None, elementwise_affine=True, device=None, dtype=None)[原始檔][原始檔]

在輸入的小批次資料上應用均方根層歸一化 (Root Mean Square Layer Normalization)。

此層實現了論文 Root Mean Square Layer Normalization 中描述的操作。

yi=xiRMS(x)γi,whereRMS(x)=ϵ+1ni=1nxi2y_i = \frac{x_i}{\mathrm{RMS}(x)} * \gamma_i, \quad \text{where} \quad \text{RMS}(x) = \sqrt{\epsilon + \frac{1}{n} \sum_{i=1}^{n} x_i^2}

均方根(RMS)是在最後 D 個維度上計算的,其中 Dnormalized_shape 的維度。例如,如果 normalized_shape(3, 5)(一個二維形狀),則均方根是在輸入的最後 2 個維度上計算的。

引數
  • normalized_shape (intlisttorch.Size) –

    輸入形狀,對應預期的輸入尺寸

    [×normalized_shape[0]×normalized_shape[1]××normalized_shape[1]][* \times \text{normalized\_shape}[0] \times \text{normalized\_shape}[1] \times \ldots \times \text{normalized\_shape}[-1]]

    如果使用單個整數,則將其視為單元素列表,此模組將對最後一個維度進行歸一化,該維度預計具有該特定尺寸。

  • eps (可選[float]) – 新增到分母上的值,用於數值穩定性。預設值:torch.finfo(x.dtype).eps()

  • elementwise_affine (bool) – 一個布林值,當設定為 True 時,此模組具有可學習的逐元素仿射引數,初始化為全一(用於權重)。預設值:True

形狀
  • 輸入:(N,)(N, *)

  • 輸出:(N,)(N, *) (與輸入形狀相同)

示例

>>> rms_norm = nn.RMSNorm([2, 3])
>>> input = torch.randn(2, 2, 3)
>>> rms_norm(input)
extra_repr()[原始檔][原始檔]

關於此模組的額外資訊。

返回型別

str

forward(x)[原始檔][原始檔]

執行前向傳播。

返回型別

Tensor

reset_parameters()[原始檔][原始檔]

根據在 __init__ 中使用的初始化方式重置引數。

文件

查閱 PyTorch 的完整開發者文件

檢視文件

教程

獲取面向初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源