BitShift

BitShift - 11

版本

  • 名称: BitShift (GitHub)

  • : main

  • 起始版本: 11

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

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

摘要

按位移位运算符执行元素级操作。对于每个输入元素,如果属性“direction”为“RIGHT”,则此运算符将其二进制表示向右移动,从而有效减小输入值。如果属性“direction”为“LEFT”,则二进制表示的位向左移动,从而导致其实际值增加。输入X是要移位的张量,另一个输入Y指定移位量。例如,如果“direction”为“Right”,X为[1, 4],S为[1, 1],则对应的输出Z将为[0, 2]。如果“direction”为“LEFT”,X=[1, 2],S=[1, 2],则对应的输出Y将为[2, 8]。

由于此运算符支持Numpy风格的广播,因此X和Y的形状不一定相同。此运算符支持多向(即Numpy风格)广播;有关更多详细信息,请查看ONNX中的广播

属性

  • direction - 字符串(必填)

    位移动方向。它可以是“RIGHT”(右移)或“LEFT”(左移)。

输入

  • X (异构) - T

    第一个操作数,要移位的输入。

  • Y (异构) - T

    第二个操作数,移位量。

输出

  • Z(异构)- T

    输出张量

类型约束

  • T 在 (tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    将输入和输出类型限制为整数张量。