Home | Develop | Download | Contact
Estructuras de datos
Módulo PdsNeuron.

Funciones que trabajan con neuronas. Más...

Estructuras de datos

struct  PdsNeuron
 La estructura tipo PdsNeuron . Esta estructura genera una neurona de Nel entradas. Más...
 

pds_neuron_new

Creando nuevas neuronas

PdsNeuron.png
Neurona de n=Nel entradas.


PdsNeuronpds_neuron_new (PdsSnNatural Nel)
 Crea una neurona de tipo PdsNeuron de Nel entradas. Más...
 
PdsNeuronpds_neuron_new_with_params (PdsSnNatural Nel, PdsSnReal W, PdsSnReal U, double(*func)(double), double(*dfunc)(double))
 Crea una neurona de tipo PdsNeuron de Nel entradas. Más...
 

pds_neuron_<connect_input_methods>

Conectando datos.

int pds_neuron_connect_input (PdsNeuron *Neuron, PdsSnNatural id, PdsNeuron *NeuronX)
 Conecta el valor de salida Y de la Neurona NeuronX con la entrada X[id] de la neurona Neuron. Más...
 
int pds_neuron_connect_input_with_ninput (PdsNeuron *Neuron, PdsSnNatural id, PdsNInput *NInput)
 Conecta el valor de salida Y de la neurona de entrada NInput con la entrada X[id] de la neurona Neuron. Más...
 
int pds_neuron_connect_input_with_nivector (PdsNeuron *Neuron, const PdsNIVector *NIVector)
 Conecta el valor de salida Y de las neuronas NIVector con la entrada X[id] de la neurona Neuron. Más...
 

pds_neuron_<get_set_input_methods>

Trabajando con las entradas

const PdsSnRealpds_neuron_get_dendrite (const PdsNeuron *Neuron, PdsSnNatural id)
 Devuelve la dirección de la entrada X[id] de la Neurona. Más...
 
int pds_neuron_get_input (const PdsNeuron *Neuron, PdsSnNatural id, PdsSnReal *m)
 Devuelve el valor de la entrada X[id] de la Neurona. Más...
 

pds_neuron_<weight_methods>

Trabajando con el synaptic_weight

int pds_neuron_get_weight (const PdsNeuron *Neuron, PdsSnNatural x, PdsSnReal *m)
 Devuelve el valor en la posición (x) del vector de pesos de la Neurona. (x) inicia con (0). Más...
 
int pds_neuron_set_weight (PdsNeuron *Neuron, PdsSnNatural x, PdsSnReal m)
 Escribe el valor m en la posición (x) del vector de pesos de la Neurona. (x) inicia con (0). Más...
 
int pds_neuron_init_weight (PdsNeuron *Neuron, PdsSnReal m)
 Inicia el vector de pesos de la Neurona. Más...
 
int pds_neuron_init_weight_rand (PdsNeuron *Neuron, PdsSnReal min, PdsSnReal max)
 Inicia el vector de pesos de la Neurona con valores aleatorios uniformemente distribuido entre min y max. Más...
 
int pds_neuron_init_u_and_weight_rand (PdsNeuron *Neuron, PdsSnReal min, PdsSnReal max)
 Inicia el vector de pesos y U de la Neurona con valores aleatorios uniformemente distribuido entre min y max. Más...
 
int pds_neuron_printf_weight (const PdsNeuron *Neuron)
 Imprime los valores de los pesos en la Neurona. Más...
 
int pds_neuron_printf_u_and_weight (const PdsNeuron *Neuron)
 Imprime los valores de U y los pesos en la Neurona. Más...
 
int pds_neuron_get_number_of_inputs (const PdsNeuron *Neuron, PdsSnNatural *Nelements)
 Devuelve el número de entradas de la Neurona. Más...
 

pds_neuron_<u_methods>

Trabajando con el valor U

int pds_neuron_get_u (const PdsNeuron *Neuron, PdsSnReal *U)
 Devuelve el valor de U de la Neurona. Más...
 
int pds_neuron_set_u (PdsNeuron *Neuron, PdsSnReal U)
 Coloca el valor de U de la Neurona. Más...
 

pds_neuron_<evaluate>

Trabajando con la

int pds_neuron_evaluate_theta (PdsNeuron *Neuron)
 Evalua la variable theta de la Neurona Neuron.

