Aplica `atualizações` esparsas a valores individuais ou fatias dentro de um determinado
variável de acordo com `índices`.
`ref` é um `Tensor` com classificação `P` e `indices` é um `Tensor` de classificação `Q`.
`indices` deve ser um tensor inteiro, contendo índices em `ref`. Deve ser forma \\([d_0, ..., d_{Q-2}, K]\\) onde `0 <K <= P`.
A dimensão mais interna dos `índices` (com comprimento `K`) corresponde a índices em elementos (se `K = P`) ou fatias (se `K <P`) ao longo da `K`ésima dimensão de `ref`.
`updates` é `Tensor` de classificação `Q-1+PK` com forma:
$$[d_0, ..., d_{Q-2}, ref.shape[K], ..., ref.shape[P-1]].$$
Por exemplo, digamos que queremos atualizar 4 elementos dispersos para um tensor de classificação 1 para 8 elementos. Em Python, essa atualização ficaria assim:
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)
[1, 11, 3, 10, 9, 6, 7, 12]
Consulte tf.scatter_nd
para obter mais detalhes sobre como fazer atualizações nas fatias.
Veja também `tf.scatter_update` e `tf.batch_scatter_update`.
Classes aninhadas
aula | ScatterNdUpdate.Options | Atributos opcionais para ScatterNdUpdate |
Métodos Públicos
Saída <T> | asOutput () Retorna o identificador simbólico de um tensor. |
estático <T, U estende número> ScatterNdUpdate <T> | create (escopo do escopo , referência do operando <T>, índices do operando <U>, atualizações do operando <T>, opções... opções) Método de fábrica para criar uma classe que envolve uma nova operação ScatterNdUpdate. |
Saída <T> | saídaRef () O mesmo que ref. |
ScatterNdUpdate.Options estático | useLocking (booleano useLocking) |
Métodos herdados
Métodos Públicos
Saída pública <T> asOutput ()
Retorna o identificador simbólico de um tensor.
As entradas para operações do TensorFlow são saídas de outra operação do TensorFlow. Este método é usado para obter um identificador simbólico que representa o cálculo da entrada.
public static ScatterNdUpdate <T> create ( Escopo do escopo, referência do operando <T>, índices do operando <U>, atualizações do operando <T>, opções... opções)
Método de fábrica para criar uma classe que envolve uma nova operação ScatterNdUpdate.
Parâmetros
escopo | escopo atual |
---|---|
referência | Um tensor mutável. Deve ser de um nó Variável. |
índices | Um Tensor. Deve ser um dos seguintes tipos: int32, int64. Um tensor de índices na ref. |
atualizações | Um Tensor. Deve ter o mesmo tipo da ref. Um tensor de valores atualizados para adicionar à ref. |
opções | carrega valores de atributos opcionais |
Devoluções
- uma nova instância de ScatterNdUpdate
Saída pública <T> outputRef ()
O mesmo que ref. Retornado como uma conveniência para operações que desejam usar os valores atualizados após a atualização ser concluída.
public static ScatterNdUpdate.Options useLocking (booleano useLocking)
Parâmetros
useLocking | Um bool opcional. O padrão é Verdadeiro. Se for True, a atribuição será protegida por um bloqueio; caso contrário, o comportamento será indefinido, mas poderá apresentar menos contenção. |
---|