捷徑

torch.std_mean

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

計算由 dim 指定維度的標準差和平均值。dim 可以是單一維度、維度列表,或 None 以減少所有維度。

標準差 (σ\sigma) 的計算方式如下:

σ=1max(0, NδN)i=0N1(xixˉ)2\sigma = \sqrt{\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 會被擠壓 (squeeze) (請參閱 torch.squeeze()),導致輸出張量的維度少 1 (或 len(dim)) 個。

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

  • dim ( inttuple of ints, 選用) – 要縮減的維度。如果 None,則縮減所有維度。

關鍵字參數 (Keyword Arguments)
  • correction ( int ) –

    樣本大小和樣本自由度之間的差異。預設為 貝索校正 (Bessel’s correction)correction=1

    版本 2.0 更新: 先前此參數稱為 unbiased,且為布林值,其中 True 對應於 correction=1,而 False 則為 correction=0

  • keepdim ( bool ) – 輸出張量是否保留 dim

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

返回值

一個包含標準差和平均值的元組 (std, 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.std_mean(a, dim=0, keepdim=True)
(tensor([[1.2620, 1.0028, 1.0957, 0.6038]]),
 tensor([[ 0.0645,  0.4485,  0.8707, -0.0665]]))

文件

存取 PyTorch 的完整開發者文件

檢視文件

教學

取得初學者和進階開發者的深入教學

檢視教學

資源

尋找開發資源並獲得問題解答

檢視資源