評價此頁

PairwiseDistance#

class torch.nn.PairwiseDistance(p=2.0, eps=1e-06, keepdim=False)[source]#

計算輸入向量之間的成對距離,或輸入矩陣列之間的成對距離。

距離是使用 p-範數計算的,並加上常數 eps 以避免除以零,如果 p 為負值,即:

dist(x,y)=xy+ϵep,\mathrm{dist}\left(x, y\right) = \left\Vert x-y + \epsilon e \right\Vert_p,

其中 ee 是全1向量,p-範數定義如下:

xp=(i=1nxip)1/p.\Vert x \Vert _p = \left( \sum_{i=1}^n \vert x_i \vert ^ p \right) ^ {1/p}.
引數
  • p (實數, 可選) – 範數次數。可以是負數。預設值: 2

  • eps (浮點數, 可選) – 用於避免除以零的小值。預設值: 1e-6

  • keepdim (布林值, 可選) – 確定是否保留向量維度。預設值: False

形狀
  • 輸入1: (N,D)(N, D)(D)(D),其中 N = 批次維度D = 向量維度

  • 輸入2: (N,D)(N, D)(D)(D),形狀與輸入1相同

  • 輸出: (N)(N)()(),具體取決於輸入維度。如果 keepdimTrue,則輸出為 (N,1)(N, 1)(1)(1),具體取決於輸入維度。

示例

>>> pdist = nn.PairwiseDistance(p=2)
>>> input1 = torch.randn(100, 128)
>>> input2 = torch.randn(100, 128)
>>> output = pdist(input1, input2)
forward(x1, x2)[source]#

執行前向傳播。

返回型別

張量