MyCaffe  1.11.7.7
Deep learning software for Windows C# programmers.
MyCaffe.trainers.MyCaffeTrainerDual Class Reference

The MyCaffeTraininerDual is used to perform both reinforcement and recurrent learning training tasks on an instance of the MyCaffeControl. More...

Inheritance diagram for MyCaffe.trainers.MyCaffeTrainerDual:
MyCaffe.trainers.IXMyCaffeCustomTrainerRL MyCaffe.trainers.IXMyCaffeCustomTrainerRNN MyCaffe.trainers.IxTrainerCallbackRNN MyCaffe.trainers.IXMyCaffeCustomTrainer MyCaffe.trainers.IXMyCaffeCustomTrainer MyCaffe.trainers.IxTrainerCallback

Public Member Functions

 MyCaffeTrainerDual ()
 The constructor. More...
 
 MyCaffeTrainerDual (IContainer container)
 The constructor. 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 CleanUp ()
 Releases any resources used by the component. More...
 
void Initialize (string strProperties, IXMyCaffeCustomTrainerCallback icallback)
 Initializes a new custom trainer by loading the key-value pair of properties into the property set. More...
 
void Test (Component mycaffe, int nIterationOverride, ITERATOR_TYPE type=ITERATOR_TYPE.ITERATION)
 Create a new trainer and use it to run a test cycle using the current 'stage' = RNN or RL. More...
 
void Train (Component mycaffe, int nIterationOverride, ITERATOR_TYPE type=ITERATOR_TYPE.ITERATION, TRAIN_STEP step=TRAIN_STEP.NONE)
 Create a new trainer and use it to run a training cycle using the current 'stage' = RNN or RL. More...
 
void OnInitialize (InitializeArgs e)
 The OnIntialize callback fires when initializing the trainer. More...
 
void OnShutdown ()
 The OnShutdown callback fires when shutting down the trainer. More...
 
void OnGetData (GetDataArgs e)
 The OnGetData callback fires from within the Train method and is used to get a new observation data. More...
 
void OnConvertOutput (ConvertOutputArgs e)
 The OnConvertOutput callback fires from within the Run method and is used to convert the network output into its native format. More...
 
void OnTestAccuracyUpdate (TestAccuracyUpdateArgs e)
 The OnTestAccuracyUpdate callback fires from within the Run method and is used to give the recipient the chance to determine whether the label detected is correct or not. More...
 
void OnUpdateStatus (GetStatusArgs e)
 The OnGetStatus callback fires on each iteration within the Train method. More...
 
void OnWait (WaitArgs e)
 The OnWait callback fires when waiting for a shutdown. More...
 
double GetProperty (string strProp)
 Return a property value from the trainer. More...
 
void OpenUi ()
 Open the user interface for the trainer, of one exists. More...
 
byte[] Run (Component mycaffe, int nN, out string type)
 Run the network using the run technique implemented by this trainer. More...
 

Protected Member Functions

