MCPcopy Create free account
hub / github.com/dmlc/xgboost / SaveConfig

Method SaveConfig

src/learner.cc:624–650  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

622 }
623
624 void SaveConfig(Json* p_out) const override {
625 CHECK(!this->need_configuration_) << "Call Configure before saving model.";
626 Version::Save(p_out);
627 Json& out{*p_out};
628 // parameters
629 out["learner"] = Object();
630 auto& learner_parameters = out["learner"];
631
632 learner_parameters["learner_train_param"] = ToJson(tparam_);
633 learner_parameters["learner_model_param"] = mparam_.ToJson();
634 learner_parameters["gradient_booster"] = Object();
635 auto& gradient_booster = learner_parameters["gradient_booster"];
636 gbm_->SaveConfig(&gradient_booster);
637
638 learner_parameters["objective"] = Object();
639 auto& objective_fn = learner_parameters["objective"];
640 obj_->SaveConfig(&objective_fn);
641
642 std::vector<Json> metrics(metrics_.size());
643 for (size_t i = 0; i < metrics_.size(); ++i) {
644 metrics[i] = Object{};
645 metrics_[i]->SaveConfig(&metrics[i]);
646 }
647 learner_parameters["metrics"] = Array(std::move(metrics));
648
649 learner_parameters["generic_param"] = ctx_.ToJson();
650 }
651
652 void SetParam(const std::string& key, const std::string& value) override {
653 this->need_configuration_ = true;

Callers 4

ValidateParametersMethod · 0.95
SaveModelMethod · 0.45
SaveMethod · 0.45
SliceMethod · 0.45

Calls 4

ToJsonFunction · 0.85
ArrayClass · 0.85
ToJsonMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected