Commit 76990797 authored by Guolin Ke's avatar Guolin Ke
Browse files

fix the average label for binary classification.

parent 7b4ead1e
...@@ -301,10 +301,14 @@ bool GBDT::TrainOneIter(const score_t* gradient, const score_t* hessian, bool is ...@@ -301,10 +301,14 @@ bool GBDT::TrainOneIter(const score_t* gradient, const score_t* hessian, bool is
for (data_size_t i = 0; i < num_data_; ++i) { for (data_size_t i = 0; i < num_data_; ++i) {
sum_per_class[static_cast<int>(label[i])] += 1.0f; sum_per_class[static_cast<int>(label[i])] += 1.0f;
} }
} else { } else if(sigmoid_ < 0.0f){
for (data_size_t i = 0; i < num_data_; ++i) { for (data_size_t i = 0; i < num_data_; ++i) {
sum_per_class[0] += label[i]; sum_per_class[0] += label[i];
} }
} else {
for (data_size_t i = 0; i < num_data_; ++i) {
sum_per_class[0] += label[i] > 0;
}
} }
std::vector<double > init_scores(num_class_); std::vector<double > init_scores(num_class_);
for (int i = 0; i < num_class_; ++i) { for (int i = 0; i < num_class_; ++i) {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment