27 #ifndef LBANN_CALLBACKS_CALLBACK_LTFB_HPP_INCLUDED 28 #define LBANN_CALLBACKS_CALLBACK_LTFB_HPP_INCLUDED 39 class LTFBCommunicationAlgorithm;
73 ltfb(El::Int batch_interval,
74 std::string metric_name,
75 std::unique_ptr<LTFBCommunicationAlgorithm> comm_algo,
76 bool exchange_hyperparameters =
false);
80 std::string
name()
const override {
return "LTFB"; }
101 std::unique_ptr<callback_base>
103 std::shared_ptr<lbann_summary>
const&);
108 #endif // LBANN_CALLBACKS_CALLBACK_LTFB_HPP_INCLUDED
void on_batch_begin(model *m) override
Called at the beginning of a (mini-)batch.
void on_train_begin(model *m) override
Called at the beginning of training.
ltfb * copy() const override
bool m_low_score_wins
Whether low-scoring or high-scoring models survive a tournament.
void write_specific_proto(lbann_data::Callback &proto) const final
std::unique_ptr< LTFBCommunicationAlgorithm > comm_algo_
Communication algorithm for exchanging models.
std::string name() const override
Return this callback's name.
Base class for callbacks during training/testing.
std::string m_metric_name
Metric for tournament evaluation.
Abstract base class for neural network models.
ltfb(El::Int batch_interval, std::string metric_name, std::unique_ptr< LTFBCommunicationAlgorithm > comm_algo, bool exchange_hyperparameters=false)
Construct the LTFB callback.
std::unique_ptr< callback_base > build_ltfb_callback_from_pbuf(const google::protobuf::Message &, std::shared_ptr< lbann_summary > const &)
ltfb & operator=(const ltfb &other)