\[ \theta=\sum_{i=0}^{N_{el}-1}{W[i]X[i]} - U \]

. Más...

 
int pds_neuron_evaluate_func (PdsNeuron *Neuron)
 Actualiza el valor a la salida de la Neurona Neuron.

\[ Y=func\left(\theta\right) \]

Adicionalmente (Neuron->Y[1]=0)

\[ e=0 \]

. Más...

 
int pds_neuron_iterate (PdsNeuron *Neuron)
 Itera la Neurona Neuron.

\[ \theta=\sum_{i=0}^{N_{el}-1}{W[i]X[i]} - U \]

\[ func\left(\theta\right) \]

\[ Y=func\left(\theta\right) \]

Adicionalmente (Neuron->Y[1]=0)

\[ e=0 \]

. Más...

 

pds_neuron_<output_methods>

Obteniendo datos.

const PdsSnRealpds_neuron_get_axon (const PdsNeuron *Neuron)
 Devuelve la dirección del axon (salida) de la Neurona. Más...
 
int pds_neuron_get_output (const PdsNeuron *Neuron, PdsSnReal *m)
 Devuelve el valor de la salida Y de la Neurona. Más...
 

pds_neuron_<others_methods>

Trabajando con la

int pds_neuron_evaluate_diff_error (PdsNeuron *Neuron, PdsSnReal y)
 Compara el valor de salida $Y$ de la neurona, con "y", luego lo carga en la variable Y[1] de la neurona (Neuron->Y[1]=y-Neuron->Y[0]).

\[ e= y - Y\]

. Más...

 
int pds_neuron_backpropagate_error (PdsNeuron *Neuron, PdsSnReal Alpha)
 Propaga el error de la salida de la neurona hacia las neuronas conectadas a sus entradas.

\[ e = e_{\{Y\}} \]

\[ e_i = e_{\{X[i]\}} \]

\[ e_i \leftarrow e_i + func'\left(\theta\right)W[i]e\]

. Más...

 

pds_neuron_<update_weight>

Atualizando peso de las neuronas.

int pds_neuron_update_weight (PdsNeuron *Neuron, PdsSnReal Alpha)
 Actualiza los pesos W[i] de la neurona (using the Delta rule).

\[ e = r-Y\]

\[ \triangle W[i]= \alpha func'\left(\theta\right) X[i] e\]

"e" es el error de la salida de la neurona Neuron :Neuron->Y[1].
"Y" salida de la neurona Neuron :Neuron->Y[0].
"func" es la función de activación da neurona Neuron.
"X" Vector con los valores de todas las entradas de la neurona.
Más...

 
int pds_neuron_update_u_and_weight (PdsNeuron *Neuron, PdsSnReal Alpha)
 Actualiza los pesos W[i] de la neurona (using the Delta rule).

\[ e = r-Y\]

\[ \triangle W[i]= \alpha func'\left(\theta\right) X[i] e\]

\[ \triangle U= -\alpha func'\left(\theta\right) e\]

"e" es el error de la salida de la neurona Neuron :Neuron->Y[1].
"Y" salida de la neurona Neuron :Neuron->Y[0].
"func" es la función de activación da neurona Neuron.
"X" Vector con los valores de todas las entradas de la neurona.
Más...

 
int pds_neuron_get_xtx (PdsNeuron *Neuron, PdsSnReal *XtX)
 Devuelve la suma cuadrática de los valores de entrada de la neurona.

\[ X^T X=\sum^{Nel-1}_{i=0} X[i]^2 \]

. Más...

 
int pds_neuron_update_u_and_weight_normalized (PdsNeuron *Neuron, PdsSnReal Alpha)
 Actualiza los pesos W[i] de la neurona (using the Delta rule).

\[ e = r-Y\]

\[ \triangle W[i]= \alpha func'\left(\theta\right) \frac{X[i]}{X^TX+1} e \]

\[ \triangle U= -\alpha func'\left(\theta\right) \frac{1}{X^TX+1} e \]

"e" es el error de la salida de la neurona Neuron :Neuron->Y[1].
"Y" salida de la neurona Neuron :Neuron->Y[0].
"func" es la función de activación da neurona Neuron.
"X" Vector con los valores de todas las entradas de la neurona.
Más...

 

pds_neuron_<printf>

Imprimeindo y leyendo datos.

int pds_neuron_fprintf (const PdsNeuron *Neuron, FILE *fd)
 Guarda en un archivo de texto los pesos {W[i]} y {U}. Ocupando una linea cada uno, y separando los elementos por un TAB. Más...
 
int pds_neuron_fscanf (PdsNeuron *Neuron, FILE *fd)
 Lee de un archivo de texto los pesos {W[i]} y {U}. Ocupando una linea cada uno, y separando los elementos por un TAB. Más...
 
int pds_neuron_fwrite (const PdsNeuron *Neuron, FILE *fd)
 Guarda en un archivo binario los pesos W[i], el valor de U. Más...
 
int pds_neuron_fread (PdsNeuron *Neuron, FILE *fd)
 Lee de un archivo binario los pesos W[i], el valor de U. Más...
 

pds_neuron_<free>

Limpiando memoria.

void pds_neuron_free (PdsNeuron *Neuron)
 Libera una neurona de tipo puntero PdsNeuron. Más...
 
void pds_neuron_destroy (PdsNeuron **Neuron)
 Libera una neurona de tipo puntero PdsNeuron, y limpia el puntero con NULL. Más...
 

Descripción detallada

Funciones que trabajan con neuronas.


Estas funciones trabajan con una neurona de la forma.

PdsNeuron.png
Neurona de n=Nel entradas.

Documentación de las funciones

◆ pds_neuron_new()

PdsNeuron * pds_neuron_new ( PdsSnNatural  Nel)

Crea una neurona de tipo PdsNeuron de Nel entradas.

Los valores por defecto son :

\[ U=1.0 \]

\[ func(x)=tanh\left(\frac{x}{2}\right) \]

Parámetros
[in]NelEs el número de entradas de la neurona.
Devuelve
Un puntero al vector de tipo PdsNeuron.
Ejemplos:
example_neuron.c.

◆ pds_neuron_new_with_params()

PdsNeuron * pds_neuron_new_with_params ( PdsSnNatural  Nel,
PdsSnReal  W,
PdsSnReal  U,
double(*)(double)  func,
double(*)(double)  dfunc 
)

Crea una neurona de tipo PdsNeuron de Nel entradas.

Parámetros
[in]NelEs el número de entradas de la neurona.
[in]WPeso inicial de todas las entradas
[in]UUmbral de disparo.
[in]funcFunción de activación.
[in]dfuncDerivada de la función de activación.
Devuelve
Un puntero al vector de tipo PdsNeuron.

◆ pds_neuron_connect_input()

int pds_neuron_connect_input ( PdsNeuron Neuron,
PdsSnNatural  id,
PdsNeuron NeuronX 
)

Conecta el valor de salida Y de la Neurona NeuronX con la entrada X[id] de la neurona Neuron.

Parámetros
[in,out]NeuronLa neurona a trabajar.
[in]idLa posición a conectar, id tiene que ser menor que Nel.
[in]NeuronXNeurona que se conectará a la entrada X[id] de Neuron.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_connect_input_with_ninput()

int pds_neuron_connect_input_with_ninput ( PdsNeuron Neuron,
PdsSnNatural  id,
PdsNInput NInput 
)

Conecta el valor de salida Y de la neurona de entrada NInput con la entrada X[id] de la neurona Neuron.

Parámetros
[in,out]NeuronLa neurona a trabajar.
[in]idLa posición a conectar, id tiene que ser menor que Nel.
[in]NInputLa neurona de entrada que se conectará a la entrada X[id] de Neuron.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_connect_input_with_nivector()

int pds_neuron_connect_input_with_nivector ( PdsNeuron Neuron,
const PdsNIVector NIVector 
)

Conecta el valor de salida Y de las neuronas NIVector con la entrada X[id] de la neurona Neuron.

Parámetros
[in,out]NeuronLa neurona a trabajar.
[in]NIVectorVector de neuronas de entrada que se conectará a la entrada X[id] de Neuron.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL, Neuron->Nel!=NInput->Nel).
Ejemplos:
example_neuron.c.

◆ pds_neuron_get_dendrite()

const PdsSnReal * pds_neuron_get_dendrite ( const PdsNeuron Neuron,
PdsSnNatural  id 
)

Devuelve la dirección de la entrada X[id] de la Neurona.

Parámetros
[in]NeuronLa neurona en consulta.
[in]idLa posición a consultar, id tiene que ser menor que Nel.
Devuelve
La dirección de la entrada X[id] o NULL en caso de error (ej: Neuron==NULL).

◆ pds_neuron_get_input()

int pds_neuron_get_input ( const PdsNeuron Neuron,
PdsSnNatural  id,
PdsSnReal m 
)

Devuelve el valor de la entrada X[id] de la Neurona.

Parámetros
[in]NeuronLa neurona en consulta.
[in]idLa posición a consultar, id tiene que ser menor que Nel.
[out]mDonde se cargará el valor de la entrada X[id].
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_get_weight()

int pds_neuron_get_weight ( const PdsNeuron Neuron,
PdsSnNatural  x,
PdsSnReal m 
)

Devuelve el valor en la posición (x) del vector de pesos de la Neurona. (x) inicia con (0).

Parámetros
[in]NeuronLa neurona en consulta.
[in]xPosición x, el primer valor de x es cero.
[out]mEl valor en la posición (x), en caso de error por fuera de rango (x) entonces carga 0 en m, en caso de error de vector nulo carga cero en m.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_set_weight()

int pds_neuron_set_weight ( PdsNeuron Neuron,
PdsSnNatural  x,
PdsSnReal  m 
)

Escribe el valor m en la posición (x) del vector de pesos de la Neurona. (x) inicia con (0).

Parámetros
[in,out]NeuronLa neurona a escribir.
[in]xPosición x, el primer valor de x es cero.
[in]mEl valor en la posición (x), en caso de error por fuera de rango (x) entonces no hace nada y no se considera como error.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_init_weight()

int pds_neuron_init_weight ( PdsNeuron Neuron,
PdsSnReal  m 
)

Inicia el vector de pesos de la Neurona.

Parámetros
[in,out]NeuronLa neurona a escribir.
[in]mEl valor de los pesos de la neurona.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_init_weight_rand()

int pds_neuron_init_weight_rand ( PdsNeuron Neuron,
PdsSnReal  min,
PdsSnReal  max 
)

Inicia el vector de pesos de la Neurona con valores aleatorios uniformemente distribuido entre min y max.

Parámetros
[in,out]NeuronLa neurona a escribir.
[in]minEl minimo valor encontrado en los pesos de la neurona.
[in]maxEl minimo valor encontrado en los pesos de la neurona.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_init_u_and_weight_rand()

int pds_neuron_init_u_and_weight_rand ( PdsNeuron Neuron,
PdsSnReal  min,
PdsSnReal  max 
)

Inicia el vector de pesos y U de la Neurona con valores aleatorios uniformemente distribuido entre min y max.

Parámetros
[in,out]NeuronLa neurona a escribir.
[in]minEl minimo valor encontrado en los pesos de la neurona.
[in]maxEl minimo valor encontrado en los pesos de la neurona.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).
Ejemplos:
example_neuron.c.

◆ pds_neuron_printf_weight()

int pds_neuron_printf_weight ( const PdsNeuron Neuron)

Imprime los valores de los pesos en la Neurona.

Parámetros
[in]NeuronLa neurona en consulta.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_printf_u_and_weight()

int pds_neuron_printf_u_and_weight ( const PdsNeuron Neuron)

Imprime los valores de U y los pesos en la Neurona.

Parámetros
[in]NeuronLa neurona en consulta.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).
Ejemplos:
example_neuron.c.

◆ pds_neuron_get_number_of_inputs()

int pds_neuron_get_number_of_inputs ( const PdsNeuron Neuron,
PdsSnNatural Nelements 
)

Devuelve el número de entradas de la Neurona.

Parámetros
[in]NeuronLa neurona en consulta.
[out]NelementsEn donde se guardará el número de entradas de la neurona.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_get_u()

int pds_neuron_get_u ( const PdsNeuron Neuron,
PdsSnReal U 
)

Devuelve el valor de U de la Neurona.

Parámetros
[in]NeuronLa neurona en consulta.
[out]UEn donde se guardará el valor de U de la neurona.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_set_u()

int pds_neuron_set_u ( PdsNeuron Neuron,
PdsSnReal  U 
)

Coloca el valor de U de la Neurona.

Parámetros
[in,out]NeuronLa neurona a escribir.
[in]UEl valor de U de la neurona.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_evaluate_theta()

int pds_neuron_evaluate_theta ( PdsNeuron Neuron)

Evalua la variable theta de la Neurona Neuron.

\[ \theta=\sum_{i=0}^{N_{el}-1}{W[i]X[i]} - U \]

.

Valores de entrada apuntadas a NULL no son consideradas en la suma.

Parámetros
[in,out]NeuronLa neurona a evaluar.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_evaluate_func()

int pds_neuron_evaluate_func ( PdsNeuron Neuron)

Actualiza el valor a la salida de la Neurona Neuron.

\[ Y=func\left(\theta\right) \]

Adicionalmente (Neuron->Y[1]=0)

\[ e=0 \]

.

Parámetros
[in,out]NeuronLa neurona a evaluar.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_iterate()

int pds_neuron_iterate ( PdsNeuron Neuron)

Itera la Neurona Neuron.

\[ \theta=\sum_{i=0}^{N_{el}-1}{W[i]X[i]} - U \]

\[ func\left(\theta\right) \]

\[ Y=func\left(\theta\right) \]

Adicionalmente (Neuron->Y[1]=0)

\[ e=0 \]

.

Parámetros
[in,out]NeuronLa neurona a iterar.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).
Ejemplos:
example_neuron.c.

◆ pds_neuron_get_axon()

const PdsSnReal * pds_neuron_get_axon ( const PdsNeuron Neuron)

Devuelve la dirección del axon (salida) de la Neurona.

Parámetros
[in]NeuronLa neurona en consulta.
Devuelve
La dirección del axon (salida) o NULL en caso de error (ej: Neuron==NULL).

◆ pds_neuron_get_output()

int pds_neuron_get_output ( const PdsNeuron Neuron,
PdsSnReal m 
)

Devuelve el valor de la salida Y de la Neurona.

Parámetros
[in]NeuronLa neurona en consulta.
[out]mDonde se cargará el valor de la salida Y.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).
Ejemplos:
example_neuron.c.

◆ pds_neuron_evaluate_diff_error()

int pds_neuron_evaluate_diff_error ( PdsNeuron Neuron,
PdsSnReal  y 
)

Compara el valor de salida $Y$ de la neurona, con "y", luego lo carga en la variable Y[1] de la neurona (Neuron->Y[1]=y-Neuron->Y[0]).

\[ e= y - Y\]

.

Parámetros
[in,out]NeuronLa neurona a evaluar.
[in]yValor a comparar.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).
Ejemplos:
example_neuron.c.

