26 #ifndef LBANN_EXECUTION_ALGORITHMS_LTFB_TRUNCATION_SELECTION_EXCHANGE_HPP_INCLUDED 27 #define LBANN_EXECUTION_ALGORITHMS_LTFB_TRUNCATION_SELECTION_EXCHANGE_HPP_INCLUDED 31 #include <google/protobuf/message.h> 36 #include <unordered_map> 51 :
public Cloneable<TruncationSelectionExchange, MetaLearningStrategy>
84 std::unordered_map<std::string, metric_strategy>
metrics,
118 std::unordered_map<std::string, metric_strategy>
m_metrics;
133 std::unique_ptr<ltfb::TruncationSelectionExchange>
134 make(google::protobuf::Message
const&);
139 #endif // LBANN_EXECUTION_ALGORITHMS_LTFB_TRUNCATION_SELECTION_EXCHANGE_HPP_INCLUDED
Inject polymorphic clone functions into hierarchies.
std::unordered_map< std::string, metric_strategy > m_metrics
The list of metric/strategy pairs.
TruncationSelectionExchange(std::string metric_name, metric_strategy winner_strategy, int truncation_k)
Constructor.
EvalType evaluate_model(model &m, LTFBExecutionContext &ctxt, data_coordinator &dc) const
Get the value of the given metric from the model.
Abstract base class for neural network models.
std::unique_ptr< ltfb::RandomPairwiseExchange > make(google::protobuf::Message const &)
Concrete builder for RandomPairwiseExchange.
void select_next(model &m, ltfb::LTFBExecutionContext &ctxt, data_coordinator &dc) const final
Engage in a ranked tournament with a population of trainers.
~TruncationSelectionExchange()=default