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

Capa de activación Softmax. Convierte un vector de valores en probabilidades las cualesal ser sumadas resultan en 1. Se aplica por fila (una muestra a la vez). No tiene parámetros entrenables. More...

#include <activation.h>

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

Public Member Functions

auto forward (const algebra::Tensor< T, 2 > &z) -> algebra::Tensor< T, 2 > override
 Propagación hacia adelante: aplica Softmax por fila.
auto backward (const algebra::Tensor< T, 2 > &g) -> algebra::Tensor< T, 2 > override
 Propagación hacia atrás con el gradiente de Softmax. Usa la derivada de Softmax con respecto a su entrada.
auto id () const -> LayerId override
 Identificador único de la capa Softmax.
Public Member Functions inherited from utec::neural_network::ILayer< T >
virtual ~ILayer ()=default
 Destructor virtual.
virtual void update_params (IOptimizer< T > &optimizer)
 Actualiza los parámetros internos de la capa (si tiene).
virtual void save (std::ostream &out) const
 Guarda los parámetros internos de la capa en un flujo binario.

Detailed Description

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

Capa de activación Softmax. Convierte un vector de valores en probabilidades las cualesal ser sumadas resultan en 1. Se aplica por fila (una muestra a la vez). No tiene parámetros entrenables.

Template Parameters
TTipo de dato (usualmente float o double).

Member Function Documentation

◆ backward()

template<typename T>
auto utec::neural_network::Softmax< T >::backward ( const algebra::Tensor< T, 2 > & g) -> algebra::Tensor<T, 2>
inlineoverridevirtual

Propagación hacia atrás con el gradiente de Softmax. Usa la derivada de Softmax con respecto a su entrada.

Parameters
gGradiente de la siguiente capa.
Returns
Gradiente respecto a la entrada de esta capa. @complexity O(n*m*m), dado el tensor z de tamaño n*m, se recorren todas las filas una vez, y por cada fila se recorren sus columnas, y por cada una de estas columnas se recorren las columnas otra vez.

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

◆ forward()

template<typename T>
auto utec::neural_network::Softmax< T >::forward ( const algebra::Tensor< T, 2 > & z) -> algebra::Tensor<T, 2>
inlineoverridevirtual

Propagación hacia adelante: aplica Softmax por fila.

Parameters
zTensor de entrada.
Returns
Tensor con probabilidades (por fila). @complexity O(n*m), dado el tensor z de tamaño n*m, se recorren todas las filas una vez, y por cada fila se recorren sus columnas dos veces no anidadas.

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

◆ id()

template<typename T>
auto utec::neural_network::Softmax< T >::id ( ) const -> LayerId
inlinenodiscardoverridevirtual

Identificador único de la capa Softmax.

Returns
LayerID::Softmax (o bien 3) @complexity O(1).

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


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