tensorflow:: ops:: SparseFillEmptyRows

#include <sparse_ops.h>

入力された2次元SparseTensorの空行をデフォルト値で埋めます。

まとめ

入力SparseTensorは、入力( indices 、 values 、 dense_shape )のタプルで表されます。出力SparseTensorは、同じdense_shape持ちますが、インデックスはoutput_indices 、値はoutput_valuesとなります。

この操作では、値が存在しない行ごとにエントリを1つ挿入します。インデックスは[row, 0, ..., 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行優先順となり、入力と同じ形状になります。

この操作では、以下の形状のインジケータベクトルも返されます[dense_shape[0]]

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

そして、逆伝播中に使用される[indices.shape[0]]の形状の逆インデックスマップベクトル、

reverse_index_map[j] = out_j s.t. indices[j, :] == output_indices[out_j, :]

議論:

  • スコープ:スコープオブジェクト
  • インデックス: 2次元。疎テンソルのインデックス。
  • 値: 1次元。疎テンソルの値。
  • dense_shape: 1次元。疎テンソルの形状。
  • default_value: 0次元。入力スパーステンソルに欠落している行の位置[row, 0, ..., 0]に挿入するデフォルト値。 output indices: 2次元。埋められたスパーステンソルのインデックス。

返品:

  • Outputインデックス
  • Output output_values: 1次元。塗りつぶされた疎テンソルの値。
  • Output empty_row_indicator: 1次元。入力スパーステンソルに密行が欠落していたかどうか。
  • Output reverse_index_map: 1 次元。入力インデックスから出力インデックスへのマップ。

コンストラクターとデストラクタ

SparseFillEmptyRows (const :: tensorflow::Scope & scope, :: tensorflow::Input indices, :: tensorflow::Input values, :: tensorflow::Input dense_shape, :: tensorflow::Input default_value)

公開属性

empty_row_indicator
operation
output_indices
output_values
reverse_index_map

公開属性

空行インジケーター

::tensorflow::Output empty_row_indicator

手術

Operation operation

出力インデックス

::tensorflow::Output output_indices

出力値

::tensorflow::Output output_values

逆インデックスマップ

::tensorflow::Output reverse_index_map

公的機能

スパースフィルエンプティロウズ

 SparseFillEmptyRows(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input indices,
  ::tensorflow::Input values,
  ::tensorflow::Input dense_shape,
  ::tensorflow::Input default_value
)