NeurApp 1.1
NeurApp - software for exploring approximation by artificial neural networks on functions of one or two variables.

IG::Script::LoadableScriptShellNeuralIT Class Reference

Base class for loadable scripts that are used as custom applications that inclued neural networks approximations and optimization. More...

Inheritance diagram for IG::Script::LoadableScriptShellNeuralIT:
Collaboration diagram for IG::Script::LoadableScriptShellNeuralIT:

List of all members.

Public Member Functions

 LoadableScriptShellNeuralIT ()
override void Script_AddCommands (ICommandLineApplicationInterpreter interpreter, SortedList< string, string > helpStrings)
 Adds commands to the internal interpreter.
void TrainANN ()
 Train the artificial neural network.
void PlotTrainingRmsError (List< NeuralTrainingParameters > trainParameters, bool showMinAndMaxError, bool showMinToMaxError, bool showBestNErrors, int numErrorsShow, int numBoundles)
 Plots graph for training Rms errors.
void PlotTrainingMaxError (List< NeuralTrainingParameters > trainParameters, bool showMinAndMaxError, bool showMinToMaxError, bool showBestNErrors, int numErrorsShow, int numBoundles)
 Plots graph for training Max errors.
void PlotVerificationRmsError (List< NeuralTrainingParameters > trainParameters, bool showMinAndMaxError, bool showMinToMaxError, bool showBestNErrors, int numErrorsShow, int numBoundles)
 Plots graph for verification Rms errors.
void PlotVerificationMaxError (List< NeuralTrainingParameters > trainParameters, bool showMinAndMaxError, bool showMinToMaxError, bool showBestNErrors, int numErrorsShow, int numBoundles)
 Plots graph for verification Max errors.
virtual void ApplyPlotSettings (PlotterZedGraph plotter, PlotZedGraphBase plot)
 Applies basic plot settings for various kinds of plots.
virtual void ApplyPlotSettingsCurveRGB (PlotterZedGraph plotter, PlotZedgraphCurve plot, double r, double g, double b)
virtual void ApplyPlotSettingsCurve (PlotterZedGraph plotter, PlotZedgraphCurve plot)
 Applies basic plot settings for basic kinds of curve plots.
virtual void ApplyPlotSettingsCurve (PlotterZedGraph plotter, PlotZedgraphCurve plot, int i, int max)
 Applies basic plot settings for basic kinds of curve plots where groups of curves are plotted.
virtual void ApplyPlotSettingsCurveBlueRed (PlotterZedGraph plotter, PlotZedgraphCurve plot, int i, int max)
 Applies basic plot settings for basic kinds of curve plots where groups of curves are plotted.
virtual void ApplyPlotSettingsCurveMonotoneBlue (PlotterZedGraph plotter, PlotZedgraphCurve plot, int i, int max)
virtual void ApplyPlotSettingsCurveMonotoneRed (PlotterZedGraph plotter, PlotZedgraphCurve plot, int i, int max)
virtual void PlotNeuralResponse (IVector parameters, int whichOut, int whichParam, double minParam, double maxParam, int numPoints)
 Plots a parametrix stydy of neural network approximated response by plotting dependency of the specified output on the specified parameter.
virtual void PlotNetworkResponse (int numPoints)
 Plots some parametric studies of responses generated by the trained network.
virtual void PlotNetworkResponseGrouped (IVector parameters, int whichOut, IBoundingBox parameterBounds, int numPoints)
 Plots a parametrix stydy of neural network approximated response by plotting dependency of the specified output on the specified parameter.
virtual void PlotNetworkResponseGrouped (int numPoints)
 Plots some parametric studies of responses generated by the trained network.
virtual void PlotAnalysisTable (AnalysisResults[] tabres)
 Plots the specified table of analysis results.
virtual void PlotApproximationTable (IVector[][] tabApproximationResults)
 Plots the specified table of calculated approximation results.
void PlotVerificationError (bool showErrorInPercentage, bool verificationPoFromFile)
 Plots the ANN approximation on verification points and real points.
void PlotVerificationError (bool verificationFromFile, int whichOutput)
 Plots the ANN approximation on verification points and real points.
void PlotVerificationError (bool showErrorInPercentage, bool verificationFromFile, int whichOutput)
 Plots the ANN approximation on verification points and real points.
void CalculateVerificationError (int whichOut, ref List< IVector > verificationPointsResponse)
 Calculates response on verification points.
void CalculateVerificationError (bool verificationFromFile, int whichOut, ref List< IVector > verificationPointsResponse)
 Calculates response on verification points.
void PlotTrainingError ()
 Plots the ANN approximation on training points and real points.
void PlotTrainingError (int whichOutput)
 Plots the ANN approximation on training points and real points.
void PlotTrainingError (bool showErrorInPercentage, int whichOutput)
 Plots the ANN approximation on training points and real points.
void CalculateTrainingError (int whichOut, ref List< IVector > trainingPointsResponse)
 Calculates response on training points.
void PointsOnLine ()
 Network response on the points calculated between two selected points.
void PlotResponseOnLine (IVector p1Training, IVector p2Training, IVector p1Verification, IVector p2Verification, int numPoints)
 Network response on the points calculated between two selected points.
void PlotTrainingAndVerificationPointsResponse (List< IVector > selectedTrainingPoints, List< IVector > selectedVerificationPoints, int whichOutput, int whichParameter, double min, double max)
 Plots the ANN approcimation on the verification points and/or real points.
SampledDataSet GetVerificationFromApproximator ()
 Returns verification points from complete training data set in approximator.
SampledDataSet GetTrainingFromApproximator ()
 Returns training points from complete training data set in approximator.
void SensitivityStart ()
 Perform sensitiviy test from training and verification data.
void SensitivityPerform (IVector trainingCenterPoint, IVector verificationCenterPoint)
void CenterPointResponse ()
 Plots the ANN approcimation on the center point from verification point and/or real point.
void PlotNetworkCenteredPointResponse (IVector trainingCenterPoint, IVector verificationCenterPoint)
 Plots the ANN approcimation on the center point from verification point and/or real point.
void CalculateSensitivity (IVector selectedTrainingPoint, IVector selectedVerificationPoint, int whichParameter, double min, double max)
void PlotTrainingAndVerificationPointResponse (IVector selectedTrainingPoint, IVector selectedVerificationPoint, int whichOutput, int whichParameter, double min, double max)
 Plots the ANN approcimation on the verification point and real point.
void CenterPoint (INeuralApproximator Approximator, ref IVector inputCenterParameters, bool centerOnTrainingPoint)
 Calculate the average center point for each parameter from complete data set.
void CenterPoint (SampledDataSet DataSet, ref IVector inputCenterParameters)
 Calculate the average center point for each parameter from complete data set.
virtual string TrainNetwork (string[] arguments)
virtual string TrainParallelExample (string[] arguments)
 Performs parallel training of neural networks with different parameters and default data. This conains only example of how parallel training is performed. You can override and modify this code in derived classes in order to use the method for specific trainings with hard-coded parameters.
virtual string PlotConvergence (string[] arguments)
 Plot different convergences from traininglimits file.
virtual string PlotTrainingTime (string[] arguments)
 Plot graph sorted on training time.
virtual string PlotVerificationResponse (string[] arguments)
 Plot the approximated response of the neural network in the verification points.
virtual string PlotTrainingResponse (string[] arguments)
 Plot the approximated response of the neural network in the training points.
virtual string PlotNetworkResponseOnLineAll (string[] arguments)
 Plot the approximated responses of the neural network on two selected points and on the points between them.
string PlotNetworkCenteredPoint (string[] arguments)
 Pots parametric study on center point from training and/or verification sets.
string Sensitivity (string[] arguments)
 Execute sensitivity test and saves to CSV file.

Public Attributes

const string ConstTrainNetwork = "TrainNetwork"
 Comamnd name for training the network.
const string ConstHelpTrainNetwork = "Trains NN on basis of standard data. Args: <numLayers> <numNeurons>"
const string ConstTrainParallelExample = "TrainParallel"
 Command name for parallel training of neural network.
const string ConstHelpTrainParallelExample = "Performs multiple trainings of neural networks at different parameters in parallel."
const string ConstPlotConvergence = "plotconvergence"
 Comamnd name for plotting convergence errors.
const string ConstHelpPlotConvergence = "Plots convergence errors of parallel trainings. Args: "
const string ConstPlotTrainingTime = "plottrainingtime"
 Comamnd name for plotting training time.
const string ConstHelpPlotTrainingTime = "Plots training times of parallel trainings. Args: "
const string ConstPlotVerificationResponse = "PlotVerificationResponse"
 Comamnd name for testing network response for verification points(plots, etc.).
const string ConstHelpVerificationResponse = "Plots verification response. "
const string ConstPlotTrainingResponse = "PlotTrainingResponse"
 Comamnd name for testing network response for verification points(plots, etc.).
const string ConstHelpTrainingResponse = "Plots training response. "
const string ConstPlotVerificationAndTrainingPoints = "plotverificationandtrainingpoints"
 Comamnd name for testing network response for verification points on line for all Inputs/outputs.
const string ConstHelpPlotVerificationAndTrainingPoints = "Plots network response for verification and training points. "
const string ConstPlotNetworkResponseOnLineAll = "PlotNetworkResponseOnLineAll"
 Comamnd name for testing network response for verification points on line for all Inputs/outputs.
const string ConstHelpNetworkResponseOnLineAll = "Plots network response for points on line from p1 to p2. "
const string ConstPlotNetworkCenteredPoint = "PlotNetworkResponseCenteredPoint"
 Comamnd name for testing network response for centered point from verification or training points for all Inputs/outputs.
const string ConstHelpPlotNetworkCenteredPoint = "Plots network response for centered point from verification or training set. "
const string ConstSensitivity = "Sensitivity"
 Comamnd name for testing network response for centered point from verification or training points for all Inputs/outputs.
const string ConstHelpSensitivity = "Execute sensitivity test. "
int ParallelNumServersDefault = 4
int ParallelMaxEnqueuedDefault = 10
double LearningRateFrom = 0.05
 Learning rate from number.
double LearningRateTo = 0.8
 Learning rate to number.
int NumLearningRate = 4
 Number of learning rates in selected region.
double MomentumFrom = 0.1
 Momentum from number.
double MomentumTo = 0.6
 Momentum to number.
int NumMomentum = 4
 Number of momentum in selected region.
double AlphaFrom = 1.2
 Alpha value from number.
double AlphaTo = 1.8
 Alpha value to number.
int NumAlpha = 4
 Number of alpha values in selected region.
int MaxEpochs = 1000
 Max number of epochs.
int EpochBundle = 100
 Number of epochs in bundle.
double ToleranceRMS = 0.01
 Maximum tolerance for RMS.
int NumHiddenLayers = 1
 Number of hidden layer in ANN.
int[] NumHiddenNeurons = new int[] { 10 }
 Number of nwueons in each hidden layer.
double InputBoundSafetyFactor = 1.3
 Safety factor for input bound.
double OutputBoundSafetyFactor = 1.3
 Safety factor for output bound.
bool allReadFromFile = false
int ANNType = 1
int NumNeuronsHidden1 = 40
int NumNeuronsHidden2 = 0
double LearnignRate = 0.3
double Momentum = 0.6
double AlphaValue = 1.0
double RatioVerificationPoints = 0.05
bool showErrorPercentages = false
bool verificationPointsFromFile = false
bool enableLabels = true

Protected Member Functions

override void InitializeThis (string[] arguments)
 Inializes the current script object.
virtual NeuralApproximatorBase CreateParallelApproximator ()
 Creates a parallel approximator for parallel training and comparison of training resultw at different parameters.
