Plugins
Plugins are a set of components that affect how other components
behave.
These are the existing types of plugin:
- Input Plugins
Input plugins can be attached to input components (file input and url
input). They alter the data produced by the input layer.
Input plugins are connected by drawing a connection from the red square
of an input layer to the plugin.
Input plugins can be cascaded.
- Monitor Plugins
Monitor plugins are not attached to other components as they directly
affect the learning phase of the network.
They affect the way that learning changes during the learning phase.
- Output Plugins
Output plugins can be attached to output components (e.g file output
and excel output). They alter the data given to the output layer prior
to being written by the output layer.
Output plugins are connected by drawing a connection from the red
square of an output layer to the plugin.
Output plugins can be cascaded.
Common Input and Output Converter Properties
Both the input and output converter plugins have one common property.
- Advanced Serie Selector
The Advanced Serie Selector is used to specify what columns or
serie to convert. For example if the input or output contained 4 columns
you could specify that columns 1 and 3 be converted.
The selector must be a list of one or a comma delimeted list of
multiple options. The options can be one column '2' or a range of
columns '3-6'. The format for the selector is as follows ...
[col]{,[col]{,[col1-col2]}}
For example if the input source has 5 columns and you would like
column 1 and columns 3,4,5 you could specify the selector as '1,2-5' or
'1,2,3,4,5'.
- Name
The name of the plugin as displayed on the development pane.
Center on Zero
This input plugin centers the data evenly around the zero point. That
is, it subtracts the average of the data from each item.
Normalizer
This input plugin normalizes the data linearly between two bounds.
The extra properties that can be set for normalizer plugins:
- Out Data Max
The upper bound or maximum value of the output or converted data.
- Out Data Min
The lower bound or minimum value of the output or converted data.
- In Data Max
The upper bound or maximum value of the input data.
- In Data Min
The lower bound or minimum value of the input data.
Note :
Setting both "In Data Max" and "In Data Min" to 0 will instruct the
plugin to search for the upper (max) and lower (min) bound of the data.
Turning Points Extractor
This input plugin extracts the turning points of a time series. It
generates a Boolean a signal that detects relative minima and maxima.
The extra property that can be set for turning point extractor plugins:
- minChangePercentage
The amount that the time series must change by to be considered a
real turning point. Setting this to a non-zero value reduces noise
signals.
Moving Average Converter
Changes the specified input serie data so that it becomes a moving
average of itself.
This plugin operates on specified columns or serie of data in a
vertical fashion. The converter calculates the moving average of a
column i.e vertically. The data in the column is converted so that it
becomes a moving average of itself. If you chose a 3 row moving average
then the first 2 rows will be set to 0 and the third and subsequent
rows are set to the 3 row moving average.
For example if the serie to be converted contained the following
data ....
5
15
6
8
and the requested moving average was set at 3 then the serie would
become ..
0
0
8.67
9.67
So the column's rows are set to the sum of the previous two values
and the current value divided by 3.
The extra properties that should be specified by in this converter
are ...
- Moving Average
Specifies what the moving average should be for each column
specified in the Advanced Serie Selector. Note this should be a comma
delimeted list e.g '10,20,50' would specify a moving average of 10 for
the first selected column, a moving average of 20 for the second
selected column and 50 for the third.
Delta Norm Plugin
This plugin is used to calculate the normalized differences between the actual data and past values of a time series.
Used along with the TurningPointExtractor plugin is very useful to build time series signal generators.
Shuffler Plugin
This plugin 'shuffles' the input rows at every epoch, permitting to
train a neural network with a different patterns' input order for each
epoch.
Note:
The Shuffler plugin must be always used in conjunction with the Input Connector component.
Binary Plugin
This plugin converts the input patterns to binary values.
UnNormalizer
This output plugin unnormalizes the data linearly between two bounds.
There are four extra properties that can be set for unnormalizer
plugins:
- Out Data Max
The upper bound or maximum value of the output or converted data.
- Out Data Min
The lower bound or minimum value of the output or converted data.
- In Data Max
The upper bound of the input data.
- In Data Min
The lower bound of the input data.
Note :
Setting both "In Data Max" and "In Data Min" to 0 will instruct the
plugin to search for the upper and lower bound of the data. Typically
if a Sigmoid layer is attached to the output layer then these values
will be 1.0 and 0.0 respectively. For Tanh then these will be 1.0 and
-1.0. For linear it will be Min = bias*(min of previous layer) , Max =
bias*(max of previous layer).
Linear Annealing
This monitor plugin affect the control panel learning rate and momentum
parameters during the learning phase.
Initial and final values for these parameters can be set, and they will
be altered linearly during learning.
This can help to fine tune a network towards the end of its education
instead of embarking on radically different configurations.
There are five properties that can be set for linear annealing plugins:
- LearningRateFinal
The final learning rate value. - MomentumInitial
The initial momentum value. - LearningRateInitial
The initial learning rate value. - Name
The name of the plugin as displayed on the development pane. - MomentumFinal
The final momentum value.
Dynamic Annealing
This monitor plugin affect the control panel learning rate parameter
during the learning phase in much the same way as the linear annealing
plugin.
The difference is that instead of changing the learning rate in a
linear fashion, it reduces it by a percentage only if the error is worse
than the previous round's.
This help to reduce the risk of a good configuration being lost as
learning proceeds.
There are three properties that can be set for dynamic annealing
plugins:
- Name
The name of the plugin as displayed on the development pane. - Rate
The initial learning rate value. - Change %
The rate at which the learning rate is reduced. The value should be
between 0 and 100.