torch.diff¶
- torch.diff(input, n=1, dim=-1, prepend=None, append=None) → Tensor ¶
计算给定维度上的第 n 个前向差分。
首阶差分由 out[i] = input[i + 1] - input[i] 给出。高阶差分通过递归使用
torch.diff()
来计算。- 参数:
input (张量) – 要计算差分的张量
n (int, 可选) – 递归计算差分的次数
dim (int, 可选) – 计算差分的维度。默认为最后一个维度。
prepend (Tensor, 可选) – 在计算差分之前,沿
input
添加或附加到dim
的值。它们的维度必须与输入相同,形状必须与输入的形状相同,除了在dim
上。append (Tensor, 可选) – 在计算差分之前,沿
input
添加或附加到dim
的值。它们的维度必须与输入相同,形状必须与输入的形状相同,除了在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]])