tensorflow:: ops:: ScatterNdSub
#include <state_ops.h>Stosuje rozrzedzone odejmowanie do poszczególnych wartości lub wycinków zmiennej .
Streszczenie
w obrębie danej zmiennej według indices .
ref jest Tensor rangi P , a indices jest Tensor rangi Q
indices muszą być tensorami całkowitymi, zawierającymi indeksy w ref . Muszą mieć kształt [d_0, ..., d_{Q-2}, K] gdzie 0 < K <= P .
Najbardziej wewnętrzny wymiar indices (o długości K ) odpowiada indeksom na elementy (jeśli K = P ) lub wycinki (jeśli K < P ) wzdłuż K -tego wymiaru ref .
updates jest Tensor rangi Q-1+PK o kształcie:
[d_0, ..., d_{Q-2}, ref.shape[K], ..., ref.shape[P-1]]
Załóżmy na przykład, że chcemy odjąć 4 rozproszone elementy od tensora rzędu 1 o 8 elementach. W Pythonie to odejmowanie wyglądałoby tak:
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]) sub = tf.scatter_nd_sub(ref, indices, updates) with tf.Session() as sess: print sess.run(sub)
Wynikowa aktualizacja ref wyglądałaby następująco:
[1, -9, 3, -6, -4, 6, 7, -4]
Więcej szczegółów na temat aktualizowania wycinków można znaleźć w tf.scatter_nd .
Argumenty:
- zakres: obiekt zakresu
- ref: Zmienny Tensor . Powinien pochodzić z węzła Variable .
- Indeksy: Tensor . Musi być jednym z następujących typów: int32, int64. Tensor indeksów w ref.
- Aktualizacje: Tensor . Musi mieć ten sam typ co ref. Tensor zaktualizowanych wartości do odjęcia od ref.
Atrybuty opcjonalne (patrz Attrs ):
- use_locking: Opcjonalny bool. Domyślnie True. Jeśli True, przypisanie będzie chronione blokadą; w przeciwnym razie zachowanie jest niezdefiniowane, ale może wykazywać mniejszą liczbę konfliktów.
Zwroty:
-
Output: takie same jak ref. Zwracane dla wygody operacji, które chcą użyć zaktualizowanych wartości po zakończeniu aktualizacji.
Konstruktory i destruktory | |
|---|---|
ScatterNdSub (const :: tensorflow::Scope & scope, :: tensorflow::Input ref, :: tensorflow::Input indices, :: tensorflow::Input updates) | |
ScatterNdSub (const :: tensorflow::Scope & scope, :: tensorflow::Input ref, :: tensorflow::Input indices, :: tensorflow::Input updates, const ScatterNdSub::Attrs & attrs) |
Atrybuty publiczne | |
|---|---|
operation | |
output_ref | |
Funkcje publiczne | |
|---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const | |
Publiczne funkcje statyczne | |
|---|---|
UseLocking (bool x) | |
Struktury | |
|---|---|
| tensorflow:: ops:: ScatterNdSub:: Attrs | Opcjonalne settery atrybutów dla ScatterNdSub . |
Atrybuty publiczne
działanie
Operation operation
odniesienie_wyjściowe
::tensorflow::Output output_ref
Funkcje publiczne
RozrzutNdSub
ScatterNdSub( const ::tensorflow::Scope & scope, ::tensorflow::Input ref, ::tensorflow::Input indices, ::tensorflow::Input updates )
RozrzutNdSub
ScatterNdSub( const ::tensorflow::Scope & scope, ::tensorflow::Input ref, ::tensorflow::Input indices, ::tensorflow::Input updates, const ScatterNdSub::Attrs & attrs )
węzeł
::tensorflow::Node * node() const
operator::tensorflow::Input
operator::tensorflow::Input() const
operator::tensorflow::Output
operator::tensorflow::Output() const
Publiczne funkcje statyczne
Użyj blokady
Attrs UseLocking( bool x )