torch.diff

torch.diff(input, n=1, dim=-1, prepend=None, append=None) → Tensor

Computes the n-th forward difference along the given dimension.

The first-order differences are given by out[i] = input[i + 1] - input[i]. Higher-order differences are calculated by using torch.diff() recursively.

Note

Only n = 1 is currently supported

Parameters
  • input (Tensor) – the tensor to compute the differences on
  • n (int, optional) – the number of times to recursively compute the difference
  • dim (int, optional) – the dimension to compute the difference along. Default is the last dimension.
  • append (prepend,) – values to prepend or append to input along dim before computing the difference. Their dimensions must be equivalent to that of input, and their shapes must match input’s shape except on dim.
Keyword Arguments

out (Tensor, optional) – the output tensor.

Example:

>>> a = torch.tensor([1, 3, 2])
>>> torch.diff(a)
tensor([ 2, -1])
>>> b = torch.tensor([4, 5])
>>> torch.diff(a, append=b)
tensor([ 2, -1,  2,  1])
>>> c = torch.tensor([[1, 2, 3], [3, 4, 5]])
>>> torch.diff(c, dim=0)
tensor([[2, 2, 2]])
>>> torch.diff(c, dim=1)
tensor([[1, 1],
        [1, 1]])

© 2019 Torch Contributors
Licensed under the 3-clause BSD License.
https://pytorch.org/docs/1.8.0/generated/torch.diff.html