OneHot

OneHot - 11

版本

  • 名称: OneHot (GitHub)

  • 域名: main

  • since_version: 11

  • 函数: False

  • support_level: SupportType.COMMON

  • 形状推断: True

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

摘要

基于输入生成一个独热编码张量。 在输出张量中,由输入张量'indices'中的索引值表示的位置将具有'on_value',而其他位置将具有'off_value',其中'on_value'和'off_value'作为必需的输入参数'values'的一部分指定,'values'是一个格式为[off_value, on_value]的两元素张量。输出张量的秩将比输入张量的秩大一。额外的维度用于独热编码表示。额外的维度将插入到由'axis'指定的位置。如果未指定'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 时: 对于所有 i, j, k,output[i, j, k, input[i, j, k]] = 1,否则为 0。

属性

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

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

输入

  • indices (异构) - T1:

    输入包含索引的张量。任何在“indices”输入张量中值超出范围[-depth, depth-1]的条目将在输出tensor.In中表示为全“off_value”值。如果“indices”是非整数类型,则在使用前将值转换为int64。

  • 深度 (异构) - T2:

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

  • values(异构) - T3:

    包含恰好两个元素的Rank 1张量,格式为[off_value, on_value],其中‘on_value’是用于填充‘indices’输入张量中指定位置的值,‘off_value’是用于填充‘indices’输入张量中未指定位置的值。

输出

  • 输出 (异构) - T3:

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

类型约束

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

    限制输入仅为数字类型。

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

    限制输入仅为数字类型。

  • T3 在 ( 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) ):

    约束为任何张量类型。

OneHot - 9

版本

  • 名称: OneHot (GitHub)

  • 域名: main

  • since_version: 9

  • 函数: False

  • support_level: 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。

  • 深度 (异构) - T2:

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

  • values(异构) - T3:

    包含恰好两个元素的Rank 1张量,格式为[off_value, on_value],其中‘on_value’是用于填充‘indices’输入张量中指定位置的值,‘off_value’是用于填充‘indices’输入张量中未指定位置的值。

输出

  • 输出 (异构) - T3:

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

类型约束

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

    限制输入仅为数字类型。

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

    限制输入仅为数字类型。

  • T3 在 ( 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) ):

    约束为任何张量类型。