指定された内の個々の値またはスライスにスパース `updates`を適用します
`インデックス`に従って変数。
`ref`はランク` P`の `Tensor`であり、` indexes`はランク `Q`の` Tensor`です。
`indexes`は、` ref`へのインデックスを含む整数テンソルでなければなりません。形状は\ \([d_0, ..., d_{Q-2}, K]\\)である必要があります。ここで、 `0 <K <= P`です。
`インデックス`の最も内側の次元(長さ `K`)は、` ref`の `K`番目の次元に沿った要素(` K = P`の場合)またはスライス( `K <P`の場合)へのインデックスに対応します。
`updates`はランク` Q-1 + PK`の `Tensor`であり、形状は次のとおりです。
たとえば、4つの散乱要素をランク1のテンソルから8つの要素に更新するとします。 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`も参照してください。
ネストされたクラス
クラス | ScatterNdUpdate.Options | ScatterNdUpdate オプションの属性 |
パブリックメソッド
出力<T> | asOutput () テンソルのシンボリックハンドルを返します。 |
static <T、U extends Number> ScatterNdUpdate <T> | |
出力<T> | outputRef () 参考文献と同じ。 |
静的ScatterNdUpdate.Options | useLocking (ブール値useLocking) |
継承されたメソッド
パブリックメソッド
public Output <T> asOutput ()
テンソルのシンボリックハンドルを返します。
TensorFlow操作への入力は、別のTensorFlow操作の出力です。このメソッドは、入力の計算を表すシンボリックハンドルを取得するために使用されます。
public static ScatterNdUpdate <T> create (スコープスコープ、オペランド<T>参照、オペランド<U>インデックス、オペランド<T>更新、オプション...オプション)
新しいScatterNdUpdate操作をラップするクラスを作成するファクトリメソッド。
パラメーター
範囲 | 現在のスコープ |
---|---|
ref | 可変テンソル。変数ノードからのものである必要があります。 |
インデックス | テンソル。次のいずれかのタイプである必要があります:int32、int64。参照へのインデックスのテンソル。 |
更新 | テンソル。 refと同じタイプである必要があります。 refに追加する更新された値のテンソル。 |
オプション | オプションの属性値を運ぶ |
戻り値
- ScatterNdUpdateの新しいインスタンス
public static ScatterNdUpdate.Options useLocking (ブール値useLocking)
パラメーター
useLocking | オプションのbool。デフォルトはTrueです。 Trueの場合、割り当てはロックによって保護されます。それ以外の場合、動作は定義されていませんが、競合が少なくなる可能性があります。 |
---|