Primary competition visual

DigiCow Farmer Training Adoption Challenge

Helping Kenya
€8 250 EUR
Under code review
Data analysis
Classification
895 joined
388 active
Starti
Jan 28, 26
Closei
Mar 01, 26
Reveali
Mar 02, 26
User avatar
AJoel
Zindi
Multi-Metric Weighting
17 Feb 2026, 08:57 · 4

Hi all,

I’d like to clarify the score weighting, as this has come up in several chats.

The evaluation metric is a weighted multi-metric composed of Log Loss (75%) and AUC (25%). However, this 75%/25% split is not distributed evenly across the three prediction targets.

From a practical perspective, the 7-day target is more operationally useful than the 90- or 120-day targets. As a result, the 7-day target carries a higher weight in the overall score.

Happy coding!

Discussion 4 answers
User avatar
BoEddie

Thanks for sharing this, noticed this too.

17 Feb 2026, 10:22
Upvotes 0
User avatar
Koleshjr
Multimedia university of kenya

could you share the function then so that we can evaluate our models locally with that?

17 Feb 2026, 13:37
Upvotes 4
User avatar
J0NNY
{
"Target_90_LogLoss": 0.05,
"Target_07_AUC": 0.15,
"Target_120_AUC": 0.05,
"Target_07_LogLoss": 0.65,
"Target_90_AUC": 0.05,
"Target_120_LogLoss": 0.05
}

Apparently, these are the weights that are being used :(

User avatar
J0NNY
Here is a function to calculate the LB score:
def calculate_weighted_score(
    target_07_auc,
    target_07_logloss,
    target_90_auc,
    target_90_logloss,
    target_120_auc,
    target_120_logloss
    ):
    SCALING = 0.56926
    target_07_logloss_norm = 1 - (target_07_logloss / SCALING)
    target_90_logloss_norm = 1 - (target_90_logloss / SCALING)
    target_120_logloss_norm = 1 - (target_120_logloss / SCALING)
    
    weighted_score = (
        target_07_auc * 0.15 +
        target_07_logloss_norm * 0.65 +
        target_90_auc * 0.05 +
        target_90_logloss_norm * 0.05 +
        target_120_auc * 0.05 +
        target_120_logloss_norm * 0.05
    )
    
    return weighted_score