Neural network toolbox for SAMT

Introduction

Neural networks are an efficient way to extract models from data. Very often there are a few observation data but no idea of how to construct from this data a model. Using neural networks can help to cope with such a situation.

Here are some features of nnqt:

Neural networks can be trained with data. The datasets are organized as comma separated values, that means that the data are plain ASCII with a delimiter: "blank", "tab", "," or ";". The first page of the "qTabWidget" contains the delimiters. Please choose one before you read data! An problem is sometimes header lines. nnqt allows to jump over header. If you want to train a neural network, you have to choose the y-value, that means the output value. Very often is the output value the last value in a table. But sometimes it is not. nnqt allows to choose the value by given a number in the Output line. The first column is the number 0.

Read Datasets

After choosing a delimiter a dataset can be read. Sometimes it is more convenient to split the dataset in a training set and a validation set. nnqt allows an automatic A splitting in a relation of 1:4=validation:train. The randomly splitted file will be save with a suffix .train (for the training set) and .test (for the testing set). This gives a possibility for controlling the training procedure.
It is important that without loading a dataset nnqt will not do any operation! This includes also the loading of a pre trained network. Firstly a dataset must be loaded and then nnqt can be used.

IO-Analysis

After loading a dataset the IO-Analysis table opens. This table provides some information about the dataset. It shows the: min, max, mean, variance and correlation to the y-value. Last information is useful for construction a neural network. (If the correlation is close to zero, this value can be left out) The last column with the title "usage" is a input column. In this column must be the count of the input. It starts by 1,2,3,... If an input has no count, it will be excluded from the training. This gives the possibility to start with a few inputs and expand it if necessary.

Control

The control page is the main page of nnqt. In this page the training procedure is organized . Please use it with the following steps:

The trainig order can be changed from sequential to shuffle by activating the shuffle button. This is sometimes useful.

Visualization

The simple visualization can be reached by pushing the "view_trained" button or by choosing of the "Result" page. It shows the data versus model.
A three dimensional visualization shows the behavior of the trained network. It can be reached by choosing the "3D-Control" page. In this page is a table to control the visualization. It looks like:

min
max
default
usage
1 -0.7 0.99 1
2 -0.9 0.99 2
3 -0.5 0.5 3
4
5
6

For a three dimensional view only two inputs are usable. So you must select two inputs in the column "usage" of the table. The other inputs must be set to a default value. Please be careful in setting this values. The min and max columns are from the input data. They can be changed to concentrate the view to a part of the range. By pushing the "view_3d" button the selected values will be used as the three dimensional view appears.