Introduction to ANNdotNET v1.0 deep learning tool on .NET Platform


Introduction

In this tutorial we are going to create and train Iris model using ANNdotNET v1.0. ANNdotNET is windows desktop application for creating and training deep learning models. It uses Microsoft CNTK library as Machine Learning Engine, MLE, which makes this project a high performance and industry capable application for deep learning. The project is hosted at http://github.com/bhrnjica/anndotnet.

In ANNdotNET, process of creating, training, evaluating and exporting models is provided from the GUI application and does not require knowledge for supported programming languages. The ANNdotNET is ideal in several scenarios:
  • more focus on network development and training process using on classic desktop approach, instead of focusing on coding,
  • less time spending on debugging source code, more focusing on different configuration and parameter variants,
  • ideal for engineers/users which are not familiar with programming languages, in case the problem requires coding custom models, or training process,
  • ANNdotNET CMD provides high level of API for such implementation, all ml configurations developed with GUI tool,can be handled with CMD tool and vice versa.
There are dozens of pre-calculated projects included in the installer which can be opened from the Start page as well as from CMD tool. The annprojects are based on famous datasets from several categories: regression, binary and multi class classification problems, image classifications, times series, etc.

Iris data set example

In this quick tutorial it 8 steps will be described how to implement iris ml model in ANNdotNET v1.0.

1. Step: Download the data set file from https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data and place it on desktop.

2. Step: Open ANNdotNET GUI Tool, Press New command, and save empty project on disk by entering project name as IrisProject.

3. Step: Select Data Command from Model Preparation ribbon group, Click File button from Import experimental data dialog and select the recently downloaded file. Check Comma check box and press Import Data button.

4. Steps: Double click on Type for the last column, and select Category. Also double click on Variable row for the last column and select Label. This will indicate what is the label of this ml solution. More information how to prepare data for ML you can find at https://bhrnjica.net/2018/03/01/data-preparation-tool-for-machine-learning/

anniris_dataprep

5. Steps: Once the data is prepared Click Create MLConfig Command and select created configuration below the Iris project tree item. Before start the training process we need to setup Neural Network and Learning parameters. ANNdotNET v1.0 introduces the NNetwork Designer. It is visual designer for creation wide range of neural network configuration. From the Combobox the user can select one of several layers. For this example select:

  • Normalization layer from the combobox and press Add button, then
  • Dense layer and press Add button twice.

Setup layer parameters as image shows below. Also for the learning parameters setup values as shown on the image below. At the end press Run button, and switch to Training tab page.

anniris_networkdesin.png

6. Steps: Training process for this data set is very quick and 1000 iterations is achieved very quickly. In training tab page, user can setup training parameters:

  • Epoch,
  • Mini-batch size
  • Randomization of batch
  • Continue training of previous model
  • Saving good model during training.
anniris_training

7. Steps: Once the model is trained you can evaluate model by selecting Evaluate tab page. Depending on the model type (regression, binary or multi class classification) appropriate information is shown. Since this is multi class classification model, the performance parameters for multi class classification are shown. On the left side parameters and chart are related to training data set, while the right side is related to validation data set.

anniris_evaluation.png

8. Steps: For further analysis you can export model to Excel, or CSV or CNTK model. Also you can save the project which can later be opened and retrained again.

Note: Currently ANNdotNET is in release candidate, and feature complete verions. In the next few weeks the application will be stabilized and released.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s