torch.lerp
torch.lerp(input, end, weight, *, out=None)
Does a linear interpolation of two tensors "start" (given by
   "input") and "end" based on a scalar or tensor "weight" and returns
   the resulting "out" tensor.
  \text{out}_i = \text{start}_i + \text{weight}_i \times
  (\text{end}_i - \text{start}_i)

The shapes of "start" and "end" must be broadcastable. If "weight"
   is a tensor, then the shapes of "weight", "start", and "end" must
   be broadcastable.
Parameters:
      * input (Tensor) -- the tensor with the starting points
  * **end** (*Tensor*) -- the tensor with the ending points

  * **weight** (*float** or **tensor*) -- the weight for the
    interpolation formula

Keyword Arguments:
      out (Tensor, optional) -- the output tensor.
Example:
  >>> start = torch.arange(1., 5.)
  >>> end = torch.empty(4).fill_(10)
  >>> start
  tensor([ 1.,  2.,  3.,  4.])
  >>> end
  tensor([ 10.,  10.,  10.,  10.])
