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 (Tensor) – 要在其上计算差分的张量
n (int, 可选) – 递归计算差分的次数
dim (int, 可选) – 计算差分的维度。默认为最后一个维度。
prepend (Tensor, 可选) – 在计算差分之前,沿
dim
预先附加或追加到input
的值。它们的维度必须等效于 input 的维度,并且它们的形状必须与 input 的形状匹配,除了dim
。append (Tensor, 可选) – 在计算差分之前,沿
dim
预先附加或追加到input
的值。它们的维度必须等效于 input 的维度,并且它们的形状必须与 input 的形状匹配,除了dim
。
- 关键字参数
out (Tensor, 可选) – 输出张量。
示例
>>> 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]])