Download example (2.18MB) - project and data files, this archive contains both "Very Simple" and "2D Classification" examples.
Short introduction:
There are two classes: Red (let's say "signal") and Blue ("background"). Events of this classes have two features, so they can be presented in a scatter plot, like in the image below, where training set contents is shown. Network task is to separate these classes in the best possible way.

What is in the project:
Project in this case is extremely simplified. It consists of two DataSet blocks that hold training and testing events and the Network block. Training events are presented above, testing events have the same distribution (but there is 100x more of them). Training set is an ASCII file - you can look at it and compare its structure with formatting string in the training_set DataSet block. Each line in this file represents one event. First two values are the features of the event, third value is desired network output for this event. Network have single output neuron and it is expected to give value of 0.05 for background (blue) events and value of 0.95 for signal (red) events. Network structure is fixed (two hidden layers with 14 and 4 units).
How to run this example:
Network block is already connected to the training_set DataSet block. Network training parameters are set up. You just have to push the Go button of the Network block, push there Go! button and wait... Save error info is turned on, so you can watch how the training error decreases (select menu Edit - Add Graph - Network Error, rigth click in the plot window to open a context menu, select Add Net Source to open dialog window, select Very Simple \ Network in the Available data objects list and push OK). If everything works well, plot looks more or less like in the following image:

When the training is done you can save the network to a file. Then you can run the network over the events from the testing_set DataSet block (connect this block to the network input first and then switch the Training Method to JustRun and push Go! button). To see the network answers and compare them with target values push Setup button on one of the DataSets and go to the Preview tab. More comfortable way of checking the network results is to make a scatter plot of events coloured with the network output. To create such a plot choose menu Edit - Add Graph - XY Data Points, rigth click in the plot window to open a context menu, select Add XY Data to open dialog window, select Very Simple \ testing_set in the Available data objects list, change ConstColor to TopoI and push OK (other options in this dialog window should remain with default values in this case). You should get something like this:

Another way to measure correctness of the training results is purity-efficiency plot. Purity is a fraction of the signal events in the set of events with the network answer above some threshold. Efficiency is a fraction of signal events with the network answer above the same threshold, but in the set of all signal events. The more signal events survive the selection the higher efficiency we get. The "cleaner" is the set of events that survived, the higher purity is obtained. We want to get both values possibly high. Mentioned threshold on the network answer is adjustable, so pairs purity-efficiency for different threshold values create a whole curve. We can compare the curves calculated for the training and testing sets - it is a very good test against the overtraining effect. If curves are far beyond the statistical errors, used training set is not representative for our signal / background distributions.
To create purity-efficiency plot choose menu Edit - Add Graph - Signal Selection, rigth click in the plot window to open a context menu, select Add Data Source to open dialog window, select Very Simple \ testing_set in the Available data objects list, check Mark Errors and push OK button; add the purity-efficiency plot for Very Simple \ training_set in the same window (change the color of this curve before you click OK). Results usually looks like on the following image:
