阅读(1995) (12)

TensorFlow函数:tf.sparse_fill_empty_rows

2018-02-26 14:43:31 更新

tf.sparse_fill_empty_rows 函数

sparse_fill_empty_rows(
    sp_input,
    default_value,
    name=None
)

定义在:tensorflow/python/ops/sparse_ops.py.

参见指南:稀疏张量>操纵

使用默认值来填充输入中 2-D 的 SparseTensor 中的空行.

该操作为在索引 [row, 0] 中的尚未具有值的任何行的输入添加具有指定 default_value 的项.

例如,假设 sp_input 具有形状 [5, 6],并且非空值:

[0, 1]: a
[0, 3]: b
[2, 0]: c
[3, 1]: d

第1行和第4行是空的,所以输出将为形状 [5, 6],并且具有以下值:

[0, 1]: a
[0, 3]: b
[1, 0]: default_value
[2, 0]: c
[3, 1]: d
[4, 0]: default_value

请注意,输入最后可能有空列,但是对此操作没有任何影响.

输出SparseTensor将按行优先顺序排列,并具有与输入相同的形状.

这个操作也返回一个指标向量,使得:

empty_row_indicator[i] = True iff row i was an empty row

函数参数:

  • sp_input:一个形状为 [N, M] 的 SparseTensor.
  • default_value:填充空行的值,与 sp_input 具有相同类型.
  • name:返回张量的名称前缀(可选)

返回值:

  • sp_ordered_output:形状为 [N, M] 的 SparseTensor,并使用 default_value 填充所有空行.
  • empty_row_indicator:一个长度为 N 的 bool 的向量,表示每个输入行是否为空.

可能引发的异常:

  • TypeError:如果 sp_input 不是 SparseTensor 则会引发此异常.