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 具有相同的维度,并且形状必须与 input 的形状匹配,除了dim
维度。append (Tensor, 可选)– 在计算差分之前,沿
dim
维度添加到input
的值,或者从input
预置或附加的值。它们必须与 input 具有相同的维度,并且形状必须与 input 的形状匹配,除了dim
维度。
- 关键字参数
out (Tensor, optional) – 输出张量。
示例
>>> 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]])