ScatterNdNonAliasingAdd

publiczna klasa końcowa ScatterNdNonAliasingAdd

Stosuje rzadkie dodawanie do „wejściowych” przy użyciu pojedynczych wartości lub wycinków

z `aktualizacji` według indeksów `indeksy`. Aktualizacje nie są aliasingowe: „input” jest modyfikowany lokalnie tylko wtedy, gdy nie będą używane żadne inne operacje. W przeciwnym razie tworzona jest kopia „input”. Ta operacja ma gradient zarówno w odniesieniu do „wejść”, jak i „aktualizacji”.

„input” to „tensor” o randze „P”, a „indeksy” to „tensor” o randze „Q”.

„indeksy” muszą być tensorami całkowitymi, zawierającymi indeksy na „wejściach”. Musi to być kształt \\([d_0, ..., d_{Q-2}, K]\\) gdzie `0 < K <= P`.

Najbardziej wewnętrzny wymiar „indeksów” (o długości „K”) odpowiada indeksom na elementy (jeśli „K = P”) lub „(PK)”-wymiarowe plasterki (jeśli „K < P”) wzdłuż „K” wymiar „wejściowego”.

`updates` to `Tensor` rangi `Q-1+PK` o kształcie:

$$[d_0, ..., d_{Q-2}, input.shape[K], ..., input.shape[P-1]].$$

Załóżmy na przykład, że chcemy dodać 4 rozproszone elementy do tensora rangi 1 do 8 elementów. W Pythonie dodatek ten będzie wyglądał następująco:

wejście = tf.constant([1, 2, 3, 4, 5, 6, 7, 8]) indeksy = tf.constant([[4], [3], [1], [7]]) aktualizacje = tf.constant([9, 10, 11, 12]) wyjście = tf.scatter_nd_non_aliasing_add(wejście, indeksy, aktualizacje) z tf.Session() jako sess: print(sess.run(wyjście))

Wynikowa wartość „wyjście” będzie wyglądać następująco:

[1, 13, 3, 14, 14, 6, 7, 20]

Zobacz tf.scatter_nd , aby uzyskać więcej szczegółów na temat aktualizowania plasterków.

Metody publiczne

Wyjście <T>
jako wyjście ()
Zwraca symboliczny uchwyt tensora.
statyczny <T, U rozszerza numer> ScatterNdNonAliasingAdd <T>
utwórz (zakres zakresu , dane wejściowe argumentu <T>, indeksy argumentu <U>, aktualizacje argumentu <T>)
Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację ScatterNdNonAliasingAdd.
Wyjście <T>
wyjście ()
`Tensor` o tym samym kształcie co `input`, zawierający wartości `input` aktualizowane za pomocą `updates`.

Metody dziedziczone

Metody publiczne

publiczne wyjście <T> asOutput ()

Zwraca symboliczny uchwyt tensora.

Dane wejściowe operacji TensorFlow są wynikami innej operacji TensorFlow. Ta metoda służy do uzyskania symbolicznego uchwytu reprezentującego obliczenia danych wejściowych.

public static ScatterNdNonAliasingAdd <T> create (zakres zakresu , dane wejściowe argumentu <T>, indeksy argumentu <U>, aktualizacje argumentu <T>)

Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację ScatterNdNonAliasingAdd.

Parametry
zakres aktualny zakres
wejście Tensor.
indeksy Tensor. Musi to być jeden z następujących typów: `int32`, `int64`. Tensor indeksów na wejściu.
aktualizacje Tensor. Musi mieć ten sam typ co ref. Tensor zaktualizowanych wartości do dodania do „wejściowego”.
Zwroty
  • nowa instancja ScatterNdNonAliasingAdd

publiczne wyjście <T> wyjście ()

`Tensor` o tym samym kształcie co `input`, zawierający wartości `input` aktualizowane za pomocą `updates`.