-
Notifications
You must be signed in to change notification settings - Fork 0
FannToolExpanded Features
This is a non-exhaustive list of FannToolExpanded features. These include not only added features but also already existing features from the original project.
To import your Training and Testing Data Files, simply click on the search button, displayed as "..." for the Training Data File, and navigate to your training data set. Perform the same operation for the Test Data File.
Make sure the "Input dim" and "Output dim" boxes are correctly outputting the expected number of inputs and outputs, if not, try using the "Data Processing" tool.
REMEMBER! AFTER you have imported the Test Data File, go to the "Fine Tuning" tab, and select the Overtraining Caution System.
Data Processing is one of the best tools available in FannToolExpanded. The FANN library requires a specific format for the data: The first line must be the number of Rows, followed by the number of inputs, and then the number of outputs. The second line starts with all the inputs and the next line, the output. Then again, a line with inputs and the following line with the output.
You can automatically export your data from its source in this format or just use the Data Processing tool. With it, you will be asked to point the program to your full data set, then you set the number of inputs, select if you want the Data to be Shuffled if it needs to be Scaled, what fraction of the full data set will be split between Training Data and Testing data. You can then set the Data File Name Stem. Following this, you can set the minimum and maximum input values, which can be -1 to 1, 0 to 1, or any combination thereof. Finally, you are shown a histogram of the values between the maximum and minimum or a time series view.
Just click "Write Data Files," and two files will be created, one ending in .train and the other in .test. As their extensions imply, the .train should be selected in the Training Data File and the .test in the Test Date File.
REMEMBER! When using the testing feature, be sure to turn on the "Overtraining Caution System." It can be found in the "Fine Tuning" tab.
The log outputs current Epoch, Training Error, and if set Testing Error. Not only that, but it will also show you the up-to-date results of Detection Functions.
The "Graphic" tab contains the graph showing the evolution of the training error rate through the training epochs.
The Fine Tuning tab contains the parameters which are going to be used during training and testing. Here's a brief explanation:
- Desired Error (MSE)
- Bit Fail Limit
- Connection Rate
- Learning Rate
- Error Function
- Hidden Activation Steepness
- Output Activation Steepness
- Momentum
- Quickdrop Decay Factor
- Quickdrop Mu Factor
- RPROP Increase Factor
- RPROP Decrease Factor
- RPROP Minimum Step-Size
- RPROP Maximum Step-Size
- Initialize the weights This will create random weights for the connections in the Neural Network
- Overtraining Caution System Turning this option on will mean that the FannToolExpanded will both train and test the Neural Network. You must have a test file for this to work.
- Shuffle Train Data Selecting this will make the program shuffle the lines in your training data set. This will only shift lines, not the inputs.
These are the options for the Cascade Training Method.
There are two detect functions, Optimum Training Algorithm, and Optimum Activation Function.
The Detect Optimum Training Algorithm function will train the supplied dataset for 2'000 Epochs in each of the 5 Training Algorithms:
Fann_Train_Incremental, Batch, Rprop, Quickprop, and Sarprop.
At the end of the training session, the log will output in red, which training method had the lowest error rate.
The Detect Optimum Activation Functions will try all combinations of the Activation Functions for the Hidden Nodes and Output nodes. The program will do this by training for 2'000 Epochs sequentially all 13 Activation Functions:
Fann_Linear, Sigmoid, Sigmoid_Stepwise, Sigmoid_Symmetric, Sigmoid_Symmetric_Stepwise, Gaussian, Gaussian_Symmetric, Elliot, Elliot_Symetric, Linear_Piece, Linear_Piece, Symmetric, Sin_Symmetric, and Cos_Symmetric.
Just as in the other detection functions, after trying all combinations, the program will output in the log which combination of Activation Functions had the lowest error rate.