官网链接
函数作用
torch.diff(input, n=1, dim=- 1, prepend=None, append=None) → Tensor
沿着给定维度计算输入Tensor的n阶前向差分。
一阶差分由 out[i] = input[i + 1] - input[i] 给出。 通过递归使用 torch.diff() 计算高阶差分。
参数说明
input(Tensor)
--计算差分的张量
n(int,可选的)
--递归计算差分的阶数
dim(int,可选的)
--计算差分的维度,默认是最后一个维度。
prepend(Tensor,可选的)
--在计算差分之前,沿 dim 将值添加到 input 或附加到 input。它们的尺寸必须与输入的尺寸相同,并且它们的形状必须与输入的形状匹配,但 dim 除外。
append(Tensor,可选的)
--在计算差分之前,沿 dim 将值添加到 input 或附加到 input。它们的尺寸必须与输入的尺寸相同,并且它们的形状必须与输入的形状匹配,但 dim 除外。
用法举例
>>> 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]])