35 #include <pds/pdsra.h> 36 #include <pds/pdsrv.h> 37 #include <pds/pdsnn.h> 40 #include "data_work.h" 42 int pds_vector_init_func(PdsVector *V,PdsUniform *RV,
float (*func)(
float));
43 float funcion(
float n);
45 int main(
int argc,
char** argv)
60 RV=pds_uniform_new(-1,1);
67 X=pds_vector_new(Larray[0]);
69 Y=pds_vector_new(Larray[5]);
82 for(i=0;
id<Ntraining;i++)
84 printf(
"\nEntrenamiento %4d: id=%4d\n",i,
id);
87 function_data_work_init_data0(X,Y);
92 function_data_work_init_data1(X,Y);
96 if( (itera==0)&&(iterb==0) )
id++;
103 for(i=0;i<Ntests;i++)
105 function_data_work_init_data1(X,Y);
108 function_octplot_vector_in_png(X,
"n",
"X[n]",
"octfilegood.m",
"xgood.png");
113 for(i=0;i<Ntests;i++)
115 function_data_work_init_data0(X,Y);
118 function_octplot_vector_in_png(X,
"n",
"X[n]",
"octfilebad.m",
"xbad.png");
PdsNnBool pds_neuronml_iterate_results_printf(const PdsNeuronML *MLayer, const char *Type)
Muestra los resultados de la iteración de la red neuronal multicapa NeuronML.
int pds_neuronml_set_max_error(PdsNeuronML *NeuronML, PdsNnReal MaxError)
Coloca el maximo margen error RMS aceptado en la salida de la estructura PdsNeuronML.
int pds_neuronml_init_weight_uniform(PdsNeuronML *NeuronML, PdsUniform *RV)
Inicializa todos los pesos usando una variable aleatoria uniforme.
PdsNeuronML * pds_neuronml_new_from_array(const PdsNnNatural *L, PdsNnNatural Nel)
Crea una estructura de tipo PdsNeuronML.
int pds_neuronml_set_alpha(PdsNeuronML *NeuronML, PdsNnReal Alpha)
Coloca el valor del factor de aprendizaje Alpha.
La estructura tipo PdsNeuronML . Esta estructura genera una red neuronal multi capa. Para usar incluir pds/pdsnn.h.
void pds_neuronml_free(PdsNeuronML *NeuronML)
Libera una neurona de tipo puntero PdsNeuronML.
int pds_neuronml_set_max_iterations(PdsNeuronML *NeuronML, PdsNnNatural MaxIter)
Coloca el máximo numero de iteraciones aceptado, cualquier valor mayor provoca que se detenga el algo...
unsigned int PdsNnNatural
int pds_neuronml_iterate(PdsNeuronML *NeuronML, const PdsVector *Input, PdsVector *Output)
Itera la red neuronal multicapa NeuronML. .
int pds_neuronml_training(PdsNeuronML *NeuronML, const PdsVector *Input, PdsVector *Output)
Entrena la red neuronal multicapa NeuronML. Usa el valor de Output como entrenamiento, para finalizar carga el nuevo valor de salida en Output.
int pds_neuronml_init_u_uniform(PdsNeuronML *NeuronML, PdsUniform *RV)
Inicializa todos los umbrales U usando una variable aleatoria uniforme.
PdsNnNatural pds_neuronml_training_results_printf(PdsNeuronML *MLayer, const char *Type)
Muestra los resultados del entrenamiento de la red neuronal multicapa NeuronML.