torch.lerp

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

根据标量或张量 weight,对两个张量 start(由 input 给出)和 end 进行线性插值,并返回结果张量 out

$\text{out}_i = \text{start}_i + \text{weight}_i \times (\text{end}_i - \text{start}_i)$

startend 的形状必须是可广播的。如果 weight 是一个张量,则 weightstartend 的形状也必须是可广播的

参数
  • 输入 (Tensor) – 起始点的张量

  • end (Tensor) – 包含结束点的张量

  • weight (floattensor) – 用于插值公式的权重

关键字参数

out (Tensor, 可选) – 指定输出张量。

示例:

>>> 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])
本页目录