Funciones que trabajan con vectores de neuronas.
Más...
|
Trabajando con el synaptic weight
|
int | pds_nvector_init_weight_uniform (PdsNVector *NVector, PdsUniform *RV) |
| Inicia aleatoriamente siguiendo una distribución uniforme, los pesos de todas las neuronas del vector. Más...
|
|
int | pds_nvector_init_weight_rand (PdsNVector *NVector, PdsSnReal min, PdsSnReal max) |
| Inicia aleatoriamente siguiendo una distribución uniforme entre min e max en todas las neuronas del vector, usando la funcion rand. Más...
|
|
int | pds_nvector_init_u_uniform (PdsNVector *NVector, PdsUniform *RV) |
| Coloca de forma aleatoria siguiendo una distribucion uniforme, el valor de U de las Neuronas. Más...
|
|
int | pds_nvector_init_u_rand (PdsNVector *NVector, PdsSnReal min, PdsSnReal max) |
| Coloca de forma aleatoria valores entre min y max, en el valor de U de todas las Neuronas, es usada la funcion rand. Más...
|
|
Funciones que trabajan con vectores de neuronas.
Estas funciones trabajan con vectores de neuronas de la forma.
Vector de Neuronas.
◆ pds_nvector_new()
Crea un vector de neuronas de tipo PdsNVector e inicia con cero todos los pesos, U=1.0.
- Parámetros
-
[in] | Nel | Es el número de elementos del vector. |
[in] | Nd | Es el número de entradas de cada neurona del vector. |
- Devuelve
- Un puntero al vector de tipo PdsNVector.
◆ pds_nvector_init_weight_uniform()
int pds_nvector_init_weight_uniform |
( |
PdsNVector * |
NVector, |
|
|
PdsUniform * |
RV |
|
) |
| |
Inicia aleatoriamente siguiendo una distribución uniforme, los pesos de todas las neuronas del vector.
- Parámetros
-
[in,out] | NVector | El vector a escribir. |
[in,out] | RV | Variable aleatoria uniforme. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).
◆ pds_nvector_init_weight_rand()
int pds_nvector_init_weight_rand |
( |
PdsNVector * |
NVector, |
|
|
PdsSnReal |
min, |
|
|
PdsSnReal |
max |
|
) |
| |
Inicia aleatoriamente siguiendo una distribución uniforme entre min e max en todas las neuronas del vector, usando la funcion rand.
- Parámetros
-
[in,out] | NVector | El vector a escribir. |
[in] | min | valor mínimo. |
[in] | max | valor máximo. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: Neuron==NULL).
◆ pds_nvector_init_u_uniform()
int pds_nvector_init_u_uniform |
( |
PdsNVector * |
NVector, |
|
|
PdsUniform * |
RV |
|
) |
| |
Coloca de forma aleatoria siguiendo una distribucion uniforme, el valor de U de las Neuronas.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a escribir. |
[in] | RV | Variable aleatoria uniforme. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL).
◆ pds_nvector_init_u_rand()
int pds_nvector_init_u_rand |
( |
PdsNVector * |
NVector, |
|
|
PdsSnReal |
min, |
|
|
PdsSnReal |
max |
|
) |
| |
Coloca de forma aleatoria valores entre min y max, en el valor de U de todas las Neuronas, es usada la funcion rand.
- Parámetros
-
[in,out] | NVector | El vector de neurons a escribir. |
[in] | min | valor mínimo. |
[in] | max | valor máximo. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL).
◆ pds_nvector_connect_input()
Conecta el valor de salida Y de las Neuronas del vector NVectorBefore con las entradas X[id] de las neuronas del vector NVector.
Si existen mas entradas de NVector que salidas de NVectorBefore las entradas quedan desconectadas cargadas con NULL. Si existen menos entradas de NVector que salidas de NVectorBefore las salidas quedan desconectadas.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a trabajar. |
[in,out] | NVectorBefore | El vector de neuronas que se conectará a las entradas X[id] de NVector. |
- Devuelve
- TRUE si todo fue bien o FALSE si no(ej: NVector==NULL, NVectorBefore==NULL).
◆ pds_nvector_connect_input_with_nivector()
int pds_nvector_connect_input_with_nivector |
( |
PdsNVector * |
NVector, |
|
|
PdsNIVector * |
X |
|
) |
| |
Conecta los elementos del vector X de neuronas de entradas, con las entradas X[id] de las neuronas del vector NVector.
Si existen mas entradas de NVector que elementos de X las entradas quedan desconectadas cargadas con NULL. Si existen menos entradas de NVector que elementos de X los elementos quedan desconectadas.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a trabajar. |
[in,out] | X | El vector que se conectará a las entradas X[id] de NVector. |
- Devuelve
- TRUE si todo fue bien o FALSE si no(ej: NVector==NULL, X==NULL).
◆ pds_nvector_evaluate_theta()
int pds_nvector_evaluate_theta |
( |
PdsNVector * |
NVector | ) |
|
Evalua la variable theta de la Neurona Neuron.
.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a evaluar. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL).
◆ pds_nvector_evaluate_func()
int pds_nvector_evaluate_func |
( |
PdsNVector * |
NVector | ) |
|
Evalua la funcion de activación de las Neuronas de NVector.
.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a evaluar. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL).
◆ pds_nvector_iterate()
Itera las neuronas del vector NVector.
.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a iterar. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL).
◆ pds_nvector_get_output()
int pds_nvector_get_output |
( |
const PdsNVector * |
NVector, |
|
|
PdsVector * |
Y |
|
) |
| |
Devuelve el valor de la salida Y de las Neuronas.
- Parámetros
-
[in] | NVector | El vector de neuronas en consulta. |
[out] | Y | Vector donde se cargará los valores de la salida Y. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL, Y==NULL o tamaños distintos).
◆ pds_nvector_evaluate_diff_error()
int pds_nvector_evaluate_diff_error |
( |
PdsNVector * |
NVector, |
|
|
const PdsVector * |
R |
|
) |
| |
Compara la salida de las neuronas del vector NVector con el vector de referencia R, el resultado es cargado en la salida Y[1] de cada neurona del vector NVector en NVector->V[i]->Y[1].
Los tamaños de los vectores deben ser iguales.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a comparar. |
[in] | R | El vector a comparar. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL).
◆ pds_nvector_get_rms_error()
Evalúa el error cuadrático medio de todos los errores Y[1] de las. neuronas del vector.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a trabajar. |
[in] | RmsError | Valor raíz cuadrático medio. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL).
◆ pds_nvector_get_soft_vote()
Evalúa una votación de todos los valores de salida Y[0] de las neuronas, se realiza una suma simple de todos los valores de salida.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a trabajar. |
[out] | Vote | Valor promedio de la votación suave. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL).
◆ pds_nvector_backpropagate_error()
Retro propaga el error de las neuronas del vector NVector el resultado es cargado en la salida Y[1] de cada neurona del vector NVector conectada a las entradas.
.
Retropropagación del error en las neuronas.
Retropropagación del error en las neuronas.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a retropropagar el error. |
[in] | Alpha | Factor de aprendizaje de los errores. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL).
◆ pds_nvector_update_u_and_weight()
Actualiza los pesos W[k]j de las neuronas.
"ej" es el error de la salida de la j-essima neurona. "func" es la función de activación da neurona.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a actualizar los pesos. |
[in] | Alpha | Factor de aprendizaje de los pesos. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL).
◆ pds_nvector_fprintf()
int pds_nvector_fprintf |
( |
const PdsNVector * |
NVector, |
|
|
FILE * |
fd |
|
) |
| |
Guarda en un archivo de texto los pesos y los valores . Ocupando una linea cada uno, y separando los elementos por un TAB.
- Parámetros
-
[in] | NVector | El vector de neuronas a leer. |
[in,out] | fd | Manejador del fichero a escribir. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL o fd==NULL).
◆ pds_nvector_fscanf()
int pds_nvector_fscanf |
( |
PdsNVector * |
NVector, |
|
|
FILE * |
fd |
|
) |
| |
Lee de un archivo de texto los pesos y los valores . Ocupando una linea cada uno, y separando los elementos por un TAB.
- Parámetros
-
[out] | NVector | El vector a escribir. |
[in,out] | fd | Manejador del fichero a leer. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL o fd==NULL).
◆ pds_nvector_fwrite()
int pds_nvector_fwrite |
( |
const PdsNVector * |
NVector, |
|
|
FILE * |
fd |
|
) |
| |
Guarda en un archivo de texto binario los pesos y los valores .
- Parámetros
-
[in] | NVector | El vector de neuronas a leer. |
[in,out] | fd | Manejador del fichero binario a escribir. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL o fd==NULL).
◆ pds_nvector_fread()
int pds_nvector_fread |
( |
PdsNVector * |
NVector, |
|
|
FILE * |
fd |
|
) |
| |
Lee de un archivo de texto binario los pesos y los valores .
- Parámetros
-
[out] | NVector | El vector a escribir. |
[in,out] | fd | Manejador del fichero binario a leer. |
- Devuelve
- TRUE si todo fue bien o FALSE si no (ej: NVector==NULL o fd==NULL).
◆ pds_nvector_free()
Libera un vector de neuronas de tipo puntero PdsNVector.
- Parámetros
-
[in,out] | NVector | el vector de neuronas a liberar. |
- Devuelve
- No retorna valor.
◆ pds_nvector_destroy()
Libera un vector de neuronas de tipo puntero PdsNVector, y limpia el puntero con NULL.
- Parámetros
-
[in,out] | NVector | El vector de neuronas a liberar y limpiar. |
- Devuelve
- No retorna valor.