評價此頁

torch.lerp#

torch.lerp(input, end, weight, *, out=None)#

對兩個張量 start(由 input 指定)和 end 進行線性插值,插值基於一個標量或張量 weight,並返回結果 out 張量。

outi=starti+weighti×(endistarti)\text{out}_i = \text{start}_i + \text{weight}_i \times (\text{end}_i - \text{start}_i)

startend 的形狀必須是 可廣播的。如果 weight 是一個張量,那麼 weightstartend 的形狀必須是 可廣播的

引數
  • input (Tensor) – 包含起始點的張量

  • end (Tensor) – 包含結束點的張量

  • weight (floattensor) – 插值公式的權重

關鍵字引數

out (Tensor, optional) – 輸出張量。

示例

>>> start = torch.arange(1., 5.)
>>> end = torch.empty(4).fill_(10)
>>> start
tensor([ 1.,  2.,  3.,  4.])
>>> end
tensor([ 10.,  10.,  10.,  10.])
>>> torch.lerp(start, end, 0.5)
tensor([ 5.5000,  6.0000,  6.5000,  7.0000])
>>> torch.lerp(start, end, torch.full_like(start, 0.5))
tensor([ 5.5000,  6.0000,  6.5000,  7.0000])