C# Class Encog.Neural.Flat.Train.Prop.TrainFlatNetworkProp

Inheritance: ITrainFlatNetwork
显示文件 Open project: encog/encog-silverlight-core Class Usage Examples

Protected Properties

Property Type Description
CurrentError double
Gradients double[]

Public Methods

Method Description
CalculateGradients ( ) : void

Calculate the gradients.

FinishTraining ( ) : void
InitOthers ( ) : void

Allow other training methods to init.

Iteration ( ) : void
Iteration ( int count ) : void

Perform the specified number of training iterations. This is a basic implementation that just calls iteration the specified number of times. However, some training methods, particularly with the GPU, benefit greatly by calling with higher numbers than 1.

Report ( double gradients, double error, Exception ex ) : void

Called by the worker threads to report the progress at each step.

UpdateWeight ( double gradients, double lastGradient, int index ) : double

Update a weight, the means by which weights are updated vary depending on the training.

Protected Methods

Method Description
Learn ( ) : void

Apply and learn.

LearnLimited ( ) : void

Apply and learn. This is the same as learn, but it checks to see if any of the weights are below the limit threshold. In this case, these weights are zeroed out. Having two methods allows the regular learn method, which is what is usually use, to be as fast as possible.

TrainFlatNetworkProp ( FlatNetwork network, IMLDataSet training ) : System

Train a flat network multithreaded.

Private Methods

Method Description
CopyContexts ( ) : void

Copy the contexts to keep them consistent with multithreaded training.

Init ( ) : void

Init the process.

Method Details

CalculateGradients() public method

Calculate the gradients.
public CalculateGradients ( ) : void
return void

FinishTraining() public method

public FinishTraining ( ) : void
return void

InitOthers() public abstract method

Allow other training methods to init.
public abstract InitOthers ( ) : void
return void

Iteration() public method

public Iteration ( ) : void
return void

Iteration() public method

Perform the specified number of training iterations. This is a basic implementation that just calls iteration the specified number of times. However, some training methods, particularly with the GPU, benefit greatly by calling with higher numbers than 1.
public Iteration ( int count ) : void
count int The number of training iterations.
return void

Learn() protected method

Apply and learn.
protected Learn ( ) : void
return void

LearnLimited() protected method

Apply and learn. This is the same as learn, but it checks to see if any of the weights are below the limit threshold. In this case, these weights are zeroed out. Having two methods allows the regular learn method, which is what is usually use, to be as fast as possible.
protected LearnLimited ( ) : void
return void

Report() public method

Called by the worker threads to report the progress at each step.
public Report ( double gradients, double error, Exception ex ) : void
gradients double The gradients from that worker.
error double The error for that worker.
ex System.Exception The exception.
return void

TrainFlatNetworkProp() protected method

Train a flat network multithreaded.
protected TrainFlatNetworkProp ( FlatNetwork network, IMLDataSet training ) : System
network Encog.Neural.Flat.FlatNetwork The network to train.
training IMLDataSet The training data to use.
return System

UpdateWeight() public abstract method

Update a weight, the means by which weights are updated vary depending on the training.
public abstract UpdateWeight ( double gradients, double lastGradient, int index ) : double
gradients double The gradients.
lastGradient double The last gradients.
index int The index.
return double

Property Details

CurrentError protected_oe property

The current error is the average error over all of the threads.
protected double CurrentError
return double

Gradients protected_oe property

The gradients.
protected double[] Gradients
return double[]