转换¶
转换 - 23¶
版本¶
名称: 转换 (GitHub)
域:
main
自版本:
23
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
此版本的算子自版本 23起可用。
摘要¶
该算子将给定输入张量中的元素转换为“to”参数指定的类型,并返回一个以转换类型表示的相同大小的输出张量。“to”参数必须是 TensorProto 消息的“DataType”枚举字段中指定的类型之一。
支持将普通 (例如,“3.14”和“1000”) 和科学数值表示 (例如,“1e-5”和“1E8”) 中的字符串张量转换为浮点类型。例如,将字符串“100.5”转换为整数可能会产生结果 100。某些字符串文字保留用于特殊浮点值;“+INF” (和“INF”)、“-INF”和“NaN”分别表示正无穷大、负无穷大和非数值。任何可以与“+INF”进行不区分大小写匹配的字符串都会映射为正无穷大。同样,此不区分大小写规则应用于“INF”和“NaN”。将数字张量转换为字符串张量时,将使用普通浮点表示 (例如,“314.15926”)。转换非数字文字字符串 (例如,“Hello World!”) 是未定义的行为。将表示浮点运算值的字符串 (例如,“2.718”) 转换为 INT 的情况是未定义的行为。
始终允许从数字类型到任何数字类型的转换。用户必须注意由两种类型之间的范围差异引起的精度损失和值变化。例如,64 位浮点数 3.1415926459 可能会舍入为 32 位浮点数 3.141592。同样,将整数 36 转换为布尔值可能会产生 1,因为我们截断了无法存储在目标类型中的位。
更详细地说,如果目标类型不是 float 8 类型,则数字类型之间的转换应遵循以下规则。
从浮点类型转换为
浮点类型:超出范围 (OOR) 时为 +/- 无穷大。
定点类型:超出范围 (OOR) 时未定义。
布尔类型:+/- 0.0 为 False;其他所有情况为 True。
从定点类型转换为
浮点类型:超出范围 (OOR) 时为 +/- 无穷大。(uint 情况下为 + 无穷大)
定点类型:超出范围 (OOR) 时,丢弃高位并重新解释 (对于有符号类型,相对于二进制补码表示)。例如,200 (int16) -> -56 (int8)。
布尔类型:零为 False;非零为 True。
从布尔类型转换为
浮点类型:
{1.0, 0.0}
。定点类型:
{1, 0}
。布尔类型:无变化。
Float 8 类型是为了加速深度模型的训练而引入的。默认情况下,浮点数 *x* 的转换遵循以下规则。[x]
表示四舍五入到目标尾数宽度的值。
x |
E4M3FN |
E4M3FNUZ |
E5M2 |
E5M2FNUZ |
---|---|---|---|---|
0 |
0 |
0 |
0 |
0 |
-0 |
-0 |
0 |
-0 |
0 |
NaN |
NaN |
NaN |
NaN |
NaN |
+/- 无穷大 |
+/- FLT_MAX |
NaN |
FLT_MAX |
NaN |
[x] > FLT_MAX |
FLT_MAX |
FLT_MAX |
FLT_MAX |
FLT_MAX |
[x] < -FLT_MAX |
-FLT_MAX |
-FLT_MAX |
-FLT_MAX |
-FLT_MAX |
其他情况 |
RNE |
RNE |
RNE |
RNE |
如果参数“saturate”设置为 False,则行为会发生改变。然后规则变为
x |
E4M3FN |
E4M3FNUZ |
E5M2 |
E5M2FNUZ |
---|---|---|---|---|
0 |
0 |
0 |
0 |
0 |
-0 |
-0 |
0 |
-0 |
0 |
NaN |
NaN |
NaN |
NaN |
NaN |
+/- 无穷大 |
NaN |
NaN |
+/- 无穷大 |
NaN |
[x] > FLT_MAX |
NaN |
NaN |
无穷大 |
NaN |
[x] < -FLT_MAX |
NaN |
NaN |
-无穷大 |
NaN |
其他情况 |
RNE |
RNE |
RNE |
RNE |
属性¶
saturate - INT (默认值为
'1'
)该参数定义了当输入值超出目标类型范围时转换的行为。它仅适用于 float 8 转换 (float8e4m3fn、float8e4m3fnuz、float8e5m2、float8e5m2fnuz)。默认情况下为真。算子说明中插入的两个表中详细描述了所有情况。
to - INT (必需)
输入张量元素转换到的数据类型。严格来说必须是 TensorProto 中 DataType 枚举中的类型之一
输入¶
input (异构) - T1
要转换的输入张量。
输出¶
output (异构) - T2
与输入具有相同形状的输出张量,类型由“to”参数指定
类型约束¶
T1 in (
tensor(bfloat16)
,tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(float4e2m1)
,tensor(float8e4m3fn)
,tensor(float8e4m3fnuz)
,tensor(float8e5m2)
,tensor(float8e5m2fnuz)
,tensor(int16)
,tensor(int32)
,tensor(int4)
,tensor(int64)
,tensor(int8)
,tensor(string)
,tensor(uint16)
,tensor(uint32)
,tensor(uint4)
,tensor(uint64)
,tensor(uint8)
)约束输入类型。不支持从复数进行转换。
T2 in (
tensor(bfloat16)
,tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(float4e2m1)
,tensor(float8e4m3fn)
,tensor(float8e4m3fnuz)
,tensor(float8e5m2)
,tensor(float8e5m2fnuz)
,tensor(int16)
,tensor(int32)
,tensor(int4)
,tensor(int64)
,tensor(int8)
,tensor(string)
,tensor(uint16)
,tensor(uint32)
,tensor(uint4)
,tensor(uint64)
,tensor(uint8)
)约束输出类型。不支持转换为复数。
转换 - 21¶
版本¶
名称: 转换 (GitHub)
域:
main
自版本:
21
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
此版本的算子自版本 21起可用。
摘要¶
该算子将给定输入张量中的元素转换为“to”参数指定的类型,并返回一个以转换类型表示的相同大小的输出张量。“to”参数必须是 TensorProto 消息的“DataType”枚举字段中指定的类型之一。
支持将普通 (例如,“3.14”和“1000”) 和科学数值表示 (例如,“1e-5”和“1E8”) 中的字符串张量转换为浮点类型。例如,将字符串“100.5”转换为整数可能会产生结果 100。某些字符串文字保留用于特殊浮点值;“+INF” (和“INF”)、“-INF”和“NaN”分别表示正无穷大、负无穷大和非数值。任何可以与“+INF”进行不区分大小写匹配的字符串都会映射为正无穷大。同样,此不区分大小写规则应用于“INF”和“NaN”。将数字张量转换为字符串张量时,将使用普通浮点表示 (例如,“314.15926”)。转换非数字文字字符串 (例如,“Hello World!”) 是未定义的行为。将表示浮点运算值的字符串 (例如,“2.718”) 转换为 INT 的情况是未定义的行为。
始终允许从数字类型到任何数字类型的转换。用户必须注意由两种类型之间的范围差异引起的精度损失和值变化。例如,64 位浮点数 3.1415926459 可能会舍入为 32 位浮点数 3.141592。同样,将整数 36 转换为布尔值可能会产生 1,因为我们截断了无法存储在目标类型中的位。
更详细地说,如果目标类型不是 float 8 类型,则数字类型之间的转换应遵循以下规则。
从浮点类型转换为
浮点类型:超出范围 (OOR) 时为 +/- 无穷大。
定点类型:超出范围 (OOR) 时未定义。
布尔类型:+/- 0.0 为 False;其他所有情况为 True。
从定点类型转换为
浮点类型:超出范围 (OOR) 时为 +/- 无穷大。(uint 情况下为 + 无穷大)
定点类型:超出范围 (OOR) 时,丢弃高位并重新解释 (对于有符号类型,相对于二进制补码表示)。例如,200 (int16) -> -56 (int8)。
布尔类型:零为 False;非零为 True。
从布尔类型转换为
浮点类型:
{1.0, 0.0}
。定点类型:
{1, 0}
。布尔类型:无变化。
Float 8 类型是为了加速深度模型的训练而引入的。默认情况下,浮点数 *x* 的转换遵循以下规则。[x]
表示四舍五入到目标尾数宽度的值。
x |
E4M3FN |
E4M3FNUZ |
E5M2 |
E5M2FNUZ |
---|---|---|---|---|
0 |
0 |
0 |
0 |
0 |
-0 |
-0 |
0 |
-0 |
0 |
NaN |
NaN |
NaN |
NaN |
NaN |
+/- 无穷大 |
+/- FLT_MAX |
NaN |
FLT_MAX |
NaN |
[x] > FLT_MAX |
FLT_MAX |
FLT_MAX |
FLT_MAX |
FLT_MAX |
[x] < -FLT_MAX |
-FLT_MAX |
-FLT_MAX |
-FLT_MAX |
-FLT_MAX |
其他情况 |
RNE |
RNE |
RNE |
RNE |
如果参数“saturate”设置为 False,则行为会发生改变。然后规则变为
x |
E4M3FN |
E4M3FNUZ |
E5M2 |
E5M2FNUZ |
---|---|---|---|---|
0 |
0 |
0 |
0 |
0 |
-0 |
-0 |
0 |
-0 |
0 |
NaN |
NaN |
NaN |
NaN |
NaN |
+/- 无穷大 |
NaN |
NaN |
+/- 无穷大 |
NaN |
[x] > FLT_MAX |
NaN |
NaN |
无穷大 |
NaN |
[x] < -FLT_MAX |
NaN |
NaN |
-无穷大 |
NaN |
其他情况 |
RNE |
RNE |
RNE |
RNE |
属性¶
saturate - INT (默认值为
'1'
)该参数定义了当输入值超出目标类型范围时转换的行为。它仅适用于 float 8 转换 (float8e4m3fn、float8e4m3fnuz、float8e5m2、float8e5m2fnuz)。默认情况下为真。算子说明中插入的两个表中详细描述了所有情况。
to - INT (必需)
输入张量元素转换到的数据类型。严格来说必须是 TensorProto 中 DataType 枚举中的类型之一
输入¶
input (异构) - T1
要转换的输入张量。
输出¶
output (异构) - T2
与输入具有相同形状的输出张量,类型由“to”参数指定
类型约束¶
T1 in (
tensor(bfloat16)
,tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(float8e4m3fn)
,tensor(float8e4m3fnuz)
,tensor(float8e5m2)
,tensor(float8e5m2fnuz)
,tensor(int16)
,tensor(int32)
,tensor(int4)
,tensor(int64)
,tensor(int8)
,tensor(string)
,tensor(uint16)
,tensor(uint32)
,tensor(uint4)
,tensor(uint64)
,tensor(uint8)
)约束输入类型。不支持从复数进行转换。
T2 in (
tensor(bfloat16)
,tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(float8e4m3fn)
,tensor(float8e4m3fnuz)
,tensor(float8e5m2)
,tensor(float8e5m2fnuz)
,tensor(int16)
,tensor(int32)
,tensor(int4)
,tensor(int64)
,tensor(int8)
,tensor(string)
,tensor(uint16)
,tensor(uint32)
,tensor(uint4)
,tensor(uint64)
,tensor(uint8)
)约束输出类型。不支持转换为复数。
Cast - 19¶
版本¶
名称: 转换 (GitHub)
域:
main
since_version:
19
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
该版本的操作符自 版本 19 开始可用。
概述¶
该算子将给定输入张量中的元素转换为“to”参数指定的类型,并返回一个以转换类型表示的相同大小的输出张量。“to”参数必须是 TensorProto 消息的“DataType”枚举字段中指定的类型之一。
支持将普通 (例如,“3.14”和“1000”) 和科学数值表示 (例如,“1e-5”和“1E8”) 中的字符串张量转换为浮点类型。例如,将字符串“100.5”转换为整数可能会产生结果 100。某些字符串文字保留用于特殊浮点值;“+INF” (和“INF”)、“-INF”和“NaN”分别表示正无穷大、负无穷大和非数值。任何可以与“+INF”进行不区分大小写匹配的字符串都会映射为正无穷大。同样,此不区分大小写规则应用于“INF”和“NaN”。将数字张量转换为字符串张量时,将使用普通浮点表示 (例如,“314.15926”)。转换非数字文字字符串 (例如,“Hello World!”) 是未定义的行为。将表示浮点运算值的字符串 (例如,“2.718”) 转换为 INT 的情况是未定义的行为。
始终允许从数字类型到任何数字类型的转换。用户必须注意由两种类型之间的范围差异引起的精度损失和值变化。例如,64 位浮点数 3.1415926459 可能会舍入为 32 位浮点数 3.141592。同样,将整数 36 转换为布尔值可能会产生 1,因为我们截断了无法存储在目标类型中的位。
更详细地说,如果目标类型不是 float 8 类型,则数字类型之间的转换应遵循以下规则。
从浮点类型转换为
浮点类型:超出范围 (OOR) 时为 +/- 无穷大。
定点类型:超出范围 (OOR) 时未定义。
布尔类型:+/- 0.0 为 False;其他所有情况为 True。
从定点类型转换为
浮点类型:超出范围 (OOR) 时为 +/- 无穷大。(uint 情况下为 + 无穷大)
定点类型:超出范围 (OOR) 时,丢弃高位并重新解释 (对于有符号类型,相对于二进制补码表示)。例如,200 (int16) -> -56 (int8)。
布尔类型:零为 False;非零为 True。
从布尔类型转换为
浮点类型:
{1.0, 0.0}
。定点类型:
{1, 0}
。布尔类型:无变化。
Float 8 类型是为了加速深度模型的训练而引入的。默认情况下,浮点数 *x* 的转换遵循以下规则。[x]
表示四舍五入到目标尾数宽度的值。
x |
E4M3FN |
E4M3FNUZ |
E5M2 |
E5M2FNUZ |
---|---|---|---|---|
0 |
0 |
0 |
0 |
0 |
-0 |
-0 |
0 |
-0 |
0 |
NaN |
NaN |
NaN |
NaN |
NaN |
+/- 无穷大 |
+/- FLT_MAX |
NaN |
FLT_MAX |
NaN |
[x] > FLT_MAX |
FLT_MAX |
FLT_MAX |
FLT_MAX |
FLT_MAX |
[x] < -FLT_MAX |
-FLT_MAX |
-FLT_MAX |
-FLT_MAX |
-FLT_MAX |
其他情况 |
RNE |
RNE |
RNE |
RNE |
如果参数“saturate”设置为 False,则行为会发生改变。然后规则变为
x |
E4M3FN |
E4M3FNUZ |
E5M2 |
E5M2FNUZ |
---|---|---|---|---|
0 |
0 |
0 |
0 |
0 |
-0 |
-0 |
0 |
-0 |
0 |
NaN |
NaN |
NaN |
NaN |
NaN |
+/- 无穷大 |
NaN |
NaN |
+/- 无穷大 |
NaN |
[x] > FLT_MAX |
NaN |
NaN |
无穷大 |
NaN |
[x] < -FLT_MAX |
NaN |
NaN |
-无穷大 |
NaN |
其他情况 |
RNE |
RNE |
RNE |
RNE |
属性¶
saturate - INT (默认值为
'1'
)该参数定义了当输入值超出目标类型范围时转换的行为。它仅适用于 float 8 转换 (float8e4m3fn、float8e4m3fnuz、float8e5m2、float8e5m2fnuz)。默认情况下为真。算子说明中插入的两个表中详细描述了所有情况。
to - INT (必需)
输入张量元素转换到的数据类型。严格来说必须是 TensorProto 中 DataType 枚举中的类型之一
输入¶
input (异构) - T1
要转换的输入张量。
输出¶
output (异构) - T2
与输入具有相同形状的输出张量,类型由“to”参数指定
类型约束¶
T1 in (
tensor(bfloat16)
,tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(float8e4m3fn)
,tensor(float8e4m3fnuz)
,tensor(float8e5m2)
,tensor(float8e5m2fnuz)
,tensor(int16)
,tensor(int32)
,tensor(int64)
,tensor(int8)
,tensor(string)
,tensor(uint16)
,tensor(uint32)
,tensor(uint64)
,tensor(uint8)
)约束输入类型。不支持从复数进行转换。
T2 in (
tensor(bfloat16)
,tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(float8e4m3fn)
,tensor(float8e4m3fnuz)
,tensor(float8e5m2)
,tensor(float8e5m2fnuz)
,tensor(int16)
,tensor(int32)
,tensor(int64)
,tensor(int8)
,tensor(string)
,tensor(uint16)
,tensor(uint32)
,tensor(uint64)
,tensor(uint8)
)约束输出类型。不支持转换为复数。
Cast - 13¶
版本¶
名称: 转换 (GitHub)
域:
main
since_version:
13
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
该版本的操作符自 版本 13 开始可用。
概述¶
该算子将给定输入张量中的元素转换为“to”参数指定的类型,并返回一个以转换类型表示的相同大小的输出张量。“to”参数必须是 TensorProto 消息的“DataType”枚举字段中指定的类型之一。
支持将普通 (例如,“3.14”和“1000”) 和科学数值表示 (例如,“1e-5”和“1E8”) 中的字符串张量转换为浮点类型。例如,将字符串“100.5”转换为整数可能会产生结果 100。某些字符串文字保留用于特殊浮点值;“+INF” (和“INF”)、“-INF”和“NaN”分别表示正无穷大、负无穷大和非数值。任何可以与“+INF”进行不区分大小写匹配的字符串都会映射为正无穷大。同样,此不区分大小写规则应用于“INF”和“NaN”。将数字张量转换为字符串张量时,将使用普通浮点表示 (例如,“314.15926”)。转换非数字文字字符串 (例如,“Hello World!”) 是未定义的行为。将表示浮点运算值的字符串 (例如,“2.718”) 转换为 INT 的情况是未定义的行为。
始终允许从数字类型到任何数字类型的转换。用户必须注意由两种类型之间的范围差异引起的精度损失和值变化。例如,64 位浮点数 3.1415926459 可能会舍入为 32 位浮点数 3.141592。同样,将整数 36 转换为布尔值可能会产生 1,因为我们截断了无法存储在目标类型中的位。
更详细地说,数值类型之间的转换应遵循以下规则
从浮点类型转换为
浮点类型:超出范围 (OOR) 时为 +/- 无穷大。
定点类型:超出范围 (OOR) 时未定义。
布尔类型:+/- 0.0 为 False;其他所有情况为 True。
从定点类型转换为
浮点类型:超出范围 (OOR) 时为 +/- 无穷大。(uint 情况下为 + 无穷大)
定点类型:超出范围 (OOR) 时,丢弃高位并重新解释 (对于有符号类型,相对于二进制补码表示)。例如,200 (int16) -> -56 (int8)。
布尔类型:零为 False;非零为 True。
从布尔类型转换为
浮点类型:
{1.0, 0.0}
。定点类型:
{1, 0}
。布尔类型:无变化。
属性¶
to - INT (必需)
输入张量元素转换到的数据类型。严格来说必须是 TensorProto 中 DataType 枚举中的类型之一
输入¶
input (异构) - T1
要转换的输入张量。
输出¶
output (异构) - T2
与输入具有相同形状的输出张量,类型由“to”参数指定
类型约束¶
T1 in (
tensor(bfloat16)
,tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(int16)
,tensor(int32)
,tensor(int64)
,tensor(int8)
,tensor(string)
,tensor(uint16)
,tensor(uint32)
,tensor(uint64)
,tensor(uint8)
)约束输入类型。不支持从复数进行转换。
T2 in (
tensor(bfloat16)
,tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(int16)
,tensor(int32)
,tensor(int64)
,tensor(int8)
,tensor(string)
,tensor(uint16)
,tensor(uint32)
,tensor(uint64)
,tensor(uint8)
)约束输出类型。不支持转换为复数。
Cast - 9¶
版本¶
名称: 转换 (GitHub)
域:
main
since_version:
9
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
该版本的操作符自 版本 9 开始可用。
概述¶
该算子将给定输入张量中的元素转换为“to”参数指定的类型,并返回一个以转换类型表示的相同大小的输出张量。“to”参数必须是 TensorProto 消息的“DataType”枚举字段中指定的类型之一。
支持将普通 (例如,“3.14”和“1000”) 和科学数值表示 (例如,“1e-5”和“1E8”) 中的字符串张量转换为浮点类型。例如,将字符串“100.5”转换为整数可能会产生结果 100。某些字符串文字保留用于特殊浮点值;“+INF” (和“INF”)、“-INF”和“NaN”分别表示正无穷大、负无穷大和非数值。任何可以与“+INF”进行不区分大小写匹配的字符串都会映射为正无穷大。同样,此不区分大小写规则应用于“INF”和“NaN”。将数字张量转换为字符串张量时,将使用普通浮点表示 (例如,“314.15926”)。转换非数字文字字符串 (例如,“Hello World!”) 是未定义的行为。将表示浮点运算值的字符串 (例如,“2.718”) 转换为 INT 的情况是未定义的行为。
始终允许从数字类型到任何数字类型的转换。用户必须注意由两种类型之间的范围差异引起的精度损失和值变化。例如,64 位浮点数 3.1415926459 可能会舍入为 32 位浮点数 3.141592。同样,将整数 36 转换为布尔值可能会产生 1,因为我们截断了无法存储在目标类型中的位。
属性¶
to - INT (必需)
输入张量元素转换到的数据类型。严格来说必须是 TensorProto 中 DataType 枚举中的类型之一
输入¶
input (异构) - T1
要转换的输入张量。
输出¶
output (异构) - T2
与输入具有相同形状的输出张量,类型由“to”参数指定
类型约束¶
T1 in (
tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(int16)
,tensor(int32)
,tensor(int64)
,tensor(int8)
,tensor(string)
,tensor(uint16)
,tensor(uint32)
,tensor(uint64)
,tensor(uint8)
)约束输入类型。不支持从复数进行转换。
T2 in (
tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(int16)
,tensor(int32)
,tensor(int64)
,tensor(int8)
,tensor(string)
,tensor(uint16)
,tensor(uint32)
,tensor(uint64)
,tensor(uint8)
)约束输出类型。不支持转换为复数。
Cast - 6¶
版本¶
名称: 转换 (GitHub)
域:
main
since_version:
6
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
该版本的操作符自 版本 6 开始可用。
概述¶
该操作符将给定输入张量中的元素转换为由“to”参数指定的 数据类型,并返回相同大小的输出张量,其类型已转换。 “to”参数必须是 TensorProto 消息的“DataType”枚举字段中 指定的数据类型之一。 注意:目前不支持字符串类型之间的转换。
属性¶
to - INT (必需)
输入张量元素转换到的数据类型。严格来说必须是 TensorProto 中 DataType 枚举中的类型之一
输入¶
input (异构) - T1
要转换的输入张量。
输出¶
output (异构) - T2
与输入具有相同形状的输出张量,类型由“to”参数指定
类型约束¶
T1 在 (
tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(int16)
,tensor(int32)
,tensor(int64)
,tensor(int8)
,tensor(uint16)
,tensor(uint32)
,tensor(uint64)
,tensor(uint8)
)约束输入类型。不支持从字符串和复数进行类型转换。
T2 在 (
tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(int16)
,tensor(int32)
,tensor(int64)
,tensor(int8)
,tensor(uint16)
,tensor(uint32)
,tensor(uint64)
,tensor(uint8)
)约束输出类型。不支持转换为字符串和复数。
强制转换 - 1¶
版本¶
名称: 转换 (GitHub)
域:
main
since_version:
1
函数:
False
支持级别:
SupportType.COMMON
shape inference:
False
此版本的运算符从版本 1 开始可用。
摘要¶
该操作符将给定输入张量中的元素转换为由“to”参数指定的 数据类型,并返回相同大小的输出张量,其类型已转换。 “to”参数必须是 TensorProto 消息的“DataType”枚举字段中 指定的数据类型之一。 注意:目前不支持字符串类型之间的转换。
属性¶
to - STRING (必填)
输入张量元素转换到的数据类型。严格来说必须是 TensorProto 中 DataType 枚举中的类型之一
输入¶
input (异构) - T1
要转换的输入张量。
输出¶
output (异构) - T2
与输入具有相同形状的输出张量,类型由“to”参数指定
类型约束¶
T1 在 (
tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(int16)
,tensor(int32)
,tensor(int64)
,tensor(int8)
,tensor(uint16)
,tensor(uint32)
,tensor(uint64)
,tensor(uint8)
)约束输入类型。不支持从字符串和复数进行类型转换。
T2 在 (
tensor(bool)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(int16)
,tensor(int32)
,tensor(int64)
,tensor(int8)
,tensor(uint16)
,tensor(uint32)
,tensor(uint64)
,tensor(uint8)
)约束输出类型。不支持转换为字符串和复数。