/* * Scale input and output data based on previously calculated parameters. */ FANN_EXTERNAL void FANN_API fann_scale_train( struct fann *ann, struct fann_train_data *data ) { unsigned cur_sample; if(ann->scale_mean_in == NULL) { fann_error( (struct fann_error *) ann, FANN_E_SCALE_NOT_PRESENT ); return; } /* Check that we have good training data. */ if(fann_check_input_output_sizes(ann, data) == -1) return; for( cur_sample = 0; cur_sample < data->num_data; cur_sample++ ) { fann_scale_input( ann, data->input[ cur_sample ] ); fann_scale_output( ann, data->output[ cur_sample ] ); } }
/* * Scale input and output data based on previously calculated parameters. */ FANN_EXTERNAL void FANN_API fann_scale_train( struct fann *ann, struct fann_train_data *data ) { unsigned cur_sample; if(ann->scale_mean_in == NULL) { fann_error( (struct fann_error *) ann, FANN_E_SCALE_NOT_PRESENT ); return; } /* Check that we have good training data. */ /* No need for if( !params || !ann ) */ if( data->num_input != ann->num_input || data->num_output != ann->num_output ) { fann_error( (struct fann_error *) ann, FANN_E_TRAIN_DATA_MISMATCH ); return; } for( cur_sample = 0; cur_sample < data->num_data; cur_sample++ ) { fann_scale_input( ann, data->input[ cur_sample ] ); fann_scale_output( ann, data->output[ cur_sample ] ); } }