MyCaffe  1.12.2.41
Deep learning software for Windows C# programmers.
MyCaffe.trainers.IXMyCaffeCustomTrainer Interface Reference

The IXMyCaffeCustomTrainer interface is used by the MyCaffeCustomTraininer components that provide various training techniques such as Reinforcement Training. More...

Inheritance diagram for MyCaffe.trainers.IXMyCaffeCustomTrainer:
MyCaffe.trainers.IXMyCaffeCustomTrainerRL MyCaffe.trainers.IXMyCaffeCustomTrainerRNN MyCaffe.trainers.MyCaffeTrainerDual MyCaffe.trainers.MyCaffeTrainerRL MyCaffe.trainers.MyCaffeTrainerDual MyCaffe.trainers.MyCaffeTrainerRNN

Public Member Functions

void Initialize (string strProperties, IXMyCaffeCustomTrainerCallback icallback)
 Initialize the trainer passing in a set of key-value pairs as properties. More...
 
void CleanUp ()
 Clean-up the trainer by releasing all resources used. More...
 
bool GetUpdateSnapshot (out int nIteration, out double dfAccuracy)
 Returns true when the training is ready for a snap-shot, false otherwise. More...
 
DatasetDescriptor GetDatasetOverride (int nProjectID, ConnectInfo ci=null)
 Returns a dataset override to use (if any) instead of the project's dataset. If there is no dataset override null is returned and the project's dataset is used. More...
 
void Train (Component mycaffe, int nIterationOverride, ITERATOR_TYPE type=ITERATOR_TYPE.ITERATION, TRAIN_STEP step=TRAIN_STEP.NONE)
 Train the network using the training technique implemented by this trainer. More...
 
void Test (Component mycaffe, int nIterationOverride, ITERATOR_TYPE type=ITERATOR_TYPE.ITERATION)
 Test the network using the testing technique implemented by this trainer. More...
 
double GetProperty (string strName)
 Returns a specific property value. More...
 
void OpenUi ()
 Open the user interface if one exists for the trainer. More...
 

Properties

Stage Stage [get]
 Returns the stage that the trainer is running under based on the trainer type. More...
 
string Name [get]
 Returns the name of the custom trainer. More...
 
TRAINING_CATEGORY TrainingCategory [get]
 Returns the training category supported by the implementer of the interface. More...
 
bool IsTrainingSupported [get]
 Returns true when the 'Train' method is supported - this should almost always be true. More...
 
bool IsTestingSupported [get]
 Returns true when the 'Test' method is supported. More...
 
bool IsRunningSupported [get]
 Returns true when the 'Run' method is supported. More...
 
string Information [get]
 Returns general information about the custom trainer. More...
 

Detailed Description

The IXMyCaffeCustomTrainer interface is used by the MyCaffeCustomTraininer components that provide various training techniques such as Reinforcement Training.

Definition at line 37 of file Interfaces.cs.

Member Function Documentation

◆ CleanUp()

void MyCaffe.trainers.IXMyCaffeCustomTrainer.CleanUp ( )

Clean-up the trainer by releasing all resources used.

Implemented in MyCaffe.trainers.MyCaffeTrainerDual, MyCaffe.trainers.MyCaffeTrainerRL, and MyCaffe.trainers.MyCaffeTrainerRNN.

◆ GetDatasetOverride()

DatasetDescriptor MyCaffe.trainers.IXMyCaffeCustomTrainer.GetDatasetOverride ( int  nProjectID,
ConnectInfo  ci = null 
)

Returns a dataset override to use (if any) instead of the project's dataset. If there is no dataset override null is returned and the project's dataset is used.

Parameters
nProjectIDSpecifies the project ID associated with the trainer (if any)
ciOptionally, specifies the database connection information (default = null).

Implemented in MyCaffe.trainers.MyCaffeTrainerDual, MyCaffe.trainers.MyCaffeTrainerRL, and MyCaffe.trainers.MyCaffeTrainerRNN.

◆ GetProperty()

double MyCaffe.trainers.IXMyCaffeCustomTrainer.GetProperty ( string  strName)

Returns a specific property value.

Parameters
strNameSpecifies the property to get.
Returns
The property value is returned.

The following properties are supported by all trainers: 'GlobalLoss'

The following properties are supported by the RL trainers: 'GlobalRewards' 'GlobalEpisodeCount' 'ExplorationRate'

The following properties are supported by the RNN trainers: 'GlobalIteration'

Implemented in MyCaffe.trainers.MyCaffeTrainerDual, MyCaffe.trainers.MyCaffeTrainerRL, and MyCaffe.trainers.MyCaffeTrainerRNN.

◆ GetUpdateSnapshot()

bool MyCaffe.trainers.IXMyCaffeCustomTrainer.GetUpdateSnapshot ( out int  nIteration,
out double  dfAccuracy 
)

Returns true when the training is ready for a snap-shot, false otherwise.

Parameters
nIterationSpecifies the current iteration.
dfAccuracySpecifies the current accuracy or rewards for Reinforcement trainers.

Implemented in MyCaffe.trainers.MyCaffeTrainerDual, MyCaffe.trainers.MyCaffeTrainerRL, and MyCaffe.trainers.MyCaffeTrainerRNN.

◆ Initialize()

void MyCaffe.trainers.IXMyCaffeCustomTrainer.Initialize ( string  strProperties,
IXMyCaffeCustomTrainerCallback  icallback 
)

Initialize the trainer passing in a set of key-value pairs as properties.

Use the ProeprtySet object to easily parse the key-value pair properties.

Parameters
strPropertiesSpecifies the properties.
icallbackSpecifies the parent callback for updates.

Implemented in MyCaffe.trainers.MyCaffeTrainerDual, MyCaffe.trainers.MyCaffeTrainerRL, and MyCaffe.trainers.MyCaffeTrainerRNN.

◆ OpenUi()

void MyCaffe.trainers.IXMyCaffeCustomTrainer.OpenUi ( )

Open the user interface if one exists for the trainer.

Implemented in MyCaffe.trainers.MyCaffeTrainerDual, MyCaffe.trainers.MyCaffeTrainerRL, and MyCaffe.trainers.MyCaffeTrainerRNN.

◆ Test()

void MyCaffe.trainers.IXMyCaffeCustomTrainer.Test ( Component  mycaffe,
int  nIterationOverride,
ITERATOR_TYPE  type = ITERATOR_TYPE.ITERATION 
)

Test the network using the testing technique implemented by this trainer.

Parameters
mycaffeSpecifies an instance to the MyCaffeControl component.
nIterationOverrideSpecifies the iteration override if any.
typeSpecifies the type of iterator to use.

Implemented in MyCaffe.trainers.MyCaffeTrainerDual, MyCaffe.trainers.MyCaffeTrainerRL, and MyCaffe.trainers.MyCaffeTrainerRNN.

◆ Train()

void MyCaffe.trainers.IXMyCaffeCustomTrainer.Train ( Component  mycaffe,
int  nIterationOverride,
ITERATOR_TYPE  type = ITERATOR_TYPE.ITERATION,
TRAIN_STEP  step = TRAIN_STEP.NONE 
)

Train the network using the training technique implemented by this trainer.

Parameters
mycaffeSpecifies an instance to the MyCaffeControl component.
nIterationOverrideSpecifies the iteration override if any.
typeSpecifies the type of iterator to use.
stepSpecifies whether or not to step the training for debugging.

Implemented in MyCaffe.trainers.MyCaffeTrainerDual, MyCaffe.trainers.MyCaffeTrainerRL, and MyCaffe.trainers.MyCaffeTrainerRNN.

Property Documentation

◆ Information

string MyCaffe.trainers.IXMyCaffeCustomTrainer.Information
get

Returns general information about the custom trainer.

Definition at line 123 of file Interfaces.cs.

◆ IsRunningSupported

bool MyCaffe.trainers.IXMyCaffeCustomTrainer.IsRunningSupported
get

Returns true when the 'Run' method is supported.

Definition at line 86 of file Interfaces.cs.

◆ IsTestingSupported

bool MyCaffe.trainers.IXMyCaffeCustomTrainer.IsTestingSupported
get

Returns true when the 'Test' method is supported.

Definition at line 82 of file Interfaces.cs.

◆ IsTrainingSupported

bool MyCaffe.trainers.IXMyCaffeCustomTrainer.IsTrainingSupported
get

Returns true when the 'Train' method is supported - this should almost always be true.

Definition at line 78 of file Interfaces.cs.

◆ Name

string MyCaffe.trainers.IXMyCaffeCustomTrainer.Name
get

Returns the name of the custom trainer.

Definition at line 57 of file Interfaces.cs.

◆ Stage

Stage MyCaffe.trainers.IXMyCaffeCustomTrainer.Stage
get

Returns the stage that the trainer is running under based on the trainer type.

Definition at line 53 of file Interfaces.cs.

◆ TrainingCategory

TRAINING_CATEGORY MyCaffe.trainers.IXMyCaffeCustomTrainer.TrainingCategory
get

Returns the training category supported by the implementer of the interface.

Definition at line 61 of file Interfaces.cs.


The documentation for this interface was generated from the following file: