Sub¶
Sub - 14¶
版本¶
- 名称: Sub (GitHub) 
- 域: - main
- 起始版本: - 14
- 函数: - False
- 支持级别: - SupportType.COMMON
- 形状推断: - True
此版本的操作符自版本 14 起可用。
摘要¶
执行逐元素二元减法(支持 Numpy 风格的广播)。
此操作符支持多向(即 Numpy 风格)广播;有关更多详细信息,请查看 ONNX 中的广播。
(Opset 14 更改):扩展支持的类型以包括 uint8、int8、uint16 和 int16。
输入¶
- A (异构) - T - 第一个操作数。 
- B (异构) - T - 第二个操作数。 
输出¶
- C (异构) - T - 结果,与两个输入具有相同的元素类型 
类型约束¶
- T in ( - tensor(bfloat16),- tensor(double),- tensor(float),- tensor(float16),- tensor(int16),- tensor(int32),- tensor(int64),- tensor(int8),- tensor(uint16),- tensor(uint32),- tensor(uint64),- tensor(uint8))- 将输入和输出类型限制为所有数值张量。 
Sub - 13¶
版本¶
- 名称: Sub (GitHub) 
- 域: - main
- 起始版本: - 13
- 函数: - False
- 支持级别: - SupportType.COMMON
- 形状推断: - True
此版本的运算符自 版本 13 起可用。
摘要¶
执行逐元素二元减法(支持 Numpy 风格的广播)。
此操作符支持多向(即 Numpy 风格)广播;有关更多详细信息,请查看 ONNX 中的广播。
输入¶
- A (异构) - T - 第一个操作数。 
- B (异构) - T - 第二个操作数。 
输出¶
- C (异构) - T - 结果,与两个输入具有相同的元素类型 
类型约束¶
- T in ( - tensor(bfloat16),- tensor(double),- tensor(float),- tensor(float16),- tensor(int32),- tensor(int64),- tensor(uint32),- tensor(uint64))- 将输入和输出类型限制为高精度数值张量。 
Sub - 7¶
版本¶
- 名称: Sub (GitHub) 
- 域: - main
- 起始版本: - 7
- 函数: - False
- 支持级别: - SupportType.COMMON
- 形状推断: - True
此版本的操作符自版本 7 起可用。
摘要¶
执行逐元素二元减法(支持 Numpy 风格的广播)。
此操作符支持多向(即 Numpy 风格)广播;有关更多详细信息,请查看 ONNX 中的广播。
输入¶
- A (异构) - T - 第一个操作数。 
- B (异构) - T - 第二个操作数。 
输出¶
- C (异构) - T - 结果,与两个输入具有相同的元素类型 
类型约束¶
- T in ( - tensor(double),- tensor(float),- tensor(float16),- tensor(int32),- tensor(int64),- tensor(uint32),- tensor(uint64))- 将输入和输出类型限制为高精度数值张量。 
Sub - 6¶
版本¶
- 名称: Sub (GitHub) 
- 域: - main
- 起始版本: - 6
- 函数: - False
- 支持级别: - SupportType.COMMON
- 形状推断: - True
此版本的操作符自版本 6 起可用。
总结¶
执行逐元素二元减法(支持有限的广播)。
如果需要,右侧参数将被广播以匹配左侧参数的形状。当指定广播时,第二个张量可以具有元素大小为 1(包括标量张量以及秩等于或小于第一个张量的任何张量),或者其形状是第一个张量形状的连续子集。由“axis”参数指定了形状相等的起始点,如果未设置,则假定为后缀匹配。1 维扩展尚不支持。
例如,支持以下张量形状(广播=1)
shape(A) = (2, 3, 4, 5), shape(B) = (,), 即 B 是一个标量张量 shape(A) = (2, 3, 4, 5), shape(B) = (1, 1), 即 B 是一个包含 1 个元素的张量 shape(A) = (2, 3, 4, 5), shape(B) = (5,) shape(A) = (2, 3, 4, 5), shape(B) = (4, 5) shape(A) = (2, 3, 4, 5), shape(B) = (3, 4), axis=1 shape(A) = (2, 3, 4, 5), shape(B) = (2), axis=0
需要传递属性 broadcast=1 以启用广播。
属性¶
- 轴 - INT : - 如果设置,定义广播维度。详见文档。 
- broadcast - INT(默认为 - '0')- 传入 1 以启用广播 
输入¶
- A (异构) - T - 第一个操作数,应与第二个操作数共享类型。 
- B (异构) - T - 第二个操作数。如果启用广播,其大小可以小于 A。如果禁用广播,其大小应相同。 
输出¶
- C (异构) - T - 结果,具有与 A 相同的维度和类型 
类型约束¶
- T in ( - tensor(double),- tensor(float),- tensor(float16),- tensor(int32),- tensor(int64),- tensor(uint32),- tensor(uint64))- 将输入和输出类型限制为高精度数值张量。 
Sub - 1¶
版本¶
- 名称: Sub (GitHub) 
- 域: - main
- 起始版本: - 1
- 函数: - False
- 支持级别: - SupportType.COMMON
- 形状推断: - False
此版本的运算符自 版本 1 起可用。
总结¶
执行逐元素二元减法(支持有限的广播)。
如果需要,右侧参数将被广播以匹配左侧参数的形状。当指定广播时,第二个张量可以具有元素大小为 1(包括标量张量以及秩等于或小于第一个张量的任何张量),或者其形状是第一个张量形状的连续子集。由“axis”参数指定了形状相等的起始点,如果未设置,则假定为后缀匹配。1 维扩展尚不支持。
例如,支持以下张量形状(广播=1)
shape(A) = (2, 3, 4, 5), shape(B) = (,), 即 B 是一个标量张量 shape(A) = (2, 3, 4, 5), shape(B) = (1, 1), 即 B 是一个包含 1 个元素的张量 shape(A) = (2, 3, 4, 5), shape(B) = (5,) shape(A) = (2, 3, 4, 5), shape(B) = (4, 5) shape(A) = (2, 3, 4, 5), shape(B) = (3, 4), axis=1 shape(A) = (2, 3, 4, 5), shape(B) = (2), axis=0
需要传递属性 broadcast=1 以启用广播。
属性¶
- 轴 - INT : - 如果设置,定义广播维度。详见文档。 
- broadcast - INT(默认为 - '0')- 传入 1 以启用广播 
- consumed_inputs - 整型 : - 传统优化属性。 
输入¶
- A (异构) - T - 第一个操作数,应与第二个操作数共享类型。 
- B (异构) - T - 第二个操作数。如果启用广播,其大小可以小于 A。如果禁用广播,其大小应相同。 
输出¶
- C (异构) - T - 结果,具有与 A 相同的维度和类型 
类型约束¶
- T in ( - tensor(double),- tensor(float),- tensor(float16))- 将输入和输出类型限制为浮点张量。