快捷方式

torch.var_mean

torch.var_mean(input, dim=None, *, correction=1, keepdim=False, out=None)

計算在 dim 指定維度上的方差和均值。 dim 可以是單個維度、維度列表,或者為 None 表示對所有維度進行計算。

方差 (σ2\sigma^2) 計算公式如下:

σ2=1max(0, NδN)i=0N1(xixˉ)2\sigma^2 = \frac{1}{\max(0,~N - \delta N)}\sum_{i=0}^{N-1}(x_i-\bar{x})^2

其中 xx 是樣本元素集合,xˉ\bar{x} 是樣本均值,NN 是樣本數量, δN\delta Ncorrection

如果 keepdimTrue,則輸出張量的大小與 input 相同,但在 dim 指定的維度上大小為 1。否則,dim 會被壓縮(參見 torch.squeeze()),導致輸出張量的維度減少 1 個(或 len(dim) 個)。

引數
  • input (Tensor) – 輸入張量。

  • dim (intinttuple, 可選) – 要進行約減的維度。如果為 None,則約減所有維度。

關鍵字引數
  • correction (int) –

    樣本大小與樣本自由度之間的差值。預設為 Bessel 校正,即 correction=1

    版本 2.0 中有變化: 以前此引數名為 unbiased,是一個布林值,其中 True 對應 correction=1False 對應 correction=0

  • keepdim (bool) – 輸出張量是否保留 dim 指定的維度。

  • out (Tensor, 可選) – 輸出張量。

返回值

包含方差和均值的元組 (var, mean)。

示例

>>> a = torch.tensor(
...     [[ 0.2035,  1.2959,  1.8101, -0.4644],
...      [ 1.5027, -0.3270,  0.5905,  0.6538],
...      [-1.5745,  1.3330, -0.5596, -0.6548],
...      [ 0.1264, -0.5080,  1.6420,  0.1992]])
>>> torch.var_mean(a, dim=0, keepdim=True)
(tensor([[1.5926, 1.0056, 1.2005, 0.3646]]),
 tensor([[ 0.0645,  0.4485,  0.8707, -0.0665]]))

文件

訪問 PyTorch 全面開發者文件

檢視文件

教程

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

檢視教程

資源

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

檢視資源