MCPcopy Create free account
hub / github.com/antmachineintelligence/mtgbmcode / CheckDataset

Method CheckDataset

src/io/dataset_loader.cpp:728–757  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

726// ---- private functions ----
727
728void DatasetLoader::CheckDataset(const Dataset* dataset) {
729 if (dataset->num_data_ <= 0) {
730 Log::Fatal("Data file %s is empty", dataset->data_filename_.c_str());
731 }
732 if (dataset->feature_names_.size() != static_cast<size_t>(dataset->num_total_features_)) {
733 Log::Fatal("Size of feature name error, should be %d, got %d", dataset->num_total_features_,
734 static_cast<int>(dataset->feature_names_.size()));
735 }
736 bool is_feature_order_by_group = true;
737 int last_group = -1;
738 int last_sub_feature = -1;
739 // if features are ordered, not need to use hist_buf
740 for (int i = 0; i < dataset->num_features_; ++i) {
741 int group = dataset->feature2group_[i];
742 int sub_feature = dataset->feature2subfeature_[i];
743 if (group < last_group) {
744 is_feature_order_by_group = false;
745 } else if (group == last_group) {
746 if (sub_feature <= last_sub_feature) {
747 is_feature_order_by_group = false;
748 break;
749 }
750 }
751 last_group = group;
752 last_sub_feature = sub_feature;
753 }
754 if (!is_feature_order_by_group) {
755 Log::Fatal("Features in dataset should be ordered by group");
756 }
757}
758
759std::vector<std::string> DatasetLoader::LoadTextDataToMemory(const char* filename, const Metadata& metadata,
760 int rank, int num_machines, int* num_global_data,

Callers

nothing calls this directly

Calls 1

sizeMethod · 0.45

Tested by

no test coverage detected