tensorflow:: ops:: ScatterNdUpdate
#include <state_ops.h>指定された範囲内の個々の値またはスライスに対して、疎なupdatesを適用します。
まとめ
indicesに応じて変化する。
refはランクPのTensorであり、 indicesはランクQのTensorです。
indices 、 refへのインデックスを含む整数テンソルである必要があります。形状は \([d_0, ..., d_{Q-2}, K]\) ここで0 < K <= Pある。
indicesの最も内側の次元(長さK )は、 refのK番目の次元に沿った要素( K = P場合)またはスライス( K < Pの場合)へのインデックスに対応します。
updates 、形状が次のランクQ-1+PKのTensorです。
$$[d_0, ..., d_{Q-2}, ref.shape[K], ..., ref.shape[P-1]].$$
例えば、4つの散在要素を8つの要素を持つランク1テンソルに更新したいとします。Pythonでは、その更新は次のようになります。
ref = tf.Variable([1, 2, 3, 4, 5, 6, 7, 8]) indices = tf.constant([[4], [3], [1] ,[7]]) updates = tf.constant([9, 10, 11, 12]) update = tf.scatter_nd_update(ref, indices, updates) with tf.Session() as sess: print sess.run(update)
結果としてrefに反映される更新内容は以下のようになります。
[1, 11, 3, 10, 9, 6, 7, 12]
スライスを更新する方法の詳細については、 tf.scatter_nd参照してください。
tf.scatter_updateおよびtf.batch_scatter_updateも参照してください。
議論:
- スコープ:スコープオブジェクト
- 参照: 可変テンソル。変数ノードから取得する必要があります。
- indices:テンソル。int32、int64 のいずれかの型である必要があります。ref へのインデックスのテンソル。
- 更新:テンソル。ref と同じ型である必要があります。ref に追加する更新された値のテンソル。
オプション属性( Attrs参照):
- use_locking: オプションのブール値。デフォルトはTrueです。Trueの場合、代入はロックによって保護されます。それ以外の場合は動作は未定義ですが、競合が少なくなる可能性があります。
返品:
-
Output:参照と同じ。更新後に更新された値を使用したい操作の便宜のために返されます。
コンストラクターとデストラクタ | |
|---|---|
ScatterNdUpdate (const :: tensorflow::Scope & scope, :: tensorflow::Input ref, :: tensorflow::Input indices, :: tensorflow::Input updates) | |
ScatterNdUpdate (const :: tensorflow::Scope & scope, :: tensorflow::Input ref, :: tensorflow::Input indices, :: tensorflow::Input updates, const ScatterNdUpdate::Attrs & attrs) |
公開属性 | |
|---|---|
operation | |
output_ref | |
公的機能 | |
|---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const | |
パブリック静的関数 | |
|---|---|
UseLocking (bool x) | |
構造 | |
|---|---|
| tensorflow:: ops:: ScatterNdUpdate:: Attrs | ScatterNdUpdateのオプション属性セッター。 |
公開属性
手術
Operation operation
出力参照
::tensorflow::Output output_ref
公的機能
ScatterNdUpdate
ScatterNdUpdate( const ::tensorflow::Scope & scope, ::tensorflow::Input ref, ::tensorflow::Input indices, ::tensorflow::Input updates )
ScatterNdUpdate
ScatterNdUpdate( const ::tensorflow::Scope & scope, ::tensorflow::Input ref, ::tensorflow::Input indices, ::tensorflow::Input updates, const ScatterNdUpdate::Attrs & attrs )
ノード
::tensorflow::Node * node() const
operator::tensorflow::Input
operator::tensorflow::Input() const
operator::tensorflow::Output
operator::tensorflow::Output() const
パブリック静的関数
ロックを使用する
Attrs UseLocking( bool x )