Aplica una adición escasa a la "entrada" utilizando valores o sectores individuales
de `actualizaciones` según índices `índices`. Las actualizaciones no tienen alias: `input` solo se modifica in situ si ninguna otra operación lo utilizará. De lo contrario, se realiza una copia de la "entrada". Esta operación tiene un gradiente con respecto tanto a la "entrada" como a las "actualizaciones".
"entrada" es un "tensor" con rango "P" y "índices" es un "tensor" de rango "Q".
Los "índices" deben ser un tensor entero que contenga índices en la "entrada". Debe tener forma \\([d_0, ..., d_{Q-2}, K]\\) donde `0 <K <= P`.
La dimensión más interna de los `índices` (con longitud `K`) corresponde a índices en elementos (si `K = P`) o cortes dimensionales `(PK)` (si `K < P`) a lo largo del `K`ésimo dimensión de "entrada".
`updates` es `Tensor` de rango `Q-1+PK` con forma:
$$[d_0, ..., d_{Q-2}, input.shape[K], ..., input.shape[P-1]].$$
Por ejemplo, digamos que queremos agregar 4 elementos dispersos a un tensor de rango 1 a 8 elementos. En Python, esa adición se vería así:
entrada = tf.constant([1, 2, 3, 4, 5, 6, 7, 8]) índices = tf.constant([[4], [3], [1], [7]]) actualizaciones = tf.constant([9, 10, 11, 12]) salida = tf.scatter_nd_non_aliasing_add(entrada, índices, actualizaciones) con tf.Session() como sess: print(sess.run(salida))
El valor resultante "salida" se vería así:
[1, 13, 3, 14, 14, 6, 7, 20]
Consulte tf.scatter_nd
para obtener más detalles sobre cómo realizar actualizaciones en los sectores.
Métodos públicos
Salida <T> | como salida () Devuelve el identificador simbólico de un tensor. |
estático <T, U extiende Número> ScatterNdNonAliasingAdd <T> | crear (alcance del alcance , entrada del operando <T>, índices del operando <U>, actualizaciones del operando <T>) Método de fábrica para crear una clase que envuelve una nueva operación ScatterNdNonAliasingAdd. |
Salida <T> | producción () Un `Tensor` con la misma forma que `input`, que contiene valores de `input` actualizados con `updates`. |
Métodos heredados
Métodos públicos
Salida pública <T> como Salida ()
Devuelve el identificador simbólico de un tensor.
Las entradas a las operaciones de TensorFlow son salidas de otra operación de TensorFlow. Este método se utiliza para obtener un identificador simbólico que representa el cálculo de la entrada.
public static ScatterNdNonAliasingAdd <T> create ( alcance del alcance, entrada del operando <T>, índices del operando <U>, actualizaciones del operando <T>)
Método de fábrica para crear una clase que envuelve una nueva operación ScatterNdNonAliasingAdd.
Parámetros
alcance | alcance actual |
---|---|
aporte | Un tensor. |
índices | Un tensor. Debe ser uno de los siguientes tipos: `int32`, `int64`. Un tensor de índices en "entrada". |
actualizaciones | Un tensor. Debe ser del mismo tipo que la ref. Un tensor de valores actualizados para agregar a la "entrada". |
Devoluciones
- una nueva instancia de ScatterNdNonAliasingAdd
Salida pública <T> salida ()
Un `Tensor` con la misma forma que `input`, que contiene valores de `input` actualizados con `updates`.
Aplica una adición escasa a la "entrada" utilizando valores o sectores individuales
de `actualizaciones` según índices `índices`. Las actualizaciones no tienen alias: `input` solo se modifica in situ si ninguna otra operación lo utilizará. De lo contrario, se realiza una copia de la "entrada". Esta operación tiene un gradiente con respecto tanto a la "entrada" como a las "actualizaciones".
"entrada" es un "tensor" con rango "P" y "índices" es un "tensor" de rango "Q".
Los "índices" deben ser un tensor entero que contenga índices en la "entrada". Debe tener forma \\([d_0, ..., d_{Q-2}, K]\\) donde `0 <K <= P`.
La dimensión más interna de los `índices` (con longitud `K`) corresponde a índices en elementos (si `K = P`) o cortes dimensionales `(PK)` (si `K < P`) a lo largo del `K`ésimo dimensión de "entrada".
`updates` es `Tensor` de rango `Q-1+PK` con forma:
$$[d_0, ..., d_{Q-2}, input.shape[K], ..., input.shape[P-1]].$$
Por ejemplo, digamos que queremos agregar 4 elementos dispersos a un tensor de rango 1 a 8 elementos. En Python, esa adición se vería así:
entrada = tf.constant([1, 2, 3, 4, 5, 6, 7, 8]) índices = tf.constant([[4], [3], [1], [7]]) actualizaciones = tf.constant([9, 10, 11, 12]) salida = tf.scatter_nd_non_aliasing_add(entrada, índices, actualizaciones) con tf.Session() como sess: print(sess.run(salida))
El valor resultante "salida" se vería así:
[1, 13, 3, 14, 14, 6, 7, 20]
Consulte tf.scatter_nd
para obtener más detalles sobre cómo realizar actualizaciones en los sectores.
Métodos públicos
Salida <T> | como salida () Devuelve el identificador simbólico de un tensor. |
estático <T, U extiende Número> ScatterNdNonAliasingAdd <T> | crear (alcance del alcance , entrada del operando <T>, índices del operando <U>, actualizaciones del operando <T>) Método de fábrica para crear una clase que envuelve una nueva operación ScatterNdNonAliasingAdd. |
Salida <T> | producción () Un `Tensor` con la misma forma que `input`, que contiene valores de `input` actualizados con `updates`. |
Métodos heredados
Métodos públicos
Salida pública <T> como Salida ()
Devuelve el identificador simbólico de un tensor.
Las entradas a las operaciones de TensorFlow son salidas de otra operación de TensorFlow. Este método se utiliza para obtener un identificador simbólico que representa el cálculo de la entrada.
public static ScatterNdNonAliasingAdd <T> create ( alcance del alcance, entrada del operando <T>, índices del operando <U>, actualizaciones del operando <T>)
Método de fábrica para crear una clase que envuelve una nueva operación ScatterNdNonAliasingAdd.
Parámetros
alcance | alcance actual |
---|---|
aporte | Un tensor. |
índices | Un tensor. Debe ser uno de los siguientes tipos: `int32`, `int64`. Un tensor de índices en "entrada". |
actualizaciones | Un tensor. Debe ser del mismo tipo que la ref. Un tensor de valores actualizados para agregar a la "entrada". |
Devoluciones
- una nueva instancia de ScatterNdNonAliasingAdd
Salida pública <T> salida ()
Un `Tensor` con la misma forma que `input`, que contiene valores de `input` actualizados con `updates`.