virtual NeuralTrainingParameters TrainNetwork (NeuralTrainingParameters parameters)
 Trains network. Used as execution delegate on job containers. Network that is trained must be created within this method, and training data must be provided to it (this should be done within a block that is locked by object's main lock).
virtual void TrainSerial ()
 Performs training of neural networks with the specified parameters in non-parallel way.
virtual void TrainParallel ()
 Performs parallel training of neural networks with the specified parameters.
virtual void TrainParallel (bool isParallel)
 Performs parallel training of neural networks with the specified parameters. Has the ability to run jobs on the same therad where function is executed.

Protected Attributes

int numPointsOnLine = 5
bool maxDistancePoints = true
bool enableTrainingPoint = false
bool enableVerificationPoint = true

Properties

virtual List
< NeuralTrainingParameters
TrainingParametersAndResults [get]
 List of training parameters for which training should be performed.
virtual string TrainingParametersPath [get]
 Path to the default location lwhere training parameters and convergence results from multiple training attempts are stored.
virtual string TrainingLimitsPath [get]
 Path to the default location lwhere training limits are stored.
virtual string TrainingResultsPath [get]
 Path to the default location lwhere training complete results are stored.
virtual string TrainingResultsCSVPath [get]
 Path to the default location lwhere training complete results are stored.
virtual string OptimalTrainingParametersPath [get]
 Path to the default location where optimal training parameters for the current problem are stored. Optimal in this context meand "best known".
virtual string AdditionalTrainingParametersFilename [get, set]
 Eventual relative path of an additional file name where results are stored.
int ParallelNumServers [get, set]
 Number of parallel servers that will be used for parallel execution of jobs.
int ParallelMaxEnqueued [get, set]
 Maximal number of enqueued jobs when performing parallel execution of jobs. This is not enforced by all methods of this class that perform perallel execution.
int ParallelSleepTimeMs [get, set]
 Sleeping time in milliseconds.
bool ParallelIsServerMode [get, set]
 Whether servers will operate in server mode (true) or by running each job in a new thread (false).
int ParallelClientOutputLevel [get, set]
 Client's output level when executing parallel jobs. This specifies how much information is output to console from the client code that sends jobs for parallel execution.
int ParallelOutputLevel [get, set]
 Output level for parallel dispatcher, servers and job containers when executing parallel jobs. This specifies how much information is output to console from the when parallel jobs are being handled by the dispatcher and servers.
bool ParallelIsTestMode [get, set]
 Specifies whether parallel jobs will be executing in testing mode (where e.g. delay times apply).
double ParallelDelayTimeSeconds [get, set]
 Delay in seconds used in parallel execution. This is useful only for testing purposes, default is 0.
double ParallelDelayTimeRelativeError [get, set]
 Relative variation in delay time used in parallel execution. This is useful only for testing purposes, default is 0.
virtual int ParallelSavingFrequency [get, set]
 Frequency of saving the results of parallel execution: less than 0: results are not saved.0: results are saved only at the end, when all results are calculated.1: Results are saved every time a new result is calculated.N > 0: Resalts are saved every time after N new results are calculated

Private Attributes

List< NeuralTrainingParameters_trainingParameters
int _parallelMaxEnqueued
HtmlWriter html = null

Detailed Description

Base class for loadable scripts that are used as custom applications that inclued neural networks approximations and optimization.

This is a concrete class and can be used directly.

$A Igor xx;


Constructor & Destructor Documentation

IG::Script::LoadableScriptShellNeuralIT::LoadableScriptShellNeuralIT ( ) [inline]

Member Function Documentation

override void IG::Script::LoadableScriptShellNeuralIT::InitializeThis ( string[]  arguments) [inline, protected]

Inializes the current script object.

Parameters:
argumentsInitialization arguments. The first argument must be the working directory path.

Reimplemented from IG::Script::LoadableScriptShellNeuralITOriginal.

override void IG::Script::LoadableScriptShellNeuralIT::Script_AddCommands ( ICommandLineApplicationInterpreter  interpreter,
SortedList< string, string >  helpStrings 
) [inline]

Adds commands to the internal interpreter.

Parameters:
interpreterInterpreter where commands are executed.
helpStringsList containg help strings.

Reimplemented from IG::Script::LoadableScriptShellNeuralITOriginalBase.

void IG::Script::LoadableScriptShellNeuralIT::TrainANN ( ) [inline]

Train the artificial neural network.

Parameters:
annType1 - NeuronDotNet, 2 - Aforge.
NumNeuronsNumber of neirons in 1st hidden layer.
MaxEpochsMax epochs.
EpochsInBundleEpochs in bundle.
LearnignRateLearning rate.
MomentumMomentum.
InputSafetyFactorInput safety factor.
OutputSafetyFactorOutput safety factor.
PercentVerificationPointsPercentage for verification points.
virtual NeuralApproximatorBase IG::Script::LoadableScriptShellNeuralIT::CreateParallelApproximator ( ) [inline, protected, virtual]

Creates a parallel approximator for parallel training and comparison of training resultw at different parameters.

Returns:
virtual NeuralTrainingParameters IG::Script::LoadableScriptShellNeuralIT::TrainNetwork ( NeuralTrainingParameters  parameters) [inline, protected, virtual]

Trains network. Used as execution delegate on job containers. Network that is trained must be created within this method, and training data must be provided to it (this should be done within a block that is locked by object's main lock).

Parameters:
parametersTraining parameters used for training.
Returns:
virtual void IG::Script::LoadableScriptShellNeuralIT::TrainSerial ( ) [inline, protected, virtual]

Performs training of neural networks with the specified parameters in non-parallel way.

virtual void IG::Script::LoadableScriptShellNeuralIT::TrainParallel ( ) [inline, protected, virtual]

Performs parallel training of neural networks with the specified parameters.

virtual void IG::Script::LoadableScriptShellNeuralIT::TrainParallel ( bool  isParallel) [inline, protected, virtual]

Performs parallel training of neural networks with the specified parameters. Has the ability to run jobs on the same therad where function is executed.

Parameters:
isParallelIf true then jobs are run serially on the same thread on which function is called.
void IG::Script::LoadableScriptShellNeuralIT::PlotTrainingRmsError ( List< NeuralTrainingParameters trainParameters,
bool  showMinAndMaxError,
bool  showMinToMaxError,
bool  showBestNErrors,
int  numErrorsShow,
int  numBoundles 
) [inline]

Plots graph for training Rms errors.

Parameters:
trainParametersList of neural training parameters.
showMinAndMaxErrorPlot minimum and maximum error convergences.
showMinToMaxErrorPlot error convergences from min to max.
showBestNErrorsPlot selected number of best error convergences.
numErrorsShowNumber of error convergences shown on graph
numBoundlesNumber of bundles where sorting of convergences stars.
void IG::Script::LoadableScriptShellNeuralIT::PlotTrainingMaxError ( List< NeuralTrainingParameters trainParameters,
bool  showMinAndMaxError,
bool  showMinToMaxError,
bool  showBestNErrors,
int  numErrorsShow,
int  numBoundles 
) [inline]

Plots graph for training Max errors.

Parameters:
trainParametersList of neural training parameters.
showMinAndMaxErrorPlot minimum and maximum error convergences.
showMinToMaxErrorPlot error convergences from min to max.
showBestNErrorsPlot selected number of best error convergences.
numErrorsShowNumber of error convergences shown on graph
numBoundlesNumber of bundles where sorting of convergences stars.
void IG::Script::LoadableScriptShellNeuralIT::PlotVerificationRmsError ( List< NeuralTrainingParameters trainParameters,
bool  showMinAndMaxError,
bool  showMinToMaxError,
bool  showBestNErrors,
int  numErrorsShow,
int  numBoundles 
) [inline]

Plots graph for verification Rms errors.

Parameters:
trainParametersList of neural training parameters.
showMinAndMaxErrorPlot minimum and maximum error convergences.
showMinToMaxErrorPlot error convergences from min to max.
showBestNErrorsPlot selected number of best error convergences.
numErrorsShowNumber of error convergences shown on graph
numBoundlesNumber of bundles where sorting of convergences stars.
void IG::Script::LoadableScriptShellNeuralIT::PlotVerificationMaxError ( List< NeuralTrainingParameters trainParameters,
bool  showMinAndMaxError,
bool  showMinToMaxError,
bool  showBestNErrors,
int  numErrorsShow,
int  numBoundles 
) [inline]

Plots graph for verification Max errors.

Parameters:
trainParametersList of neural training parameters.
showMinAndMaxErrorPlot minimum and maximum error convergences.
showMinToMaxErrorPlot error convergences from min to max.
showBestNErrorsPlot selected number of best error convergences.
numErrorsShowNumber of error convergences shown on graph
numBoundlesNumber of bundles where sorting of convergences stars.
virtual void IG::Script::LoadableScriptShellNeuralIT::ApplyPlotSettings ( PlotterZedGraph  plotter,
PlotZedGraphBase  plot 
) [inline, virtual]

Applies basic plot settings for various kinds of plots.

Parameters:
plotterPlotter used for plotting graphs for which settings are set.
plotPlot that contains graphic objects.
virtual void IG::Script::LoadableScriptShellNeuralIT::ApplyPlotSettingsCurveRGB ( PlotterZedGraph  plotter,
PlotZedgraphCurve  plot,
double  r,
double  g,
double  b 
) [inline, virtual]
virtual void IG::Script::LoadableScriptShellNeuralIT::ApplyPlotSettingsCurve ( PlotterZedGraph  plotter,
PlotZedgraphCurve  plot 
) [inline, virtual]

Applies basic plot settings for basic kinds of curve plots.

Parameters:
plotterPlotter used for plotting graphs for which settings are set.
plotCurve plot that contains graphic objects.
virtual void IG::Script::LoadableScriptShellNeuralIT::ApplyPlotSettingsCurve ( PlotterZedGraph  plotter,
PlotZedgraphCurve  plot,
int  i,
int  max 
) [inline, virtual]

Applies basic plot settings for basic kinds of curve plots where groups of curves are plotted.

Parameters:
plotterPlotter used for plotting graphs for which settings are set.
plotCurve plot that contains graphic objects.
iCurrent index of the plot (running from 0) for which settings are applied.
maxMaximal index of the plot for which settings are applied.
virtual void IG::Script::LoadableScriptShellNeuralIT::ApplyPlotSettingsCurveBlueRed ( PlotterZedGraph  plotter,
PlotZedgraphCurve  plot,
int  i,
int  max 
) [inline, virtual]

Applies basic plot settings for basic kinds of curve plots where groups of curves are plotted.

Parameters:
plotterPlotter used for plotting graphs for which settings are set.
plotCurve plot that contains graphic objects.
iCurrent index of the plot (running from 0) for which settings are applied.
maxMaximal index of the plot for which settings are applied.
virtual void IG::Script::LoadableScriptShellNeuralIT::ApplyPlotSettingsCurveMonotoneBlue ( PlotterZedGraph  plotter,
PlotZedgraphCurve  plot,
int  i,
int  max 
) [inline, virtual]
virtual void IG::Script::LoadableScriptShellNeuralIT::ApplyPlotSettingsCurveMonotoneRed ( PlotterZedGraph  plotter,
PlotZedgraphCurve  plot,
int  i,
int  max 
) [inline, virtual]
virtual void IG::Script::LoadableScriptShellNeuralIT::PlotNeuralResponse ( IVector  parameters,
int  whichOut,
int  whichParam,
double  minParam,
double  maxParam,
int  numPoints 
) [inline, virtual]

Plots a parametrix stydy of neural network approximated response by plotting dependency of the specified output on the specified parameter.

Parameters:
parametersVector of parameters around which parametric study is performed. For all plotted points, all elements of vector of parameters except the element that is changed are obtained from this vector.
whichOutIndex of the approximated output value that is plotted.
whichParamSpecifies which parameter is changed on the plot.
minParamLower bound for the variable parameter.
maxParamUpper bound for the variable parameter.
numPointsNumber of points in which approximated response is calculated.
virtual void IG::Script::LoadableScriptShellNeuralIT::PlotNetworkResponse ( int  numPoints) [inline, virtual]

Plots some parametric studies of responses generated by the trained network.

Parameters:
numPointsNumber of plotted points on each plot where neural network response is calculated.
virtual void IG::Script::LoadableScriptShellNeuralIT::PlotNetworkResponseGrouped ( IVector  parameters,
int  whichOut,
IBoundingBox  parameterBounds,
int  numPoints 
) [inline, virtual]

Plots a parametrix stydy of neural network approximated response by plotting dependency of the specified output on the specified parameter.

Parameters:
parametersVector of parameters around which parametric study is performed. For all plotted points, all elements of vector of parameters except the element that is changed are obtained from this vector.
whichOutIndex of the approximated output value that is plotted.
whichParamSpecifies which parameter is changed on the plot.
minParamLower bound for the variable parameter.
maxParamUpper bound for the variable parameter.
numPointsNumber of points in which approximated response is calculated.
virtual void IG::Script::LoadableScriptShellNeuralIT::PlotNetworkResponseGrouped ( int  numPoints) [inline, virtual]

Plots some parametric studies of responses generated by the trained network.

Parameters:
numPointsNumber of plotted points on each plot where neural network response is calculated.
virtual void IG::Script::LoadableScriptShellNeuralIT::PlotAnalysisTable ( AnalysisResults[]  tabres) [inline, virtual]

Plots the specified table of analysis results.

Parameters:
tabresTable of results to be plotted.
virtual void IG::Script::LoadableScriptShellNeuralIT::PlotApproximationTable ( IVector  tabApproximationResults[][]) [inline, virtual]

Plots the specified table of calculated approximation results.

Parameters:
tabApproximationResultsArray of two arrays - of approximation inputs and of corresponding approximatino outputs.
void IG::Script::LoadableScriptShellNeuralIT::PlotVerificationError ( bool  showErrorInPercentage,
bool  verificationPoFromFile 
) [inline]

Plots the ANN approximation on verification points and real points.

Parameters:
showErrorInPercentageTrue - show error in percentage, false - show (real / approximation) difference.
verificationPoFromFileTrue - verification points loaded from file.
void IG::Script::LoadableScriptShellNeuralIT::PlotVerificationError ( bool  verificationFromFile,
int  whichOutput 
) [inline]

Plots the ANN approximation on verification points and real points.

Parameters:
verificationFromFileTrue - verification points loaded from file.
whichOutputWhich output to plot.
void IG::Script::LoadableScriptShellNeuralIT::PlotVerificationError ( bool  showErrorInPercentage,
bool  verificationFromFile,
int  whichOutput 
) [inline]

Plots the ANN approximation on verification points and real points.

Parameters:
showErrorInPercentageTrue - show error in percentage, false - show (real / approximation) difference.
verificationFromFileTrue - verification points loaded from file.
whichOutputWhich output to plot.
void IG::Script::LoadableScriptShellNeuralIT::CalculateVerificationError ( int  whichOut,
ref List< IVector >  verificationPointsResponse 
) [inline]

Calculates response on verification points.

Parameters:
verificationFromFileTrue - verification points loaded from file.
whichOutWhich output to plot.
verificationPointsResponse0 - relativeError(%), 1 - approximation value, 2 - real value, 3 - id.
void IG::Script::LoadableScriptShellNeuralIT::CalculateVerificationError ( bool  verificationFromFile,
int  whichOut,
ref List< IVector >  verificationPointsResponse 
) [inline]

Calculates response on verification points.

Parameters:
verificationFromFileTrue - verification points loaded from file.
whichOutWhich output to plot.
verificationPointsResponse0 - relativeError(%), 1 - approximation value, 2 - real value, 3 - id.
void IG::Script::LoadableScriptShellNeuralIT::PlotTrainingError ( ) [inline]

Plots the ANN approximation on training points and real points.

void IG::Script::LoadableScriptShellNeuralIT::PlotTrainingError ( int  whichOutput) [inline]

Plots the ANN approximation on training points and real points.

Parameters:
whichOutputWhich output to plot.
void IG::Script::LoadableScriptShellNeuralIT::PlotTrainingError ( bool  showErrorInPercentage,
int  whichOutput 
) [inline]

Plots the ANN approximation on training points and real points.

Parameters:
showErrorInPercentageTrue - show error in percentage, false - show (real / approximation) difference.
whichOutputWhich output to plot.
void IG::Script::LoadableScriptShellNeuralIT::CalculateTrainingError ( int  whichOut,
ref List< IVector >  trainingPointsResponse 
) [inline]

Calculates response on training points.

Parameters:
whichOutWhich output to plot.
verificationPointsResponse0 - relativeError(%), 1 - approximation value, 2 - real value, 3 - id.
void IG::Script::LoadableScriptShellNeuralIT::PointsOnLine ( ) [inline]

Network response on the points calculated between two selected points.

$A Tako78 Nov12;

void IG::Script::LoadableScriptShellNeuralIT::PlotResponseOnLine ( IVector  p1Training,
IVector  p2Training,
IVector  p1Verification,
IVector  p2Verification,
int  numPoints 
) [inline]

Network response on the points calculated between two selected points.

Parameters:
p1TrainingFirst defined point.
p2TrainingSecond defined point.
numPointsNumber of points on the line between p1 and p2.
void IG::Script::LoadableScriptShellNeuralIT::PlotTrainingAndVerificationPointsResponse ( List< IVector >  selectedTrainingPoints,
List< IVector >  selectedVerificationPoints,
int  whichOutput,
int  whichParameter,
double  min,
double  max 
) [inline]

Plots the ANN approcimation on the verification points and/or real points.

Parameters:
selectedTrainingPointsTraining points.
selectedVerificationPointsVerification points.
whichOutputWhich output to plot.
whichParameterWhich parameter to plot.
minMinimum range.
maxMaximum range.

$A Tako78 Nov12;

SampledDataSet IG::Script::LoadableScriptShellNeuralIT::GetVerificationFromApproximator ( ) [inline]

Returns verification points from complete training data set in approximator.

Returns:
Verification points.

$A Tako78 Nov12;

SampledDataSet IG::Script::LoadableScriptShellNeuralIT::GetTrainingFromApproximator ( ) [inline]

Returns training points from complete training data set in approximator.

Returns:
Training points.

$A Tako78 Nov12;

void IG::Script::LoadableScriptShellNeuralIT::SensitivityStart ( ) [inline]

Perform sensitiviy test from training and verification data.

$A Tako78 Jul13;

void IG::Script::LoadableScriptShellNeuralIT::SensitivityPerform ( IVector  trainingCenterPoint,
IVector  verificationCenterPoint 
) [inline]
void IG::Script::LoadableScriptShellNeuralIT::CenterPointResponse ( ) [inline]

Plots the ANN approcimation on the center point from verification point and/or real point.

$A Tako78 Nov12;

void IG::Script::LoadableScriptShellNeuralIT::PlotNetworkCenteredPointResponse ( IVector  trainingCenterPoint,
IVector  verificationCenterPoint 
) [inline]

Plots the ANN approcimation on the center point from verification point and/or real point.

$A Tako78 Nov12;

void IG::Script::LoadableScriptShellNeuralIT::CalculateSensitivity ( IVector  selectedTrainingPoint,
IVector  selectedVerificationPoint,
int  whichParameter,
double  min,
double  max 
) [inline]
void IG::Script::LoadableScriptShellNeuralIT::PlotTrainingAndVerificationPointResponse ( IVector  selectedTrainingPoint,
IVector  selectedVerificationPoint,
int  whichOutput,
int  whichParameter,
double  min,
double  max 
) [inline]

Plots the ANN approcimation on the verification point and real point.

Parameters:
selectedTrainingPointTraining point.
selectedVerificationPointVerification point.
whichOutputWhich output to plot.
whichParameterWhich parameter to plot.
minMinimum range.
maxMaximum range.

$A Tako78 Nov12;

void IG::Script::LoadableScriptShellNeuralIT::CenterPoint ( INeuralApproximator  Approximator,
ref IVector  inputCenterParameters,
bool  centerOnTrainingPoint 
) [inline]

Calculate the average center point for each parameter from complete data set.

Parameters:
TrainingDataVerification or training data set.
inputCenterParametersCentered input parameters.

$A Tako78 Nov12;

void IG::Script::LoadableScriptShellNeuralIT::CenterPoint ( SampledDataSet  DataSet,
ref IVector  inputCenterParameters 
) [inline]

Calculate the average center point for each parameter from complete data set.

Parameters:
DataSetVerification or training data set.
inputCenterParametersCentered input parameters.

$A Tako78 Nov12;

virtual string IG::Script::LoadableScriptShellNeuralIT::TrainNetwork ( string[]  arguments) [inline, virtual]
virtual string IG::Script::LoadableScriptShellNeuralIT::TrainParallelExample ( string[]  arguments) [inline, virtual]

Performs parallel training of neural networks with different parameters and default data. This conains only example of how parallel training is performed. You can override and modify this code in derived classes in order to use the method for specific trainings with hard-coded parameters.

Parameters:
argumentsArguments that specify behavior of this method.
virtual string IG::Script::LoadableScriptShellNeuralIT::PlotConvergence ( string[]  arguments) [inline, virtual]

Plot different convergences from traininglimits file.

Parameters:
argumentsCommand arguments.
Returns:
null

$A Tako78 Sep12;

virtual string IG::Script::LoadableScriptShellNeuralIT::PlotTrainingTime ( string[]  arguments) [inline, virtual]

Plot graph sorted on training time.

Parameters:
argumentsCommand arguments.
Returns:

$A Tako78 Sep12;

virtual string IG::Script::LoadableScriptShellNeuralIT::PlotVerificationResponse ( string[]  arguments) [inline, virtual]

Plot the approximated response of the neural network in the verification points.

Parameters:
argumentsCommand arguments, first one (index 0) is always command name.
Returns:
null.

TaKo78, feb 2012;

virtual string IG::Script::LoadableScriptShellNeuralIT::PlotTrainingResponse ( string[]  arguments) [inline, virtual]

Plot the approximated response of the neural network in the training points.

Parameters:
argumentsCommand arguments, first one (index 0) is always command name.
Returns:
null.
virtual string IG::Script::LoadableScriptShellNeuralIT::PlotNetworkResponseOnLineAll ( string[]  arguments) [inline, virtual]

Plot the approximated responses of the neural network on two selected points and on the points between them.

Parameters:
argumentsCommand arguments, first one (index 0) is always command name.
Returns:
null.
string IG::Script::LoadableScriptShellNeuralIT::PlotNetworkCenteredPoint ( string[]  arguments) [inline]

Pots parametric study on center point from training and/or verification sets.

Parameters:
argumentsCommand arguments, first one (index 0) is always command name.
Returns:
null.

$A Tako78 Nov12;

string IG::Script::LoadableScriptShellNeuralIT::Sensitivity ( string[]  arguments) [inline]

Execute sensitivity test and saves to CSV file.

Parameters:
argumentsCommand arguments, first one (index 0) is always command name.
Returns:
null.

$A Tako78 Jul13;


Member Data Documentation

Comamnd name for training the network.

const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpTrainNetwork = "Trains NN on basis of standard data. Args: <numLayers> <numNeurons>"

Command name for parallel training of neural network.

const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpTrainParallelExample = "Performs multiple trainings of neural networks at different parameters in parallel."

Comamnd name for plotting convergence errors.

const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpPlotConvergence = "Plots convergence errors of parallel trainings. Args: "

Comamnd name for plotting training time.

const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpPlotTrainingTime = "Plots training times of parallel trainings. Args: "

Comamnd name for testing network response for verification points(plots, etc.).

const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpVerificationResponse = "Plots verification response. "

Comamnd name for testing network response for verification points(plots, etc.).

const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpTrainingResponse = "Plots training response. "
const string IG::Script::LoadableScriptShellNeuralIT::ConstPlotVerificationAndTrainingPoints = "plotverificationandtrainingpoints"

Comamnd name for testing network response for verification points on line for all Inputs/outputs.

const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpPlotVerificationAndTrainingPoints = "Plots network response for verification and training points. "

Comamnd name for testing network response for verification points on line for all Inputs/outputs.

const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpNetworkResponseOnLineAll = "Plots network response for points on line from p1 to p2. "
const string IG::Script::LoadableScriptShellNeuralIT::ConstPlotNetworkCenteredPoint = "PlotNetworkResponseCenteredPoint"

Comamnd name for testing network response for centered point from verification or training points for all Inputs/outputs.

const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpPlotNetworkCenteredPoint = "Plots network response for centered point from verification or training set. "

Comamnd name for testing network response for centered point from verification or training points for all Inputs/outputs.

const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpSensitivity = "Execute sensitivity test. "

Learning rate from number.

Learning rate to number.

Number of learning rates in selected region.

Momentum from number.

Momentum to number.

Number of momentum in selected region.

Alpha value from number.

Alpha value to number.

Number of alpha values in selected region.

Max number of epochs.

Number of epochs in bundle.

Maximum tolerance for RMS.

Number of hidden layer in ANN.

Number of nwueons in each hidden layer.

Safety factor for input bound.

Safety factor for output bound.

HtmlWriter IG::Script::LoadableScriptShellNeuralIT::html = null [private]

Property Documentation

virtual List<NeuralTrainingParameters> IG::Script::LoadableScriptShellNeuralIT::TrainingParametersAndResults [get, protected]

List of training parameters for which training should be performed.

virtual string IG::Script::LoadableScriptShellNeuralIT::TrainingParametersPath [get]

Path to the default location lwhere training parameters and convergence results from multiple training attempts are stored.

virtual string IG::Script::LoadableScriptShellNeuralIT::TrainingLimitsPath [get]

Path to the default location lwhere training limits are stored.

$A Tako78 Aug12;

virtual string IG::Script::LoadableScriptShellNeuralIT::TrainingResultsPath [get]

Path to the default location lwhere training complete results are stored.

$A Tako78 Aug12;

virtual string IG::Script::LoadableScriptShellNeuralIT::TrainingResultsCSVPath [get]

Path to the default location lwhere training complete results are stored.

$A Tako78 Aug12;

virtual string IG::Script::LoadableScriptShellNeuralIT::OptimalTrainingParametersPath [get]

Path to the default location where optimal training parameters for the current problem are stored. Optimal in this context meand "best known".

virtual string IG::Script::LoadableScriptShellNeuralIT::AdditionalTrainingParametersFilename [get, set]

Eventual relative path of an additional file name where results are stored.

int IG::Script::LoadableScriptShellNeuralIT::ParallelNumServers [get, set]

Number of parallel servers that will be used for parallel execution of jobs.

int IG::Script::LoadableScriptShellNeuralIT::ParallelMaxEnqueued [get, set]

Maximal number of enqueued jobs when performing parallel execution of jobs. This is not enforced by all methods of this class that perform perallel execution.

int IG::Script::LoadableScriptShellNeuralIT::ParallelSleepTimeMs [get, set]

Sleeping time in milliseconds.

bool IG::Script::LoadableScriptShellNeuralIT::ParallelIsServerMode [get, set]

Whether servers will operate in server mode (true) or by running each job in a new thread (false).

int IG::Script::LoadableScriptShellNeuralIT::ParallelClientOutputLevel [get, set]

Client's output level when executing parallel jobs. This specifies how much information is output to console from the client code that sends jobs for parallel execution.

int IG::Script::LoadableScriptShellNeuralIT::ParallelOutputLevel [get, set]

Output level for parallel dispatcher, servers and job containers when executing parallel jobs. This specifies how much information is output to console from the when parallel jobs are being handled by the dispatcher and servers.

bool IG::Script::LoadableScriptShellNeuralIT::ParallelIsTestMode [get, set]

Specifies whether parallel jobs will be executing in testing mode (where e.g. delay times apply).

double IG::Script::LoadableScriptShellNeuralIT::ParallelDelayTimeSeconds [get, set]

Delay in seconds used in parallel execution. This is useful only for testing purposes, default is 0.

double IG::Script::LoadableScriptShellNeuralIT::ParallelDelayTimeRelativeError [get, set]

Relative variation in delay time used in parallel execution. This is useful only for testing purposes, default is 0.

virtual int IG::Script::LoadableScriptShellNeuralIT::ParallelSavingFrequency [get, set]

Frequency of saving the results of parallel execution: less than 0: results are not saved.0: results are saved only at the end, when all results are calculated.1: Results are saved every time a new result is calculated.N > 0: Resalts are saved every time after N new results are calculated


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations Properties