Proyecto Final - Turinmachin
Recreación del minijuego de matemáticas de Brain-Age usando redes neuronales
Loading...
Searching...
No Matches
utec::neural_network::Adam< T > Class Template Referencefinal

Optimizador Adam (Adaptive Moment Estimation). Combina momentum y RMSProp para un aprendizaje más estable y rápido. More...

#include <optimizer.h>

Inheritance diagram for utec::neural_network::Adam< T >:
Collaboration diagram for utec::neural_network::Adam< T >:

Public Member Functions

 Adam (T learning_rate=0.001, T beta1=0.9, T beta2=0.999, T epsilon=1e-8)
 Constructor de Adam con parámetros configurables.
void update (algebra::Tensor< T, 2 > &params, const algebra::Tensor< T, 2 > &grads) override
 Actualiza los parámetros del modelo usando el algoritmo de Adam.
void step () override
 Incrementa el contador de pasos. Es importante para las correcciones de sesgo de Adam. @complexity O(1)
Public Member Functions inherited from utec::neural_network::IOptimizer< T >
virtual ~IOptimizer ()=default
 Destructor virtual.

Detailed Description

template<typename T>
class utec::neural_network::Adam< T >

Optimizador Adam (Adaptive Moment Estimation). Combina momentum y RMSProp para un aprendizaje más estable y rápido.

Template Parameters
TTipo de dato (float, double, etc.).

Constructor & Destructor Documentation

◆ Adam()

template<typename T>
utec::neural_network::Adam< T >::Adam ( T learning_rate = 0.001,
T beta1 = 0.9,
T beta2 = 0.999,
T epsilon = 1e-8 )
inlineexplicit

Constructor de Adam con parámetros configurables.

Parameters
learning_rateTasa de aprendizaje.
beta1Coeficiente para el promedio del primer momento.
beta2Coeficiente para el promedio del segundo momento.
epsilonValor pequeño para estabilizar la división. @complexity O(1)

Member Function Documentation

◆ step()

template<typename T>
void utec::neural_network::Adam< T >::step ( )
inlineoverridevirtual

Incrementa el contador de pasos. Es importante para las correcciones de sesgo de Adam. @complexity O(1)

Reimplemented from utec::neural_network::IOptimizer< T >.

Here is the caller graph for this function:

◆ update()

template<typename T>
void utec::neural_network::Adam< T >::update ( algebra::Tensor< T, 2 > & params,
const algebra::Tensor< T, 2 > & grads )
inlineoverridevirtual

Actualiza los parámetros del modelo usando el algoritmo de Adam.

Parameters
paramsParámetros actuales.
gradsGradientes correspondientes. @complexity O(n*m), donde n*m es el tamaño de los tensores. Incluye: operaciones de actualización para m, v, normalización con m̂ y v̂, y la división final.

Implements utec::neural_network::IOptimizer< T >.

Here is the call graph for this function:

The documentation for this class was generated from the following file: