张量的按位运算



我希望使用按位操作降低TensorFlow张量的精度。例如,对于NumPy数组,可以通过以下命令实现:

a = np.array(5) # =[5]
b = np.right_shift(a, 1)  # =[2]
c = np.left_shift(b, 1)  # =[4]

有办法做到这一点与TensorFlow?

根据Tensorflow网站上的文档:

https://www.tensorflow.org/api_docs/python/tf/bitwise

tf.bitwise.left_shift(x, y, name=None)

x张量。必须是以下类型之一:int8, int16, int32,Int64, uint8, uint16, uint32, uint64.

y张量。必须与x具有相同的类型。

<<p>名称/strong>:操作的名称(可选)。

下面是一个例子:

from tensorflow.python.ops import bitwise_ops
import tensorflow as tf
dtype = tf.int8
lhs = tf.constant([5], dtype=dtype)
rhs = tf.constant([1], dtype=dtype)
right_shift_result = bitwise_ops.right_shift(lhs, rhs)
tf.print(right_shift_result)
left_shift_result = bitwise_ops.left_shift(right_shift_result, rhs)
tf.print(left_shift_result)

:

[2]
[4]

相关内容

  • 没有找到相关文章

最新更新