Skip to content

Commit

Permalink
fix #818
Browse files Browse the repository at this point in the history
  • Loading branch information
guolinke committed Aug 18, 2017
1 parent 486f5db commit c3c1708
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 2 deletions.
3 changes: 2 additions & 1 deletion src/boosting/gbdt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ GBDT::~GBDT() {

void GBDT::Init(const BoostingConfig* config, const Dataset* train_data, const ObjectiveFunction* objective_function,
const std::vector<const Metric*>& training_metrics) {
CHECK(train_data->num_features() > 0);
train_data_ = train_data;
iter_ = 0;
num_iteration_for_pred_ = 0;
Expand Down Expand Up @@ -164,7 +165,7 @@ void GBDT::ResetTrainingData(const Dataset* train_data, const ObjectiveFunction*
if (train_data != train_data_ && !train_data_->CheckAlign(*train_data)) {
Log::Fatal("cannot reset training data, since new training data has different bin mappers");
}

CHECK(train_data->num_features() > 0);
objective_function_ = objective_function;
if (objective_function_ != nullptr) {
is_constant_hessian_ = objective_function_->IsConstantHessian();
Expand Down
2 changes: 2 additions & 0 deletions src/c_api.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ class Booster {

Booster(const Dataset* train_data,
const char* parameters) {
CHECK(train_data->num_features() > 0);
auto param = ConfigBase::Str2Map(parameters);
config_.Set(param);
if (config_.num_threads > 0) {
Expand Down Expand Up @@ -94,6 +95,7 @@ class Booster {

void ResetTrainingData(const Dataset* train_data) {
if (train_data != train_data_) {
CHECK(train_data->num_features() > 0);
std::lock_guard<std::mutex> lock(mutex_);
train_data_ = train_data;
CreateObjectiveAndMetrics();
Expand Down
6 changes: 5 additions & 1 deletion src/io/dataset.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,12 @@ Dataset::Dataset() {
}

Dataset::Dataset(data_size_t num_data) {
CHECK(num_data > 0);
data_filename_ = "noname";
num_data_ = num_data;
metadata_.Init(num_data_, NO_SPECIFIC, NO_SPECIFIC);
is_finish_load_ = false;
group_bin_boundaries_.push_back(0);
}

Dataset::~Dataset() {
Expand Down Expand Up @@ -223,7 +225,9 @@ void Dataset::Construct(
used_features.emplace_back(i);
}
}

if (used_features.empty()) {
Log::Fatal("Cannot construct Dataset since there are not useful features.");
}
auto features_in_group = NoGroup(used_features);

if (io_config.enable_bundle) {
Expand Down

0 comments on commit c3c1708

Please sign in to comment.