Add

Add - 14

版本

  • 名称: Add (GitHub)

  • : main

  • 起始版本: 14

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

此版本的操作符自版本 14 起可用。

摘要

执行逐元素的二元加法(支持 Numpy 风格的广播)。

此操作符支持多向(即 Numpy 风格)广播;有关更多详细信息,请查看 ONNX 中的广播

(Opset 14 更改):扩展支持的类型以包括 uint8、int8、uint16 和 int16。

输入

  • A (异构) - T

    第一个操作数。

  • B (异构) - T

    第二个操作数。

输出

  • C (异构) - T

    结果,与两个输入具有相同的元素类型

类型约束

  • T 在 ( tensor(bfloat16), tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    将输入和输出类型限制为所有数值张量。

Add - 13

版本

  • 名称: Add (GitHub)

  • : main

  • 起始版本: 13

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

此版本的运算符自 版本 13 起可用。

摘要

执行逐元素的二元加法(支持 Numpy 风格的广播)。

此操作符支持多向(即 Numpy 风格)广播;有关更多详细信息,请查看 ONNX 中的广播

输入

  • A (异构) - T

    第一个操作数。

  • B (异构) - T

    第二个操作数。

输出

  • C (异构) - T

    结果,与两个输入具有相同的元素类型

类型约束

  • T 在 ( tensor(bfloat16), tensor(double), tensor(float), tensor(float16), tensor(int32), tensor(int64), tensor(uint32), tensor(uint64) )

    将输入和输出类型限制为高精度数值张量。

Add - 7

版本

  • 名称: Add (GitHub)

  • : main

  • 起始版本: 7

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

此版本的操作符自版本 7 起可用。

摘要

执行逐元素的二元加法(支持 Numpy 风格的广播)。

此操作符支持多向(即 Numpy 风格)广播;有关更多详细信息,请查看 ONNX 中的广播

输入

  • A (异构) - T

    第一个操作数。

  • B (异构) - T

    第二个操作数。

输出

  • C (异构) - T

    结果,与两个输入具有相同的元素类型

类型约束

  • T 在 ( tensor(double), tensor(float), tensor(float16), tensor(int32), tensor(int64), tensor(uint32), tensor(uint64) )

    将输入和输出类型限制为高精度数值张量。

Add - 6

版本

  • 名称: Add (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 在 ( tensor(double), tensor(float), tensor(float16), tensor(int32), tensor(int64), tensor(uint32), tensor(uint64) )

    将输入和输出类型限制为高精度数值张量。

Add - 1

版本

  • 名称: Add (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 在 ( tensor(double), tensor(float), tensor(float16) )

    将输入和输出类型限制为浮点张量。