当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.RaggedTensor.from_value_rowids用法及代码示例


用法

@classmethod
from_value_rowids(
    values, value_rowids, nrows=None, name=None, validate=True
)

参数

  • values 形状可能参差不齐的张量 [nvals, ...]
  • value_rowids 形状为 [nvals] 的一维整数张量,对应于 one-to-one 和 values ,并指定每个值的行索引。必须是非负数,并且必须按升序排序。
  • nrows 指定行数的整数标量。如果 RaggedTensor 可能包含空的训练行,则应指定此项。必须大于 value_rowids[-1](如果 value_rowids 为空,则为零)。默认为 value_rowids[-1] + 1(如果 value_rowids 为空,则为零)。
  • name RaggedTensor 的名称前缀(可选)。
  • validate 如果为真,则使用断言检查参数是否形成有效的 RaggedTensor 。注意:这些断言会产生运行时成本,因为必须检查每个张量值。

返回

  • 一个RaggedTensorresult.rank = values.rank + 1result.ragged_rank = values.ragged_rank + 1

抛出

  • ValueError 如果 nrowsvalue_rowids 不兼容。

创建一个 RaggedTensor ,其中行由 value_rowids 分区。

返回的 RaggedTensor 对应于由以下定义的 python 列表:

result = [[values[i] for i in range(len(values)) if value_rowids[i] == row]
          for row in range(nrows)]

例子:

print(tf.RaggedTensor.from_value_rowids(
    values=[3, 1, 4, 1, 5, 9, 2, 6],
    value_rowids=[0, 0, 0, 0, 2, 2, 2, 3],
    nrows=5))
<tf.RaggedTensor [[3, 1, 4, 1], [], [5, 9, 2], [6], []]>

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.RaggedTensor.from_value_rowids。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。