This section will guide users through five design steps in ANNHUB, including loading data into ANNHUB, configuring Neural Network, training Neural Network, evaluating Neural Network, testing Neural Network with the new data-set, and deploying the trained Neural Network to different environments/applications.

Step 1: Load Data-set

Figure 2.7: Load training set into ANNHUB


When data-set is ready, it can be loaded into ANNHUB in the "Step 1: Load data-set" by click on browse to load data-set button as shown in Figure 2.7. The data-set structure information will then be displayed to show input-target pairs' values.


Step 2:  Configure Neural Network Structure


Figure 2.8: Configure Neural Network in ANNHUB


When the data-set is being loaded into ANNHub, ANNHub will take its structure information to formalize the Neural Network structure as shown in Figure 2.8. Advanced users can tweak that Neural Network settings, including training algorithm, activation function types, number of hidden nodes, cost function type, pre/post-processing methods.

Step 2: Get optimal Neural Network structure using Evidence Framework (optimal)



Figure 2.9: Get optimal Neural Network structure based on Evidence framework in ANNHUB

If Bayesian Neural Network is configured by selecting the Bayesian Regularization training algorithm, Evidence framework will be available to estimate the correct number of hidden nodes. This framework will evaluate log evidence of different Neural Network structures to select the best one.

Step 3: Train Neural Network


Figure 2.10:Train Neural Network in ANNHUB

Training parameters for the corresponding training algorithm will be available to be tweaked. During the training process, early stopping technique that uses validation set and stopping criteria to determine when this process should be stopped and what is the stopping location. This technique helps the Neural Network to avoid from being over trained that only predicts training set well but fails to predict new data set. This over-trained symptom is also called a over-fitting issue.

If the Bayesian Regularization training algorithm is selected, the early stopping technique will not be required.

Step 4: Evaluate Neural Network


Figure 2.11: Evaluate trained Neural Network in ANNHub using Confusion Matrix


Figure 2.12: Evaluate trained Neural Network in ANNHUB using ROC curves


Figure 2.13: Evaluate trained Neural Network in ANNHUB using regression curves




After being trained, the Neural Network can be evaluated by using Confusion matrix (Figure 2.11) and ROC curves (Figure 2.12) for pattern recognition applications and regression curves (Figure 2.13) for function fitting applications.


Step 5: Test Neural Network with new data set

In this step, a new complete data-set that is not used in designing a Neural Network process will be used to test the trained Neural Network. This data-set can be loaded in ANNHub in Step 5 as shown in Figure 2.14. Evaluation information obtained from ROC curves confusion matrix (Figure 2.15), regression curves and plot-fit (Figure 2.16) provide useful information to confirm the trained Neural Network' stability.

Figure 2.14: Load new data-set to test trained Neural Network in ANNHUB


Figure 2.15: ROC curves and confusion matrix of the trained Neural Network with new data-set in ANNHUB


Figure 2.16: Plot fit of the trained Neural Network with new data-set in ANNHUB


Step 5: Deploy Neural Network

Figure 2.17:  Deploying trained Neural Network into different environments


The trained Neural Network will then be exported into a special file that contains its weights and structure information. Depending on programming environments, at least two application programming interfaces (APIs) will be provided to load the Neural Network structure from that special file to be used as shown in Figure 2.17. Details for APIs for certain environments wild be presented in API references.