Agrega operaciones para calcular las derivadas parciales de la suma de y
s wrt x
s, es decir, d(y_1 + y_2 + ...)/dx_1, d(y_1 + y_2 + ...)/dx_2...
Si se establecen los valores de Options.dx()
, son las derivadas parciales simbólicas iniciales de alguna función de pérdida L
wrt y
. Options.dx()
debe tener el tamaño de y
.
Si no se establece Options.dx()
, la implementación utilizará dx de OnesLike
para todas las formas en y
.
Las derivadas parciales se devuelven en la salida dy
, con el tamaño de x
.
Ejemplo de uso:
Gradients gradients = Gradients.create(scope, Arrays.asList(loss), Arrays.asList(w, b));
Constant<Float> alpha = ops.constant(1.0f, Float.class);
ApplyGradientDescent.create(scope, w, alpha, gradients.<Float>dy(0));
ApplyGradientDescent.create(scope, b, alpha, gradients.<Float>dy(1));
Clases anidadas
clase | Degradados.Opciones | Atributos opcionales para Gradients |
Métodos públicos
gradientes estáticos | crear ( Alcance alcance, Operando <?> y, Iterable<? extiende Operando <?>> x, Opciones... opciones) Agrega operaciones de cálculo de gradientes al gráfico según el alcance. |
gradientes estáticos | crear ( Alcance alcance, Iterable<? extiende Operando <?>> y, Iterable<? extiende Operando <?>> x, Opciones... opciones) Agrega operaciones de cálculo de gradientes al gráfico según el alcance. |
Degradados estáticos. Opciones | dx (Iterable<? extiende el operando <?>> dx) |
<T> Salida <T> | dy (índice int) Devuelve un identificador simbólico a una de las salidas de la operación de gradiente. Advertencia: No comprueba que el tipo de tensor coincida con T. |
Lista< Salida <?>> | dy () Derivadas parciales de y s wrt |
Iterador< Operando <?>> | iterador () |
Métodos heredados
Métodos públicos
Creación de gradientes estáticos públicos ( alcance alcance, operando <?> y, iterable<? extiende operando <?>> x, opciones... opciones)
Agrega operaciones de cálculo de gradientes al gráfico según el alcance.
Esta es una versión simplificada de create(Scope, Iterable, Iterable, Options)
donde y
es una salida única.
Parámetros
alcance | alcance del gráfico actual |
---|---|
y | salida de la función para derivar |
incógnita | entradas de la función para la cual se calculan las derivadas parciales |
opciones | lleva valores de atributos opcionales |
Devoluciones
- una nueva instancia de
Gradients
Lanza
Excepción de argumento ilegal | si el entorno de ejecución no es un gráfico |
---|
Creación de gradientes estáticos públicos ( alcance alcance, Iterable<? extiende Operando <?>> y, Iterable<? extiende Operando <?>> x, Opciones... opciones)
Agrega operaciones de cálculo de gradientes al gráfico según el alcance.
Parámetros
alcance | alcance del gráfico actual |
---|---|
y | salidas de la función a derivar |
incógnita | entradas de la función para la cual se calculan las derivadas parciales |
opciones | lleva valores de atributos opcionales |
Devoluciones
- una nueva instancia de
Gradients
Lanza
Excepción de argumento ilegal | si el entorno de ejecución no es un gráfico |
---|
Gradientes estáticos públicos. Opciones dx (Iterable<? extiende Operando <?>> dx)
Parámetros
dx | derivadas parciales de alguna función de pérdida L wrt y |
---|
Devoluciones
- constructor para agregar más opciones a esta operación
Salida pública <T> dy (índice int)
Devuelve un identificador simbólico a una de las salidas de la operación de gradiente.
Advertencia: no comprueba que el tipo de tensor coincida con T. Se recomienda llamar a este método con un parámetro de tipo explícito en lugar de permitir que se infiera, por ejemplo gradients.<Float>dy(0)
Parámetros
índice | El índice de la salida entre los gradientes agregados por esta operación. |
---|