torch.remainder¶
- torch.remainder(input, other, *, out=None) Tensor ¶
计算 Python 的逐元素取模运算。结果与除数
other
的符号相同,其绝对值小于other
。也可以用
torch.div()
来定义。torch.remainder(a, b) == a - a.div(b, rounding_mode="floor") * b
支持广播到常见形状、类型提升以及整数和浮点数输入。
注意
复杂输入不受支持。在某些情况下,使用复数进行模运算在数学上是不可能的。请参阅
torch.fmod()
了解如何处理除以零的情况。参见
torch.fmod()
实现了 C++的 std::fmod。这个函数是通过向零取整的方式来定义的。- 参数:
输入(张量或标量)- 被除数
其他(张量或标量)- 除数
- 关键字参数:
输出(张量,可选)- 输出张量。
示例:
>>> torch.remainder(torch.tensor([-3., -2, -1, 1, 2, 3]), 2) tensor([ 1., 0., 1., 1., 0., 1.]) >>> torch.remainder(torch.tensor([1, 2, 3, 4, 5]), -1.5) tensor([ -0.5000, -1.0000, 0.0000, -0.5000, -1.0000 ])