megengine.functional.sub#

sub(x, y)[源代码]#

逐元素减法:

计算输入张量 \(x\) 中每一个元素 \(x_i\) 和输入张量 \(y\) 中每一个元素 \(y_i\) 的差值. \(x_i - y_i\) 的结果必须跟 \(x_i + (-y_i)\) 相等,且与张量加法遵守相同的浮点规则。(参见 add )。

参数:
  • x (Tensor) – 第一个输入张量。应该有一个数值数据类型。

  • y (Tensor) – 第二个输入 tensor。必须与 \(x\) 兼容 (请查看 广播机制与规则 )。应具有数值数据类型。

返回类型:

Tensor

返回:

一个包含逐元素差值的 tensor。返回的 tensor 的数据类型必须由 类型提升规则 确定。

备注

- 运算符可以作为 sub 的简写应用于 tensor 运算中。

实际案例

>>> F.sub(1.0, 4.0)
Tensor(-3.0, device=xpux:0)

逐元素减法:

>>> x = Tensor([[1, 2, 3], [4, 5, 6]])
>>> y = Tensor([[1, 1, 1], [2, 2, 2]])
>>> F.sub(x, y)
Tensor([[0 1 2]
 [2 3 4]], dtype=int32, device=xpux:0)

广播:

>>> x = Tensor([[1, 2, 3], [4, 5, 6]])
>>> F.sub(x, 1)
Tensor([[0 1 2]
 [3 4 5]], dtype=int32, device=xpux:0)