Unverified Commit 1e2013a3 authored by Belinda Trotta's avatar Belinda Trotta Committed by GitHub
Browse files

Fix integer overflow in auc_mu. (#3209)

parent d8bc0fc7
...@@ -286,10 +286,10 @@ class AucMuMetric : public Metric { ...@@ -286,10 +286,10 @@ class AucMuMetric : public Metric {
double ans = 0; double ans = 0;
for (int i = 0; i < num_class_; ++i) { for (int i = 0; i < num_class_; ++i) {
for (int j = i + 1; j < num_class_; ++j) { for (int j = i + 1; j < num_class_; ++j) {
ans += S[i][j] / (class_sizes[i] * class_sizes[j]); ans += (S[i][j] / class_sizes[i]) / class_sizes[j];
} }
} }
ans = 2 * ans / (num_class_ * (num_class_ - 1)); ans = (2 * ans / num_class_) / (num_class_ - 1);
return std::vector<double>(1, ans); return std::vector<double>(1, ans);
} }
......
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