独热

独热 - 11

版本

  • 名称: OneHot (GitHub)

  • : main

  • 自版本: 11

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

此版本的算子自版本11起可用。

摘要

根据输入生成一个独热张量。‘indices’输入张量中的索引值所表示的位置将在输出张量中具有‘on_value’,其他位置将具有‘off_value’,其中‘on_value’和‘off_value’作为必需输入参数‘values’的一部分指定,该参数是一个格式为[off_value, on_value]的二维张量。输出张量的秩将比输入张量的秩大一。额外维度用于独热表示。额外维度将在由‘axis’指定的position处插入。如果未指定‘axis’,则额外维度将作为最内层维度插入,即axis=-1。额外维度的尺寸由必需的标量输入‘depth’指定。输出张量的类型与‘values’输入的类型相同。‘indices’输入张量中任何值超出范围[-depth, depth-1]的条目都将导致输出张量中所有‘off_value’值的独热表示。

当axis = 0时:output[input[i, j, k], i, j, k] = 1 对于所有i, j, k,否则为0。

当axis = -1时:output[i, j, k, input[i, j, k]] = 1 对于所有i, j, k,否则为0。

属性

  • axis - INT(默认为'-1'

    (可选)添加独热表示的轴。默认值:axis=-1。axis=-1表示额外维度将作为输出张量中最内层/最后一个维度插入。负值表示从后计数维度。接受的范围是[-r-1, r],其中r = rank(indices)。

输入

  • indices (异构) - T1

    包含索引的输入张量。‘indices’输入张量中任何值超出范围[-depth, depth-1]的条目都将导致输出张量中所有‘off_value’值的独热表示。如果‘indices’是非整数类型,则在使用前将其值转换为int64。

  • depth (异构) - T2

    包含正好一个元素的标量或秩1张量,指定独热张量中的类别数。这也是输出张量中添加的独热维度(由‘axis’属性指定)的大小。‘indices’输入张量中的值应在范围[-depth, depth-1]内。如果‘depth’是非整数类型,则在使用前将其转换为int64。

  • values (异构) - T3

    包含正好两个元素的秩1张量,格式为[off_value, on_value],其中‘on_value’是用于填充‘indices’输入张量中指定位置的值,而‘off_value’是用于填充除‘indices’输入张量中指定位置之外的其他位置的值。

输出

  • output (异构) - T3

    秩比输入张量‘indices’大一的张量,即rank(output) = rank(indices) + 1。输出张量元素的数据类型与输入‘values’的类型相同。

类型约束

  • T1 in ( tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    约束输入仅为数值类型。

  • T2 in ( tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    约束输入仅为数值类型。

  • T3 in ( tensor(bool), tensor(complex128), tensor(complex64), tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(string), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    约束为任何张量类型。

独热 - 9

版本

  • 名称: OneHot (GitHub)

  • : main

  • 自版本: 9

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

此版本的算子自版本9起可用。

摘要

根据输入生成一个独热张量。‘indices’输入张量中索引值表示的位置将在输出张量中具有‘on_value’,其他位置将具有‘off_value’,其中‘on_value’和‘off_value’作为必需输入参数‘values’的一部分指定,‘values’是一个格式为[off_value, on_value]的双元素张量。输出张量的秩将比输入张量的秩大一。附加维度用于独热表示。附加维度将插入由‘axis’指定的位置。如果未指定‘axis’,则附加维度将插入为最内层维度,即axis=-1。附加维度的尺寸由必需的标量输入‘depth’指定。输出张量的类型与‘values’输入的类型相同。‘indices’输入张量中任何值超出范围[0, depth)的条目都将导致输出张量中所有‘off_value’值的独热表示。

属性

  • axis - INT(默认为'-1'

    (可选) 添加独热表示的轴。默认值:axis=-1。axis=-1表示附加维度将作为输出张量中最内层/最后一个维度插入。

输入

  • indices (异构) - T1

    包含索引的输入张量。值必须是非负整数。‘indices’输入张量中任何值超出范围[0, depth)的条目都将导致输出张量中所有‘off_value’值的独热表示。如果‘indices’是非整数类型,则其值将在使用前转换为int64。

  • depth (异构) - T2

    标量或秩为1的张量,包含恰好一个元素,指定独热张量中的类别数。这也是输出张量中添加的独热维度(由‘axis’属性指定)的大小。‘indices’输入张量中的值应在范围[0, depth)内。如果‘depth’是非整数类型,则其值将在使用前转换为int64。

  • values (异构) - T3

    包含正好两个元素的秩1张量,格式为[off_value, on_value],其中‘on_value’是用于填充‘indices’输入张量中指定位置的值,而‘off_value’是用于填充除‘indices’输入张量中指定位置之外的其他位置的值。

输出

  • output (异构) - T3

    秩比输入张量‘indices’大一的张量,即rank(output) = rank(indices) + 1。输出张量元素的数据类型与输入‘values’的类型相同。

类型约束

  • T1 in ( tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    约束输入仅为数值类型。

  • T2 in ( tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    约束输入仅为数值类型。

  • T3 in ( tensor(bool), tensor(complex128), tensor(complex64), tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(string), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    约束为任何张量类型。