◆ pds_neuron_backpropagate_error()

int pds_neuron_backpropagate_error ( PdsNeuron Neuron,
PdsSnReal  Alpha 
)

Propaga el error de la salida de la neurona hacia las neuronas conectadas a sus entradas.

\[ e = e_{\{Y\}} \]

\[ e_i = e_{\{X[i]\}} \]

\[ e_i \leftarrow e_i + func'\left(\theta\right)W[i]e\]

.

backpropagation.png
Backpropagation


backpropagation2.png
Backpropagation


"e" es el error de la salida de la neurona Neuron :Neuron->Y[1].
"func" es la función de activación da neurona Neuron.

Parámetros
[in,out]NeuronLa neurona a retropropagar el error.
[in]AlphaFactor de aprendizaje de los errores.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_update_weight()

int pds_neuron_update_weight ( PdsNeuron Neuron,
PdsSnReal  Alpha 
)

Actualiza los pesos W[i] de la neurona (using the Delta rule).

\[ e = r-Y\]

\[ \triangle W[i]= \alpha func'\left(\theta\right) X[i] e\]

"e" es el error de la salida de la neurona Neuron :Neuron->Y[1].
"Y" salida de la neurona Neuron :Neuron->Y[0].
"func" es la función de activación da neurona Neuron.
"X" Vector con los valores de todas las entradas de la neurona.

Parámetros
[in,out]NeuronLa neurona a actualizar los pesos.
[in]AlphaFactor de aprendizaje de los pesos.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_update_u_and_weight()

int pds_neuron_update_u_and_weight ( PdsNeuron Neuron,
PdsSnReal  Alpha 
)

Actualiza los pesos W[i] de la neurona (using the Delta rule).

\[ e = r-Y\]

\[ \triangle W[i]= \alpha func'\left(\theta\right) X[i] e\]

\[ \triangle U= -\alpha func'\left(\theta\right) e\]

"e" es el error de la salida de la neurona Neuron :Neuron->Y[1].
"Y" salida de la neurona Neuron :Neuron->Y[0].
"func" es la función de activación da neurona Neuron.
"X" Vector con los valores de todas las entradas de la neurona.

Parámetros
[in,out]NeuronLa neurona a actualizar los pesos.
[in]AlphaFactor de aprendizaje de los pesos.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).
Ejemplos:
example_neuron.c.

◆ pds_neuron_get_xtx()

int pds_neuron_get_xtx ( PdsNeuron Neuron,
PdsSnReal XtX 
)

Devuelve la suma cuadrática de los valores de entrada de la neurona.

\[ X^T X=\sum^{Nel-1}_{i=0} X[i]^2 \]

.

Parámetros
[in,out]NeuronLa neurona en consulta.
[in]XtXDonde se cargará la suma cuadrática.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_update_u_and_weight_normalized()

int pds_neuron_update_u_and_weight_normalized ( PdsNeuron Neuron,
PdsSnReal  Alpha 
)

Actualiza los pesos W[i] de la neurona (using the Delta rule).

\[ e = r-Y\]

\[ \triangle W[i]= \alpha func'\left(\theta\right) \frac{X[i]}{X^TX+1} e \]

\[ \triangle U= -\alpha func'\left(\theta\right) \frac{1}{X^TX+1} e \]

"e" es el error de la salida de la neurona Neuron :Neuron->Y[1].
"Y" salida de la neurona Neuron :Neuron->Y[0].
"func" es la función de activación da neurona Neuron.
"X" Vector con los valores de todas las entradas de la neurona.

Parámetros
[in,out]NeuronLa neurona a actualizar los pesos.
[in]AlphaFactor de aprendizaje de los pesos.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).

◆ pds_neuron_fprintf()

int pds_neuron_fprintf ( const PdsNeuron Neuron,
FILE *  fd 
)

Guarda en un archivo de texto los pesos {W[i]} y {U}. Ocupando una linea cada uno, y separando los elementos por un TAB.

Parámetros
[in]NeuronLa neurona a leer.
[in,out]fdManejador del fichero a escribir.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: NVector==NULL o fd==NULL).

◆ pds_neuron_fscanf()

int pds_neuron_fscanf ( PdsNeuron Neuron,
FILE *  fd 
)

Lee de un archivo de texto los pesos {W[i]} y {U}. Ocupando una linea cada uno, y separando los elementos por un TAB.

Parámetros
[out]NeuronLa neurona a escribir.
[in,out]fdManejador del fichero a leer.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: NVector==NULL o fd==NULL).

◆ pds_neuron_fwrite()

int pds_neuron_fwrite ( const PdsNeuron Neuron,
FILE *  fd 
)

Guarda en un archivo binario los pesos W[i], el valor de U.

Parámetros
[in]NeuronLa neurona a leer.
[in,out]fdManejador del fichero binario a escribir.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: NVector==NULL o fd==NULL).

◆ pds_neuron_fread()

int pds_neuron_fread ( PdsNeuron Neuron,
FILE *  fd 
)

Lee de un archivo binario los pesos W[i], el valor de U.

Parámetros
[out]NeuronLa neurona a escribir.
[in,out]fdManejador del fichero binario a leer.
Devuelve
TRUE si todo fue bien o FALSE si no (ej: NVector==NULL o fd==NULL).

◆ pds_neuron_free()

void pds_neuron_free ( PdsNeuron Neuron)

Libera una neurona de tipo puntero PdsNeuron.

Parámetros
[in,out]NeuronLa neurona a liberar.
Devuelve
No retorna valor.

◆ pds_neuron_destroy()

void pds_neuron_destroy ( PdsNeuron **  Neuron)

Libera una neurona de tipo puntero PdsNeuron, y limpia el puntero con NULL.

Parámetros
[in,out]NeuronLa neurona a liberar y limpiar.
Devuelve
No retorna valor.
Ejemplos:
example_neuron.c.

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed