Unified Online-learning Library
Documentation
icl_base
varargout = icl_base(mode, learnMethod, algSetup, model, start, targetFunc, livePlot, fastmode, quiet, rSeed)
This is the main function for running an experiment.

UOSLIB - Unified Online-learning Systems LIBrary of incremental learning algorithms
This is the main function for running experiments. Experiments can be either done by calling this function from a specific script or by running this script and filling out the default parameters as needed. The script performs one run with a learning method on a specific task and gives the results. The data which is used for online learning is scaled to [-10, 10] on the input dimensions and [-1,1] on the output, to allow for comparison between different learning algorithms and approximation structures.


Inputs:
modeshould be set to 1 for regression or 2 for classification
learnMethodString specifying the learning method to adapt the parameter vector (see subfolder algorithms)
algSetupalgorithm specific setup parameters
AROW, algSetup.r - use bigger r for noisy data and more stability
CW, algSetup.p - desired probability of correct classification
GH, algSetup.variant - GH matrix variants: 0 - Full, 1 - Exact, 2 - Drop, 3 - Project , algSetup.C - rate of adaptation the bigger, the more adaptation is done
IRMA, algSetup.s - stiffness, algSetup.tau - growth rate, algSetup.variant - Stiffnes increase variants: 1 - Additive, 2 - Multiplicative, 3 - Sigmoidal, algSetup.maxstiff - maximum stiffnes for sigmoidal increase
PA, algSetup.variant - PA variants: 0 - basic PA, 1 - basic PA-I, 2 - basic PA-II, algSetup.a - aggressiveness
RLS, algSetup.S - initial variance, algSetup.g - forgetting factor
modelstructure, describing the model to be used for learning
regular Grid based Lookup Table, model.kind = GLT , model.base = gauss , lin , model.N - number of grid points
arbitrary Grid based Lookup Table, model.kind = GLTarb , model.base = gauss , lin , model.loc - locations of the grid points
Polynomial, model.kind = Poly , model.N - polynomial order
startdouble, specifying an initial value for all parameters or double vector, specifying an initial parameter vector
targetFuncStruct specifying the target function, learning data should be generated from. It must contain the following fields:
targetFunc.target - string selecting the target function
targetFunc.ND - number of training data to generate
targetFunc.NG - number of ground truth data to generate for comparison
targetFunc.noise - variance of normally distributed noise on training data
targetFunc.minPath - should be set to true to order the data in input space, false for random order
livePlotboolean, should be set to true to visualize resulting approximation after every learning step
fastmodeboolean, should be set to true to skip evaluation of loss on ground truth and training data to speedup the procedure
quietboolean, should be set to true to prevent all console outputs and plots
rSeedinteger, seed of the random number generator

Outputs:
performancedouble matrix, performance measures as a matrix: (measure X time)
paramSavedouble matrix, parameter vector as matrix: (param X time)
ILSfinal ILS representation
datatraining data used
groundTruthground truth data used
dimdimensionality of the data

Calls:

Called by:

Authors:

Last change: 2013-11-29 - Version 1.6