|
LBANN
0.103.0
LivermoreBigArtificialNeuralNetworkToolkit
|
Base class describing a family of meta-learning methods. More...
#include <meta_learning_strategy.hpp>
Public Member Functions | |
| virtual | ~MetaLearningStrategy () noexcept=default |
| virtual void | select_next (model &m, ltfb::LTFBExecutionContext &ctxt, data_coordinator &dc) const =0 |
| Pick the next model according to this metaheuristic. More... | |
Public Member Functions inherited from lbann::Cloneable< HasAbstractFunction< MetaLearningStrategy > > | |
| std::unique_ptr< HasAbstractFunction< MetaLearningStrategy > > | clone () const |
| Return an exception-safe, memory-safe copy of this object. More... | |
Base class describing a family of meta-learning methods.
The current use-case for this is the LTFB family of algorithms, in which this strategy is used in tandem with a "trainer-local" training algorithm. Specifically, in the case of LTFB, the meta-learning strategy is applied after the local training algorithm to combine and postprocess the output of multiple trainers.
Definition at line 54 of file meta_learning_strategy.hpp.
|
virtualdefaultnoexcept |
|
pure virtual |
Pick the next model according to this metaheuristic.
The fundamental assumption here is that each trainer contributes one model to the metaheuristic evaluation – this model might be meaningful in some way, or the concrete implementation can choose to ignore it completely. It is further assumed that this model's lbann_comm object describes the entire multi-trainer ecosystem in which this algorithm is participating (which is why there's not a distinct lbann_comm argument).
| [in,out] | m | On input, this trainer's candidate model. On output, the updated model, either to e returned from the training algorithm or to seed the next outer loop. |
| [in,out] | ctxt | The execution context for the outer LTFB algorithm. |
| [in,out] | dc | The data coordinator for this trainer. |