捷徑

torch.histogram

torch.histogram(input, bins, *, range=None, weight=None, density=False, out=None)

計算張量中數值的直方圖。

bins 可以是整數或一維張量。

如果 bins 是一個整數,它指定了等寬區間的數量。預設情況下,區間的下限和上限由輸入張量的最小值和最大值決定。range 參數可用於指定區間的範圍。

如果 bins 是一個一維張量,它指定了區間邊緣的序列,包括最右邊的邊緣。它應至少包含 2 個元素,並且其元素應為遞增的。

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

  • bins – int 或 1D Tensor。如果是 int,則定義等寬區間的數量。如果是張量,則定義區間邊緣的序列,包括最右邊的邊緣。

關鍵字參數
  • range (tuple of float) – 定義區間的範圍。

  • weight (Tensor) – 如果提供,weight 應該具有與 input 相同的形狀。input 中的每個值都會根據其相關的權重對其區間的結果做出貢獻。

  • density (bool) – 如果為 False,則結果將包含每個區間中的計數(或總權重)。如果為 True,則結果是區間上機率密度函數的值,並進行歸一化,使區間範圍內的積分為 1。

  • out (Tensor, optional) – 輸出張量。(tuple, optional): 兩個輸出張量的結果元組 (hist, bin_edges)。

返回值

包含直方圖值的 1D 張量。 bin_edges(Tensor): 包含直方圖區間邊緣的 1D 張量。

返回類型

hist (Tensor)

範例

>>> torch.histogram(torch.tensor([1., 2, 1]), bins=4, range=(0., 3.), weight=torch.tensor([1., 2., 4.]))
(tensor([ 0.,  5.,  2.,  0.]), tensor([0., 0.75, 1.5, 2.25, 3.]))
>>> torch.histogram(torch.tensor([1., 2, 1]), bins=4, range=(0., 3.), weight=torch.tensor([1., 2., 4.]), density=True)
(tensor([ 0.,  0.9524,  0.3810,  0.]), tensor([0., 0.75, 1.5, 2.25, 3.]))

文件

獲取 PyTorch 的全面開發者文件

查看文件

教學

獲取針對初學者和高級開發者的深入教學

查看教學

資源

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

查看資源