| History: |
back to the main page |
v2.09.2007b
*manual not updated yet*
- Epoch size may be adjusted for the
steepest-descend training algorithm - specified number of training vectors
is randomly chosen at each iteration; for epoch size = 1 this is equivalent
to on-line training (local approach).
- Training vectors are
shuffled partially after each epoch.
- Weight variable may be specified
for training vectors; this weight should be a non-negative number, vectors
with lower weight are less important during the training.
- Support for
SVM classification/regression added (uses
SVM.NET v1.2 C# port of
LIBSVM
v2.6 code).
- Single filter condition changed to unlimited sequence of
conditions encoded in C-like syntax, for example:
(i1>2)&(i2<i3)&((o1>=0.5)|(t1==0.95)). This applies to: 1) Forwarding
tabs in Transformation, Classification and Network
blocks; 2) filter variable of different plots; 3) Save Data tab page
of DataSet block. Project file format has changed - forwarding setup
needs to be redone in old files.
- Many user
interface changes: training/testing set selection moved to Connection Add
dialog window; Transformation and Classification blocks have
simplified and more uniform setup dialog windows; multiple training sets may
be used with Classification block.
v29.06.2007e
- Neuron split added to the algorithm of
the network growth (manual updated).
- Hold and Save phases
training control options added.
- Fixed issue: filter variable of the
Scatter Plot (2D) set to "nxx"
had no effect.
- Improved detection of the training-stop conditions (for
configurations with testing set connected during the training).
- Default values of the training algorithms changed.
- Small changes in the user interface.
v21.10.2006d
- Twin neurons measure modified - previous
values should be divided by 2 to get similar results.
- Tuning of the neuron candidates initial
weights.
- Fixed issue with log messages.
- Number of weights removed with
OBS in one shot is now limited: total Lq < 5 Lq threshold and
max 10 weights; then the network is retrained. This is due to possible
large error jump in case of many weights with Lq << threshold.
- OBS code optimized (really
small improvement).
v21.10.2006
- Changes in algorithm of adding new neurons: if
new neuron was accepted and then killed, next new neuron candidates are not
tried in the same layer. Initial weights (to the following layer) are
randomized using the range corresponding to the existing connection weights
(this makes "spikes" on the error(iterations) plot higher, don't worry about
that).
v4.10.2006a
- ITanh error function added; use this
function if you expect outliers or gross errors in the training data. I
recommend to try this function especially if MSE was the best for your task until
now.
v4.10.2006
- Algorithm for twin neurons joining
improved (more pairs are detected); default neuron candidate pool size
changed to 5 - pre-training of candidates is quite fast now, so this value
seems to be reasonable; some other optimizations in the network structure reduction
procedures.
- Optimal Brain Surgeon added (weight elimination
technique). It may be applied at the end of the training to reduce the
network size (sometimes whole neurons are removed), or it may support
existing size adjustment algorithm when called iteratively before each
attempt of removing redundant neurons. Be aware: this is time and memory
consuming technique - O(N3 * M), where N
is the number of the network coefficients and M is the training set
size. Code will be optimized in further versions. Some examples and
description in manual soon.
- SSE3 instructions (P4 Prescott and above) used, in a few
places, not particularly faster, but why not to use them if they are here...
- Log window is now resizable and shows some more events; order of events is
inverted (newest are on the top).
v25.09.2006
- Serious bug fixed in C/asm code (ANNLibs.dll
library). This bug caused unstable training in some configurations of the
hidden layer sizes. Library has been replaced also in archives with older
versions of NetMaker.
- Log window added (menu View / Log
Window). Systematically more events will be logged in further versions.
- Classification algorithms code optimized.
v19.09.2006
- Asymmetric error functions now can be inverted:
err_new(x)
= err_org(-x).
v7.09.2006c
- Shuffle button added to DataSet setup dialog window.
- Fixed bug in LBGBins classification.
v7.09.2006b
- Fixed bug in reloading DataSet when
connected to Classification block as a source of training data.
-
Optimization in user interface code.
v7.09.2006a
- Fixed issue with Network Error plot on a multithread
and dual-core processors.
- One of the activation functions now has the
proper name: Elliott function.
v7.09.2006
- New block type: Classification. Includes standard
classification algorithm: kNN and bayesian estimator of conditional
probability in two variations; description in manual soon.
- Retraining after pruning redundant and adding new
neurons tuned.
- Fixed bug in JustRun method of
Cascade-Correlation network (was there in two last versions).
v15.07.2006a
- Retraining after pruning optimized.
v15.07.2006
-
Reduced number of retraining iterations after neuron pruning; this is an
intermediate step to the final optimization of this part of the algorithm
(previous versions performed full retraining, while only few iterations are
required).
- Fixed bug in conjugated gradients algorithm (caused NaN
exception).
v14.06.2006
-
Final rearrangement of error functions
e(d),
where d = target -
output; now we have:
- old
mean squared error (MSE) and fourth power of
d (Pow4) that
are suitable for all kind of output layers;
- integrated hyperbolic
arcus tangent of d (IAtanh1) for unipolar and centered sigmoid
fact
of output layer;
- rescaled integrated hyperbolic
arcus tangent of d (IAtanh2) for bipolar output layers - those
with factÎ(-1;
1);
- (a∙d)2 / (a∙d + 1),
where a is a scaling factor:
a = 0.75 (Asymm1, for unipolar
output layers), a = 0.4
(Asymm2, for bipolar output layers);
-
e-d + d - 1,
AsymmL - asymmetric, with unlimited range of
d and therefore suitable for
all types of output layer.
- New element in neuron pruning algorithm:
const neurons - description in manual soon.
- Some small
rearrangements in menus, plot names.
- Fixed bug: XML network file used
comma (,) instead of dot (.) as a decimal separator in a part of
coefficients when system settings where set to use comma. Now dot is used no
matter what is set in "regional settings" of Windows.
v21.05.2006
-
One more layer type added: centered sigmoid
factÎ(-0.5;
0.5).
- CCov error function changed to work with bipolar activation
functions (and renamed to Asymm1).
- Another asymmetric error
function added (Asymm2) - wide, suitable also for linear output layer.
- Delete button and tool-tips for all buttons added on
project blocks.
- Blocks layout inside the
project window is now independent from screen resolution. Your old
project files need to be updated: 1) open *.NetPrj with a text editor;
2) divide each xpos, ypos, xsize, ysize
entry by 10 (insert dot before last digit or just delete last digit) -
this will bring old sizes and positions to new ranges (more or less...);
save file; 3) open file with the new NetMaker and adjust
positions and sizes as you like; save the project. Now, project window
will look very similar when opened on another machine, with a different
display dpi. Example files are updated already.
v3.05.2006c
- Fixed bug (removing dead neuron).
v3.05.2006b
- Bipolar arcus tangent activation function derivative corrected (was mixed with the unipolar version).
v3.05.2006a
- Added SSE optimizations for the new activation functions.
v3.05.2006
-
New layer types (activation functions):
-
hyperbolic tangent (bipolar version of standard logistic-sigmoid
function);
- x/[2(1
+ |x|)] +
½,
unipolar, slowly approaching its asymptotes;
- x/(1
+ |x|),
bipolar version of the above function;
- arcus tangent, also
slowly approaches asymptotes, but with a smooth derivative;
-
bipolar version of arcus tangent function.
- New Functions
graph allows to plot the built in activation functions, theirs
derivatives and error functions.
- User interface code recompiled -
executable size significantly reduced, interface performance improved.
v20.04.2006
- AutoStop algorithm changed (s/m of the network weights watched instead of the weight differences in regular iteration intervals).
v4.04.2006
-
Recurrent network model changed to RMLP. Recurrent network is now
separate type from MLP network type (there is no longer
recurrent input layer type visible to the user). Training algorithms
have the same parameters as for MLP networks, plus two additional:
Teacher Forcing factor and Forcing Decay factor - see
manual for description.
- Project file format changed. Example files
are updated and can be opened with new and old versions. If you have
your own old files, comment lines that cause problems (with "//").
- Executable file size has been reduced due
to code refactoring. NetMaker should be more stable also.
v11.03.2006
- Minor fix in the random number generator (bug was present in the last few versions, but it was not very significant to the networks).
v5.03.2006 (removed from server in strange circumstances...)
-
Moved to Framework.NET 2.0 (with some optimizations using Generics).
- Histogram and XY Data Points plots automatically use
names of chosen variables to label the axes.
v2.03.2006
-
Last version running under Framework.NET 1.1.
Fixed bugs:
-
Fixed problems with running under Windows 2000.
- Fixed issue with
list of files and directories in Open/Save Dialog Windows.
v26.02.2006
- Naming of the variables added (DataSets with correctly assigned source files): click appropriate column header in the Setup/Preview to change the default name. Names are stored in the project file.
Bug discovered:
- Problems with running under Windows 2000.
v.22.11.2005
- XML network description
may contain multiple transformations (Matrix and N(0,1)).
Note: C++ code not updated yet.
-
Genetic algorithm gap optimization removed.
Fixed bug:
-
Corrected conversion between fixed structure and BP-trainable
network.
v.28.08.2005a
- New
file format for the network description (coefficients and N(0,1)
transformation info in a single XML file). This file format is used by
the new, pure C++ module that enables using the trained network in your
programs. Code with simple example is available at main page.
-
Linear correlation ration added to the legend of the XY Data
Points scatter plot.
v.4.07.2005
ANN Engine:
- Networks with dynamic structure have the
pool of
candidate neurons that are going to be installed into the network
structure. Pool value was fixed in previous version (3 for the Cascade-Correlation and 1 for
the Back-Propagation networks).
- Look Back feature
added for recurrent networks (analogous to Look Forward).
- Auto Stop algorithm
improved.
Fixed bug:
-
Transformation block set to QSVD caused hang on the next attempt to
enter the Setup.
v.9.05.2005:
First version after a long break and many modifications.
Known problems:
back to the main page