jax.lax.bitcast_convert_type

jax.lax.bitcast_convert_type#

jax.lax.bitcast_convert_type(operand, new_dtype)[source]#

逐元素位转换。

包装 XLA 的 BitcastConvertType 运算符,它执行从一种类型到另一种类型的位转换。

输出形状取决于输入和输出数据类型的尺寸,并遵循以下逻辑

if new_dtype.itemsize == operand.dtype.itemsize:
  output_shape = operand.shape
if new_dtype.itemsize < operand.dtype.itemsize:
  output_shape = (*operand.shape, operand.dtype.itemsize // new_dtype.itemsize)
if new_dtype.itemsize > operand.dtype.itemsize:
  assert operand.shape[-1] * operand.dtype.itemsize == new_dtype.itemsize
  output_shape = operand.shape[:-1]
参数:
  • operand (ArrayLike) – 要转换的数组或标量值

  • new_dtype (DTypeLike) – 新类型。应为 NumPy 类型。

返回值:

一个形状为 output_shape(见上文)且类型为 new_dtype 的数组,由与 operand 相同的位构建。

返回类型:

数组