I see that the maximum bit fails and the error rate does not change

I am new to using FANN and trying to access it using python bindings.

ann = libfann.neural_net() ann.create_sparse_array(3, (12, 8, 1)) ann.set_learning_rate(100) ann.set_activation_function_output(libfann.SIGMOID_SYMMETRIC_STEPWISE) ann.train_on_file("file.txt", 500, 50, 0.01) 

The file is as follows:

 5352 12 1 29020800.0 384.78 371.8 373.33 377.37 377.3 -4.04 374.201 120.803 51.3301 61.7468 -10.4167 406.35 28088200.0 379.82 360.3 367.86 378.25 378.2 -10.39 374.824 123.364 47.1374 58.8249 -11.6875 409.0 44059900.0 381.8 354.24 374.57 372.5 372.5 2.07 374.466 125.843 42.8831 55.6365 -12.7534 402.55 

etc. for 5352 inputs.

But when I run this, it goes through in less than 5 seconds and prints the following:

 Max epochs 500. Desired error: 0.0099999998. Epochs 1. Current error: 2680.8283691406. Bit fail 5352. Epochs 50. Current error: 2647.2299804688. Bit fail 5352. Epochs 100. Current error: 2647.2299804688. Bit fail 5352. Epochs 150. Current error: 2647.2299804688. Bit fail 5352. Epochs 200. Current error: 2647.2299804688. Bit fail 5352. Epochs 250. Current error: 2647.2299804688. Bit fail 5352. Epochs 300. Current error: 2647.2299804688. Bit fail 5352. Epochs 350. Current error: 2647.2299804688. Bit fail 5352. Epochs 400. Current error: 2647.2299804688. Bit fail 5352. Epochs 450. Current error: 2647.2299804688. Bit fail 5352. Epochs 500. Current error: 2647.2299804688. Bit fail 5352. 

Can someone give me a hint about what could go wrong?

+4
source share
1 answer

According to the reference manual http://leenissen.dk/fann/html/files/fann_data-h.html#fann_activationfunc_enum , the outputs should be between <-1, 1> you must scale your outputs;)

+2
source

Source: https://habr.com/ru/post/1397875/


All Articles