virtual DatasetDescriptor get_dataset_override (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...
 
virtual string get_information ()
 Returns information describing the specific trainer, such as the gym used, if any. More...
 
virtual IxTrainer create_trainerD (Component caffe, Stage stage)
 Optionally overridden to return a new type of trainer. More...
 
virtual IxTrainer create_trainerF (Component caffe, Stage stage)
 Optionally overridden to return a new type of trainer. More...
 
virtual void dispose ()
 Override to dispose of resources used. More...
 
virtual void initialize (InitializeArgs e)
 Override called by the Initialize method of the trainer. More...
 
virtual void shutdown ()
 Override called from within the CleanUp method. More...
 
virtual bool getData (GetDataArgs e)
 Override called by the OnGetData event fired by the Trainer to retrieve a new set of observation collections making up a set of experiences. More...
 
virtual bool convertOutput (ConvertOutputArgs e)
 Override called by the OnConvertOutput event fired by the Trainer to convert the network output into its native format. More...
 
virtual void testAccuracyUpdate (TestAccuracyUpdateArgs e)
 Override called by the OnTestAccuracyUpdate event fired from within the Run method and is used to give the recipient the chance to determine whether the label detected is correct or not. More...
 
virtual bool get_update_snapshot (out int nIteration, out double dfAccuracy)
 Returns true when the training is ready for a snap-shot, false otherwise. More...
 
virtual void openUi ()
 Called by OpenUi, override this when a UI (via WCF) should be displayed. More...
 
virtual BucketCollection preloaddata (Log log, CancelEvent evtCancel, int nProjectID, PropertySet propertyOverride=null, ConnectInfo ci=null)
 The preloaddata method gives the custom trainer an opportunity to pre-load any data. More...
 
override void Dispose (bool disposing)
 Clean up any resources being used. More...
 

Protected Attributes

CryptoRandom m_random = new CryptoRandom()
 Random number generator used to get initial actions, etc. More...
 
PropertySet m_properties = null
 Specifies the properties parsed from the key-value pair passed to the Initialize method. More...
 
int m_nProjectID = 0
 Specifies the project ID of the project held by the instance of MyCaffe. More...
 
ConnectInfo m_dsCi = null
 Optionally, specifies the dataset connection info, or null. More...
 

Properties

virtual string name [get]
 Overriden to give the actual name of the custom trainer. More...
 
virtual TRAINING_CATEGORY category [get]
 Override when using a training method other than the REINFORCEMENT method (the default). More...
 
Stage Stage [get]
 Returns the stage under which the trainer is running based on the trainer type. More...
 
string Name [get]
 Returns the name of the custom trainer. This method calls the 'name' override. More...
 
TRAINING_CATEGORY TrainingCategory [get]
 Returns the training category of the custom trainer (default = REINFORCEMENT). More...
 
bool IsTrainingSupported [get]
 Returns whether or not Training is supported. More...
 
bool IsTestingSupported [get]
 Returns whether or not Testing is supported. More...
 
bool IsRunningSupported [get]
 Returns whether or not Running is supported. More...
 
double? GlobalRewards [get]
 Returns the global rewards based on the reward type specified by the 'RewardType' property. More...
 
double ImmediateRewards [get]
 Returns the immediate rewards for the current training cycle as opposed to the averaged rewards. More...
 
double GlobalLoss [get]
 Return the global loss. More...
 
int GlobalIteration [get]
 Returns the global iteration. More...
 
int GlobalEpisodeCount [get]
 Returns the global episode count. More...
 
int GlobalEpisodeMax [get]
 Returns the maximum global episode count. More...
 
double ExplorationRate [get]
 Returns the current exploration rate. More...
 
double OptimalSelectionRate [get]
 Returns the rate of selection from the optimal set with the highest reward (this setting is optional, default = 0). More...
 
string Information [get]
 Returns information describing the trainer. More...
 
- Properties inherited from MyCaffe.trainers.IXMyCaffeCustomTrainer
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 MyCaffeTraininerDual is used to perform both reinforcement and recurrent learning training tasks on an instance of the MyCaffeControl.

–RL– Currently, the MyCaffeTrainerDual supports the following reinforcement trainers, each of which are selected with the 'TrainerType=type' property value within the property set specified when calling the Initialize method.

TrainerType=PG.SIMPLE - creates the initial simple policy gradient trainer that only supports single-threaded Sigmoid based models. TrainerType=PG.ST - creates a single-threaded policy gradient trainer that supports both Sigmoid and Softmax based models. TrainerType=PG.MT - creates a multi-threaded policy gradient trainer that supports both Sigmoid and Softmax based models and can train across GPU's. TrainerType=C51.ST = creates a single-threaded network that implements the C51 DDQN algorithm.

Other intitialization properties include:

RewardType=VAL - reports the actual reward values. RewardType=MAX - reports the maximum reward value observed (recommended setting)

Threads=# - specifies the number of threads.

GPUs=#,#,... - specifies the GPU's on which to run each thread. The GPU IDs may be the same as the open project or other GPU's in the system. GPU selection starts with the first GPUID in the list, continues to the end, and then wraps back around to the start of the list. For example if you specifiy to use 3 thread with GPUIDs=0,1 the GPUs will be assigned to each thread as follows: Thread0 => GPUID0, Thread1 => GPUID1, Thread2 => GPUID0

Gamma - specifies the discount rate (default = 0.99) UseRawInput - when true the actual input is used directly, otherwise a difference between the current and previous input is used (default = false).

–RNN– Currently, the MyCaffeTrainerDual also supports the following recurrent trainers, each of which are selected with the 'TrainerType=type' property value within the property set specified when calling the Initialize method.

TrainerType=RNN.SIMPLE - creates the initial simple policy gradient trainer that only supports single-threaded Sigmoid based models.

The following settings are used from the Model and Solver descriptions:

Solver: base_lr - specifies the learning rate used. Model: batch_size - specifies how often accumulated gradients are applied.

Definition at line 57 of file MyCaffeTrainerDual.cs.

Constructor & Destructor Documentation

◆ MyCaffeTrainerDual() [1/2]

MyCaffe.trainers.MyCaffeTrainerDual.MyCaffeTrainerDual ( )

The constructor.

Definition at line 121 of file MyCaffeTrainerDual.cs.

◆ MyCaffeTrainerDual() [2/2]

MyCaffe.trainers.MyCaffeTrainerDual.MyCaffeTrainerDual ( IContainer  container)

The constructor.

Parameters
containerThe container of the component.

Definition at line 130 of file MyCaffeTrainerDual.cs.

Member Function Documentation

◆ CleanUp()

void MyCaffe.trainers.MyCaffeTrainerDual.CleanUp ( )

Releases any resources used by the component.

Implements MyCaffe.trainers.IXMyCaffeCustomTrainer.

Definition at line 462 of file MyCaffeTrainerDual.cs.

◆ convertOutput()

virtual bool MyCaffe.trainers.MyCaffeTrainerDual.convertOutput ( ConvertOutputArgs  e)
protectedvirtual

Override called by the OnConvertOutput event fired by the Trainer to convert the network output into its native format.

Parameters
eSpecifies the event arguments.
Returns
When handled this function retunrs true, otherwise it returns false.

Definition at line 333 of file MyCaffeTrainerDual.cs.

◆ create_trainerD()

virtual IxTrainer MyCaffe.trainers.MyCaffeTrainerDual.create_trainerD ( Component  caffe,
Stage  stage 
)
protectedvirtual

Optionally overridden to return a new type of trainer.

Override this method when using the MyCaffeControl that uses the double base type.

Parameters
caffeSpecifies the MyCaffeControl used.
stageSpecifies the stage under which the trainer is created.
Returns
The IxTraininer interface implemented by the new trainer is returned.

Definition at line 184 of file MyCaffeTrainerDual.cs.

◆ create_trainerF()

virtual IxTrainer MyCaffe.trainers.MyCaffeTrainerDual.create_trainerF ( Component  caffe,
Stage  stage 
)
protectedvirtual

Optionally overridden to return a new type of trainer.

Override this method when using the MyCaffeControl that uses the double base type.

Parameters
caffeSpecifies the MyCaffeControl used.
stageSpecifies the stage under which the trainer is created.
Returns
The IxTraininer interface implemented by the new trainer is returned.

Definition at line 243 of file MyCaffeTrainerDual.cs.

◆ dispose()

virtual void MyCaffe.trainers.MyCaffeTrainerDual.dispose ( )
protectedvirtual

Override to dispose of resources used.

Definition at line 296 of file MyCaffeTrainerDual.cs.

◆ Dispose()

override void MyCaffe.trainers.MyCaffeTrainerDual.Dispose ( bool  disposing)
protected

Clean up any resources being used.

Parameters
disposingtrue if managed resources should be disposed; otherwise, false.

Definition at line 14 of file MyCaffeTrainerDual.Designer.cs.

◆ get_dataset_override()

virtual DatasetDescriptor MyCaffe.trainers.MyCaffeTrainerDual.get_dataset_override ( int  nProjectID,
ConnectInfo  ci = null 
)
protectedvirtual

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).

Definition at line 161 of file MyCaffeTrainerDual.cs.

◆ get_information()

virtual string MyCaffe.trainers.MyCaffeTrainerDual.get_information ( )
protectedvirtual

Returns information describing the specific trainer, such as the gym used, if any.

Returns
The string describing the trainer is returned.

Definition at line 170 of file MyCaffeTrainerDual.cs.

◆ get_update_snapshot()

virtual bool MyCaffe.trainers.MyCaffeTrainerDual.get_update_snapshot ( out int  nIteration,
out double  dfAccuracy 
)
protectedvirtual

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

Parameters
nIterationSpecifies the current iteration.
dfAccuracySpecifies the current rewards.

Definition at line 351 of file MyCaffeTrainerDual.cs.

◆ getData()

virtual bool MyCaffe.trainers.MyCaffeTrainerDual.getData ( GetDataArgs  e)
protectedvirtual

Override called by the OnGetData event fired by the Trainer to retrieve a new set of observation collections making up a set of experiences.

Parameters
eSpecifies the getData argments used to return the new observations.
Returns
A value of true is returned when data is retrieved.

Definition at line 323 of file MyCaffeTrainerDual.cs.

◆ GetDatasetOverride()

DatasetDescriptor MyCaffe.trainers.MyCaffeTrainerDual.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).

Implements MyCaffe.trainers.IXMyCaffeCustomTrainer.

Definition at line 430 of file MyCaffeTrainerDual.cs.

◆ GetProperty()

double MyCaffe.trainers.MyCaffeTrainerDual.GetProperty ( string  strProp)

Return a property value from the trainer.

Parameters
strPropSpecifies the name of property to retrieve.
Returns
The property value is returned.

Implements MyCaffe.trainers.IXMyCaffeCustomTrainer.

Definition at line 707 of file MyCaffeTrainerDual.cs.

◆ GetUpdateSnapshot()

bool MyCaffe.trainers.MyCaffeTrainerDual.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 rewards.

Implements MyCaffe.trainers.IXMyCaffeCustomTrainer.

Definition at line 419 of file MyCaffeTrainerDual.cs.

◆ initialize()

virtual void MyCaffe.trainers.MyCaffeTrainerDual.initialize ( InitializeArgs  e)
protectedvirtual

Override called by the Initialize method of the trainer.

When providing a new trainer, this method is not used.

Parameters
eSpecifies the initialization arguments.

Definition at line 307 of file MyCaffeTrainerDual.cs.

◆ Initialize()

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

Initializes a new custom trainer by loading the key-value pair of properties into the property set.

Parameters
strPropertiesSpecifies the key-value pair of properties each separated by ';'. For example the expected format is 'key1'='value1';'key2'='value2';...
icallbackSpecifies the parent callback.

Implements MyCaffe.trainers.IXMyCaffeCustomTrainer.

Definition at line 488 of file MyCaffeTrainerDual.cs.

◆ OnConvertOutput()

void MyCaffe.trainers.MyCaffeTrainerDual.OnConvertOutput ( ConvertOutputArgs  e)

The OnConvertOutput callback fires from within the Run method and is used to convert the network output into its native format.

Parameters
eSpecifies the event arguments.

Implements MyCaffe.trainers.IxTrainerCallbackRNN.

Definition at line 639 of file MyCaffeTrainerDual.cs.

◆ OnGetData()

void MyCaffe.trainers.MyCaffeTrainerDual.OnGetData ( GetDataArgs  e)

The OnGetData callback fires from within the Train method and is used to get a new observation data.

Implements MyCaffe.trainers.IxTrainerCallback.

Definition at line 630 of file MyCaffeTrainerDual.cs.

◆ OnInitialize()

void MyCaffe.trainers.MyCaffeTrainerDual.OnInitialize ( InitializeArgs  e)

The OnIntialize callback fires when initializing the trainer.

Implements MyCaffe.trainers.IxTrainerCallback.

Definition at line 614 of file MyCaffeTrainerDual.cs.

◆ OnShutdown()

void MyCaffe.trainers.MyCaffeTrainerDual.OnShutdown ( )

The OnShutdown callback fires when shutting down the trainer.

Implements MyCaffe.trainers.IxTrainerCallback.

Definition at line 622 of file MyCaffeTrainerDual.cs.

◆ OnTestAccuracyUpdate()

void MyCaffe.trainers.MyCaffeTrainerDual.OnTestAccuracyUpdate ( TestAccuracyUpdateArgs  e)

The OnTestAccuracyUpdate callback fires from within the Run method and is used to give the recipient the chance to determine whether the label detected is correct or not.

Parameters
eSpecifies the argument sent with the callback.

Implements MyCaffe.trainers.IxTrainerCallbackRNN.

Definition at line 648 of file MyCaffeTrainerDual.cs.

◆ OnUpdateStatus()

void MyCaffe.trainers.MyCaffeTrainerDual.OnUpdateStatus ( GetStatusArgs  e)

The OnGetStatus callback fires on each iteration within the Train method.

Implements MyCaffe.trainers.IxTrainerCallback.

Definition at line 656 of file MyCaffeTrainerDual.cs.

◆ OnWait()

void MyCaffe.trainers.MyCaffeTrainerDual.OnWait ( WaitArgs  e)

The OnWait callback fires when waiting for a shutdown.

Implements MyCaffe.trainers.IxTrainerCallback.

Definition at line 697 of file MyCaffeTrainerDual.cs.

◆ openUi()

virtual void MyCaffe.trainers.MyCaffeTrainerDual.openUi ( )
protectedvirtual

Called by OpenUi, override this when a UI (via WCF) should be displayed.

Definition at line 368 of file MyCaffeTrainerDual.cs.

◆ OpenUi()

void MyCaffe.trainers.MyCaffeTrainerDual.OpenUi ( )

Open the user interface for the trainer, of one exists.

Implements MyCaffe.trainers.IXMyCaffeCustomTrainer.

Definition at line 831 of file MyCaffeTrainerDual.cs.

◆ preloaddata()

virtual BucketCollection MyCaffe.trainers.MyCaffeTrainerDual.preloaddata ( Log  log,
CancelEvent  evtCancel,
int  nProjectID,
PropertySet  propertyOverride = null,
ConnectInfo  ci = null 
)
protectedvirtual

The preloaddata method gives the custom trainer an opportunity to pre-load any data.

Parameters
logSpecifies the output log to use.
evtCancelSpecifies the cancel event.
nProjectIDSpecifies the project ID if any.
propertyOverrideOptionally, specifies the properites to override those already specified during initialization (default = null).
ciOptionally, specifies the database connection information (default = null).
Returns
When data is pre-loaded the discovered vocabulary is returned as a bucket collection.

Definition at line 381 of file MyCaffeTrainerDual.cs.

◆ Run()

byte[] MyCaffe.trainers.MyCaffeTrainerDual.Run ( Component  mycaffe,
int  nN,
out string  type 
)

Run the network using the run technique implemented by this trainer.

Parameters
mycaffeSpecifies an instance to the MyCaffeControl component.
nNSpecifies the number of samples to run.
typeSpecifies the output data type returned as a raw byte stream.
Returns
The run results are returned in the same native type as that of the CustomQuery used.

Implements MyCaffe.trainers.IXMyCaffeCustomTrainerRL.

Definition at line 866 of file MyCaffeTrainerDual.cs.

◆ shutdown()

virtual void MyCaffe.trainers.MyCaffeTrainerDual.shutdown ( )
protectedvirtual

Override called from within the CleanUp method.

Definition at line 314 of file MyCaffeTrainerDual.cs.

◆ Test()

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

Create a new trainer and use it to run a test cycle using the current 'stage' = RNN or RL.

Parameters
mycaffeSpecifies the MyCaffeControl to use.
nIterationOverrideSpecifies the iterations to run if greater than zero.
typeSpecifies the type of iterator to use.

Implements MyCaffe.trainers.IXMyCaffeCustomTrainer.

Definition at line 578 of file MyCaffeTrainerDual.cs.

◆ testAccuracyUpdate()

virtual void MyCaffe.trainers.MyCaffeTrainerDual.testAccuracyUpdate ( TestAccuracyUpdateArgs  e)
protectedvirtual

Override called by the OnTestAccuracyUpdate event fired from within the Run method and is used to give the recipient the chance to determine whether the label detected is correct or not.

Parameters
eSpecifies the argument sent with the callback.

Definition at line 342 of file MyCaffeTrainerDual.cs.

◆ Train()

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

Create a new trainer and use it to run a training cycle using the current 'stage' = RNN or RL.

Parameters
mycaffeSpecifies the MyCaffeControl to use.
nIterationOverrideSpecifies the iterations to run if greater than zero.
typeSpecifies the type of iterator to use.
stepOptionally, specifies whether or not to step the training for debugging (default = NONE).

Implements MyCaffe.trainers.IXMyCaffeCustomTrainer.

Definition at line 597 of file MyCaffeTrainerDual.cs.

Member Data Documentation

◆ m_dsCi

ConnectInfo MyCaffe.trainers.MyCaffeTrainerDual.m_dsCi = null
protected

Optionally, specifies the dataset connection info, or null.

Definition at line 74 of file MyCaffeTrainerDual.cs.

◆ m_nProjectID

int MyCaffe.trainers.MyCaffeTrainerDual.m_nProjectID = 0
protected

Specifies the project ID of the project held by the instance of MyCaffe.

Definition at line 70 of file MyCaffeTrainerDual.cs.

◆ m_properties

PropertySet MyCaffe.trainers.MyCaffeTrainerDual.m_properties = null
protected

Specifies the properties parsed from the key-value pair passed to the Initialize method.

Definition at line 66 of file MyCaffeTrainerDual.cs.

◆ m_random

CryptoRandom MyCaffe.trainers.MyCaffeTrainerDual.m_random = new CryptoRandom()
protected

Random number generator used to get initial actions, etc.

Definition at line 62 of file MyCaffeTrainerDual.cs.

Property Documentation

◆ category

virtual TRAINING_CATEGORY MyCaffe.trainers.MyCaffeTrainerDual.category
getprotected

Override when using a training method other than the REINFORCEMENT method (the default).

Definition at line 150 of file MyCaffeTrainerDual.cs.

◆ ExplorationRate

double MyCaffe.trainers.MyCaffeTrainerDual.ExplorationRate
get

Returns the current exploration rate.

Definition at line 807 of file MyCaffeTrainerDual.cs.

◆ GlobalEpisodeCount

int MyCaffe.trainers.MyCaffeTrainerDual.GlobalEpisodeCount
get

Returns the global episode count.

Definition at line 791 of file MyCaffeTrainerDual.cs.

◆ GlobalEpisodeMax

int MyCaffe.trainers.MyCaffeTrainerDual.GlobalEpisodeMax
get

Returns the maximum global episode count.

Definition at line 799 of file MyCaffeTrainerDual.cs.

◆ GlobalIteration

int MyCaffe.trainers.MyCaffeTrainerDual.GlobalIteration
get

Returns the global iteration.

Definition at line 783 of file MyCaffeTrainerDual.cs.

◆ GlobalLoss

double MyCaffe.trainers.MyCaffeTrainerDual.GlobalLoss
get

Return the global loss.

Definition at line 775 of file MyCaffeTrainerDual.cs.

◆ GlobalRewards

double? MyCaffe.trainers.MyCaffeTrainerDual.GlobalRewards
get

Returns the global rewards based on the reward type specified by the 'RewardType' property.

The reward type can be one of the following: 'VAL' - report the global reward value. 'AVE' - report the global reward averaged over all threads. 'MAX' - report maximum global rewards (default)

Definition at line 746 of file MyCaffeTrainerDual.cs.

◆ ImmediateRewards

double MyCaffe.trainers.MyCaffeTrainerDual.ImmediateRewards
get

Returns the immediate rewards for the current training cycle as opposed to the averaged rewards.

Definition at line 767 of file MyCaffeTrainerDual.cs.

◆ Information

string MyCaffe.trainers.MyCaffeTrainerDual.Information
get

Returns information describing the trainer.

Definition at line 823 of file MyCaffeTrainerDual.cs.

◆ IsRunningSupported

bool MyCaffe.trainers.MyCaffeTrainerDual.IsRunningSupported
get

Returns whether or not Running is supported.

Definition at line 454 of file MyCaffeTrainerDual.cs.

◆ IsTestingSupported

bool MyCaffe.trainers.MyCaffeTrainerDual.IsTestingSupported
get

Returns whether or not Testing is supported.

Definition at line 446 of file MyCaffeTrainerDual.cs.

◆ IsTrainingSupported

bool MyCaffe.trainers.MyCaffeTrainerDual.IsTrainingSupported
get

Returns whether or not Training is supported.

Definition at line 438 of file MyCaffeTrainerDual.cs.

◆ name

virtual string MyCaffe.trainers.MyCaffeTrainerDual.name
getprotected

Overriden to give the actual name of the custom trainer.

Definition at line 142 of file MyCaffeTrainerDual.cs.

◆ Name

string MyCaffe.trainers.MyCaffeTrainerDual.Name
get

Returns the name of the custom trainer. This method calls the 'name' override.

Definition at line 401 of file MyCaffeTrainerDual.cs.

◆ OptimalSelectionRate

double MyCaffe.trainers.MyCaffeTrainerDual.OptimalSelectionRate
get

Returns the rate of selection from the optimal set with the highest reward (this setting is optional, default = 0).

Definition at line 815 of file MyCaffeTrainerDual.cs.

◆ Stage

Stage MyCaffe.trainers.MyCaffeTrainerDual.Stage
get

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

Definition at line 393 of file MyCaffeTrainerDual.cs.

◆ TrainingCategory

TRAINING_CATEGORY MyCaffe.trainers.MyCaffeTrainerDual.TrainingCategory
get

Returns the training category of the custom trainer (default = REINFORCEMENT).

Definition at line 409 of file MyCaffeTrainerDual.cs.


The documentation for this class was generated from the following files: