Artificial Neural Network Prototyping Front-End
COMPILE:
gcc -O3 -march=native annpfe.c kann/kann.c kann/kautodiff.c -lm -o annpfe
Simply compile a dataset like a C array as in the example (first columns are the outputs, other are inputs), or format it in a file named input_file
whose lines are delimiter
-separated, then open run_annpfe.sh and manually edit bash input variables or directly launch annpfe from command line:
./annpfe [run_neural] [input_file] [delimiter] [new_dataset] [transformation] [trap_fp_exceptions] [training_loss_file] [validation_loss_file] [error_score_file] [n_lag] [minibatch_size] [normal-standard-ization_method] [testing_method] [network_filename] [predictions_filename] [feature_scaling_min] [feature_scaling_max] [net_type] [verbose] [metrics] [n_h_layers] [n_h_neurons] [max_epoch] [timesteps] [learning_rate] [dropout] [activation_function] [break_train_score] [break_val_score] [training_idx] [validation_idx] [want_layer_normalization] [n_threads] [random_seed]
For example,
./annpfe 0 none.csv , new_dataset.csv 0 1 training_loss.csv validation_loss.csv error_score.csv 0 2 0 1 kann_net.bin predictions.csv 0.00 1.00 0 1 1 120 1000 16 0.001 0.8 1 0.0 0.0 60 20 0 8 1542718307
./annpfe [run_neural] [input_file] [delimiter] [new_dataset] [transformation] [trap_fp_exceptions] [training_loss_file] [validation_loss_file] [error_score_file] [n_lag] [minibatch_size] [normal-standard-ization_method] [testing_method] [network_filename] [predictions_filename] [feature_scaling_min] [feature_scaling_max] [net_type] [metrics]
For example,
./annpfe 0 none.csv , new_dataset.csv 0 1 training_loss.csv validation_loss.csv error_score.csv 0 2 0 1 kann_net.bin predictions.csv 0.00 1.00 0 1 1