変数内の個々の値またはスライスにスパース加算を適用します。
「ref」はランク「P」の「テンソル」であり、「インデックス」はランク「Q」の「テンソル」です。
`indices` は、`ref` へのインデックスを含む整数テンソルでなければなりません。それは形状 `[d_0, ..., d_{Q-2}, K]` でなければなりません。ここで `0 < K <= P` です。
`indexes` の最も内側の次元 (長さ `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 つの散在要素をランク 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])
add = tf.scatter_nd_add(ref, indices, updates)
with tf.Session() as sess:
print sess.run(add)
ref への結果の更新は次のようになります。[1、13、3、14、14、6、7、20]
スライスを更新する方法の詳細については、「tf.scatter_nd」を参照してください。
ネストされたクラス
クラス | ScatterNdAdd.オプション | ScatterNdAdd のオプションの属性 |
パブリックメソッド
出力<T> | asOutput () テンソルのシンボリック ハンドルを返します。 |
static <T, U extends Number> ScatterNdAdd <T> | |
出力<T> | 出力参照() 参考文献と同じ。 |
静的ScatterNdAdd.Options | useLocking (ブール型 useLocking) |
継承されたメソッド
パブリックメソッド
public Output <T> asOutput ()
テンソルのシンボリック ハンドルを返します。
TensorFlow オペレーションへの入力は、別の TensorFlow オペレーションの出力です。このメソッドは、入力の計算を表すシンボリック ハンドルを取得するために使用されます。
public static ScatterNdAdd <T> create (スコープスコープ、オペランド<T> 参照、オペランド<U> インデックス、オペランド<T> 更新、オプション...オプション)
新しい ScatterNdAdd オペレーションをラップするクラスを作成するためのファクトリ メソッド。
パラメータ
範囲 | 現在のスコープ |
---|---|
参照 | 可変テンソル。 Variable ノードからのものである必要があります。 |
インデックス | テンソル。 int32、int64 のいずれかの型である必要があります。 ref へのインデックスのテンソル。 |
アップデート | テンソル。 ref と同じ型でなければなりません。 ref に追加する更新された値のテンソル。 |
オプション | オプションの属性値を持ちます |
返品
- ScatterNdAdd の新しいインスタンス
public static ScatterNdAdd.Options useLocking (ブール型 useLocking)
パラメータ
使用ロック | オプションのブール値。デフォルトは True です。 True の場合、割り当てはロックによって保護されます。それ以外の場合、動作は未定義ですが、競合が少なくなる可能性があります。 |
---|