NeurApp 1.1
NeurApp - software for exploring approximation by artificial neural networks on functions of one or two variables.
|
Base class for loadable scripts that are used as custom applications that inclued neural networks approximations and optimization. More...
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 |
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;
IG::Script::LoadableScriptShellNeuralIT::LoadableScriptShellNeuralIT | ( | ) | [inline] |
override void IG::Script::LoadableScriptShellNeuralIT::InitializeThis | ( | string[] | arguments | ) | [inline, protected] |
Inializes the current script object.
arguments | Initialization 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.
interpreter | Interpreter where commands are executed. |
helpStrings | List containg help strings. |
Reimplemented from IG::Script::LoadableScriptShellNeuralITOriginalBase.
void IG::Script::LoadableScriptShellNeuralIT::TrainANN | ( | ) | [inline] |
Train the artificial neural network.
annType | 1 - NeuronDotNet, 2 - Aforge. |
NumNeurons | Number of neirons in 1st hidden layer. |
MaxEpochs | Max epochs. |
EpochsInBundle | Epochs in bundle. |
LearnignRate | Learning rate. |
Momentum | Momentum. |
InputSafetyFactor | Input safety factor. |
OutputSafetyFactor | Output safety factor. |
PercentVerificationPoints | Percentage 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.
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 | Training parameters used for training. |
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.
isParallel | If 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.
trainParameters | List of neural training parameters. |
showMinAndMaxError | Plot minimum and maximum error convergences. |
showMinToMaxError | Plot error convergences from min to max. |
showBestNErrors | Plot selected number of best error convergences. |
numErrorsShow | Number of error convergences shown on graph |
numBoundles | Number 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.
trainParameters | List of neural training parameters. |
showMinAndMaxError | Plot minimum and maximum error convergences. |
showMinToMaxError | Plot error convergences from min to max. |
showBestNErrors | Plot selected number of best error convergences. |
numErrorsShow | Number of error convergences shown on graph |
numBoundles | Number 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.
trainParameters | List of neural training parameters. |
showMinAndMaxError | Plot minimum and maximum error convergences. |
showMinToMaxError | Plot error convergences from min to max. |
showBestNErrors | Plot selected number of best error convergences. |
numErrorsShow | Number of error convergences shown on graph |
numBoundles | Number 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.
trainParameters | List of neural training parameters. |
showMinAndMaxError | Plot minimum and maximum error convergences. |
showMinToMaxError | Plot error convergences from min to max. |
showBestNErrors | Plot selected number of best error convergences. |
numErrorsShow | Number of error convergences shown on graph |
numBoundles | Number 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.
plotter | Plotter used for plotting graphs for which settings are set. |
plot | Plot 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.
plotter | Plotter used for plotting graphs for which settings are set. |
plot | Curve 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.
plotter | Plotter used for plotting graphs for which settings are set. |
plot | Curve plot that contains graphic objects. |
i | Current index of the plot (running from 0) for which settings are applied. |
max | Maximal 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.
plotter | Plotter used for plotting graphs for which settings are set. |
plot | Curve plot that contains graphic objects. |
i | Current index of the plot (running from 0) for which settings are applied. |
max | Maximal 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 | Vector 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. |
whichOut | Index of the approximated output value that is plotted. |
whichParam | Specifies which parameter is changed on the plot. |
minParam | Lower bound for the variable parameter. |
maxParam | Upper bound for the variable parameter. |
numPoints | Number 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.
numPoints | Number 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 | Vector 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. |
whichOut | Index of the approximated output value that is plotted. |
whichParam | Specifies which parameter is changed on the plot. |
minParam | Lower bound for the variable parameter. |
maxParam | Upper bound for the variable parameter. |
numPoints | Number 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.
numPoints | Number 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.
tabres | Table of results to be plotted. |
virtual void IG::Script::LoadableScriptShellNeuralIT::PlotApproximationTable | ( | IVector | tabApproximationResults[][] | ) | [inline, virtual] |
Plots the specified table of calculated approximation results.
tabApproximationResults | Array 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.
showErrorInPercentage | True - show error in percentage, false - show (real / approximation) difference. |
verificationPoFromFile | True - 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.
verificationFromFile | True - verification points loaded from file. |
whichOutput | Which 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.
showErrorInPercentage | True - show error in percentage, false - show (real / approximation) difference. |
verificationFromFile | True - verification points loaded from file. |
whichOutput | Which output to plot. |
void IG::Script::LoadableScriptShellNeuralIT::CalculateVerificationError | ( | int | whichOut, |
ref List< IVector > | verificationPointsResponse | ||
) | [inline] |
Calculates response on verification points.
verificationFromFile | True - verification points loaded from file. |
whichOut | Which output to plot. |
verificationPointsResponse | 0 - 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.
verificationFromFile | True - verification points loaded from file. |
whichOut | Which output to plot. |
verificationPointsResponse | 0 - 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.
whichOutput | Which output to plot. |
void IG::Script::LoadableScriptShellNeuralIT::PlotTrainingError | ( | bool | showErrorInPercentage, |
int | whichOutput | ||
) | [inline] |
Plots the ANN approximation on training points and real points.
showErrorInPercentage | True - show error in percentage, false - show (real / approximation) difference. |
whichOutput | Which output to plot. |
void IG::Script::LoadableScriptShellNeuralIT::CalculateTrainingError | ( | int | whichOut, |
ref List< IVector > | trainingPointsResponse | ||
) | [inline] |
Calculates response on training points.
whichOut | Which output to plot. |
verificationPointsResponse | 0 - 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.
p1Training | First defined point. |
p2Training | Second defined point. |
numPoints | Number 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.
selectedTrainingPoints | Training points. |
selectedVerificationPoints | Verification points. |
whichOutput | Which output to plot. |
whichParameter | Which parameter to plot. |
min | Minimum range. |
max | Maximum range. |
$A Tako78 Nov12;
SampledDataSet IG::Script::LoadableScriptShellNeuralIT::GetVerificationFromApproximator | ( | ) | [inline] |
Returns verification points from complete training data set in approximator.
$A Tako78 Nov12;
SampledDataSet IG::Script::LoadableScriptShellNeuralIT::GetTrainingFromApproximator | ( | ) | [inline] |
Returns training points from complete training data set in approximator.
$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.
selectedTrainingPoint | Training point. |
selectedVerificationPoint | Verification point. |
whichOutput | Which output to plot. |
whichParameter | Which parameter to plot. |
min | Minimum range. |
max | Maximum 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.
TrainingData | Verification or training data set. |
inputCenterParameters | Centered 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.
DataSet | Verification or training data set. |
inputCenterParameters | Centered 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.
arguments | Arguments that specify behavior of this method. |
virtual string IG::Script::LoadableScriptShellNeuralIT::PlotConvergence | ( | string[] | arguments | ) | [inline, virtual] |
Plot different convergences from traininglimits file.
arguments | Command arguments. |
$A Tako78 Sep12;
virtual string IG::Script::LoadableScriptShellNeuralIT::PlotTrainingTime | ( | string[] | arguments | ) | [inline, virtual] |
Plot graph sorted on training time.
arguments | Command arguments. |
$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.
arguments | Command arguments, first one (index 0) is always command name. |
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.
arguments | Command arguments, first one (index 0) is always command name. |
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.
arguments | Command arguments, first one (index 0) is always command name. |
string IG::Script::LoadableScriptShellNeuralIT::PlotNetworkCenteredPoint | ( | string[] | arguments | ) | [inline] |
Pots parametric study on center point from training and/or verification sets.
arguments | Command arguments, first one (index 0) is always command name. |
$A Tako78 Nov12;
string IG::Script::LoadableScriptShellNeuralIT::Sensitivity | ( | string[] | arguments | ) | [inline] |
Execute sensitivity test and saves to CSV file.
arguments | Command arguments, first one (index 0) is always command name. |
$A Tako78 Jul13;
const string IG::Script::LoadableScriptShellNeuralIT::ConstTrainNetwork = "TrainNetwork" |
Comamnd name for training the network.
const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpTrainNetwork = "Trains NN on basis of standard data. Args: <numLayers> <numNeurons>" |
const string IG::Script::LoadableScriptShellNeuralIT::ConstTrainParallelExample = "TrainParallel" |
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." |
const string IG::Script::LoadableScriptShellNeuralIT::ConstPlotConvergence = "plotconvergence" |
Comamnd name for plotting convergence errors.
const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpPlotConvergence = "Plots convergence errors of parallel trainings. Args: " |
const string IG::Script::LoadableScriptShellNeuralIT::ConstPlotTrainingTime = "plottrainingtime" |
Comamnd name for plotting training time.
const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpPlotTrainingTime = "Plots training times of parallel trainings. Args: " |
const string IG::Script::LoadableScriptShellNeuralIT::ConstPlotVerificationResponse = "PlotVerificationResponse" |
Comamnd name for testing network response for verification points(plots, etc.).
const string IG::Script::LoadableScriptShellNeuralIT::ConstHelpVerificationResponse = "Plots verification response. " |
const string IG::Script::LoadableScriptShellNeuralIT::ConstPlotTrainingResponse = "PlotTrainingResponse" |
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. " |
const string IG::Script::LoadableScriptShellNeuralIT::ConstPlotNetworkResponseOnLineAll = "PlotNetworkResponseOnLineAll" |
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. " |
const string IG::Script::LoadableScriptShellNeuralIT::ConstSensitivity = "Sensitivity" |
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.
double IG::Script::LoadableScriptShellNeuralIT::MomentumTo = 0.6 |
Momentum to number.
Number of momentum in selected region.
double IG::Script::LoadableScriptShellNeuralIT::AlphaFrom = 1.2 |
Alpha value from number.
double IG::Script::LoadableScriptShellNeuralIT::AlphaTo = 1.8 |
Alpha value to number.
Number of alpha values in selected region.
Max number of epochs.
Number of epochs in bundle.
double IG::Script::LoadableScriptShellNeuralIT::ToleranceRMS = 0.01 |
Maximum tolerance for RMS.
Number of hidden layer in ANN.
int [] IG::Script::LoadableScriptShellNeuralIT::NumHiddenNeurons = new int[] { 10 } |
Number of nwueons in each hidden layer.
Safety factor for input bound.
Safety factor for output bound.
List<NeuralTrainingParameters> IG::Script::LoadableScriptShellNeuralIT::_trainingParameters [private] |
HtmlWriter IG::Script::LoadableScriptShellNeuralIT::html = null [private] |
double IG::Script::LoadableScriptShellNeuralIT::Momentum = 0.6 |
double IG::Script::LoadableScriptShellNeuralIT::AlphaValue = 1.0 |
int IG::Script::LoadableScriptShellNeuralIT::numPointsOnLine = 5 [protected] |
bool IG::Script::LoadableScriptShellNeuralIT::maxDistancePoints = true [protected] |
bool IG::Script::LoadableScriptShellNeuralIT::enableTrainingPoint = false [protected] |
bool IG::Script::LoadableScriptShellNeuralIT::enableVerificationPoint = true [protected] |
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