Skip to content

Latest commit

 

History

History
415 lines (356 loc) · 19.9 KB

File metadata and controls

415 lines (356 loc) · 19.9 KB

Full Feature Set (SHAP Analysis)

SHAP Explanation for true_positive

Prediction Summary

  • Baseline value: -0.0096
  • Sum of SHAP values: 1.0267
  • Final model output: 1.0171
  • Output unit: model output

The final model output equals the baseline value plus the sum of all SHAP feature contributions.

Top Feature Drivers

Rank Feature Value SHAP value Direction Impact share Impact level
1 live_bets_count_log1p 3.1781 1.0110 increased the prediction 25.8% medium
2 total_turnover 190.9000 -0.2828 decreased the prediction 7.2% low
3 avg_deposit_amount_log1p 5.4650 0.2496 increased the prediction 6.4% low
4 net_loss_rate 0.0715 -0.1843 decreased the prediction 4.7% low
5 turnover_per_deposit 0.8114 0.1784 increased the prediction 4.5% low
6 ggr_per_active_day -3.0611 0.1707 increased the prediction 4.4% low
7 avg_bet_amount 8.3000 -0.1529 decreased the prediction 3.9% low
8 bet_day_rate 0.1000 -0.1304 decreased the prediction 3.3% low
9 total_deposit_amount 235.2800 0.1280 increased the prediction 3.3% low
10 avg_days_between_bets 3.3043 0.1250 increased the prediction 3.2% low
11 ggr_margin_x_bet_day_rate -0.0144 -0.1182 decreased the prediction 3.0% low
12 registration_day_of_week 4.0000 -0.1083 decreased the prediction 2.8% negligible
13 ggr_per_bet -1.1978 -0.1021 decreased the prediction 2.6% negligible
14 days_since_last_bet_x_bet_day_rate 0.8000 0.0962 increased the prediction 2.5% negligible
15 active_to_tenure_ratio 0.0159 0.0829 increased the prediction 2.1% negligible
16 payout_per_bet 9.4978 0.0595 increased the prediction 1.5% negligible
17 ggr_positive 0.0000 0.0549 increased the prediction 1.4% negligible
18 deposit_to_turnover_ratio 1.2325 0.0547 increased the prediction 1.4% negligible
19 avg_bet_amount_x_bet_day_rate 0.8300 -0.0545 decreased the prediction 1.4% negligible
20 first_bet_day_of_week 2.0000 0.0508 increased the prediction 1.3% negligible
21 deposit_coverage_rate 0.9285 -0.0491 decreased the prediction 1.3% negligible
22 activity_span_days 76.0000 -0.0485 decreased the prediction 1.2% negligible
23 ggr_abs_log1p 3.3517 0.0442 increased the prediction 1.1% negligible
24 ggr_margin -0.1443 -0.0440 decreased the prediction 1.1% negligible
25 bet_consistency_rate 0.1169 0.0431 increased the prediction 1.1% negligible
26 avg_deposit_amount 235.2800 -0.0368 decreased the prediction 0.9% negligible
27 turnover_per_active_day 21.2111 -0.0292 decreased the prediction 0.7% negligible
28 net_loss 16.8300 -0.0243 decreased the prediction 0.6% negligible
29 ggr_to_deposit_ratio -0.1171 0.0241 increased the prediction 0.6% negligible
30 last_bet_day_of_week 1.0000 0.0223 increased the prediction 0.6% negligible

Plain-Language Summary

The strongest features pushing the prediction upward were: live_bets_count_log1p, avg_deposit_amount_log1p, turnover_per_deposit. The strongest features pushing the prediction downward were: total_turnover, net_loss_rate, avg_bet_amount.

Caveats

  • SHAP values explain model behavior, not real-world causality.
  • Correlated features can share or shift attribution.
  • The meaning of a positive or negative SHAP value depends on the model target.
  • These SHAP values are expressed in: model output.

SHAP Explanation for true_negative

Prediction Summary

  • Baseline value: -0.0096
  • Sum of SHAP values: -9.0680
  • Final model output: -9.0776
  • Output unit: model output

The final model output equals the baseline value plus the sum of all SHAP feature contributions.

Top Feature Drivers

Rank Feature Value SHAP value Direction Impact share Impact level
1 live_bets_count_log1p 4.9628 -3.9613 decreased the prediction 37.8% high
2 avg_bet_amount_x_bet_day_rate 2.9377 -0.8320 decreased the prediction 7.9% low
3 bets_per_active_day 4.5806 -0.6313 decreased the prediction 6.0% low
4 tenure_x_bet_day_rate 161.1792 -0.4727 decreased the prediction 4.5% low
5 ggr_margin_x_bet_day_rate 0.1489 -0.4388 decreased the prediction 4.2% low
6 bets_per_tenure_day 0.3034 -0.3333 decreased the prediction 3.2% low
7 ggr_per_active_day 16.8929 -0.3231 decreased the prediction 3.1% low
8 ggr_per_bet 3.6879 -0.2571 decreased the prediction 2.5% negligible
9 total_payout 687.5800 -0.2559 decreased the prediction 2.4% negligible
10 avg_bet_amount 8.5300 -0.1921 decreased the prediction 1.8% negligible
11 ggr_abs_log1p 6.2628 0.1903 increased the prediction 1.8% negligible
12 payout_per_bet 4.8421 -0.1861 decreased the prediction 1.8% negligible
13 last_bet_day_of_week 4.0000 -0.1802 decreased the prediction 1.7% negligible
14 first_bet_day_of_week 5.0000 -0.1603 decreased the prediction 1.5% negligible
15 deposit_to_turnover_ratio 0.6910 -0.1307 decreased the prediction 1.2% negligible
16 turnover_per_deposit 1.4472 -0.1256 decreased the prediction 1.2% negligible
17 days_since_last_bet 5.0000 -0.1201 decreased the prediction 1.1% negligible
18 total_turnover 1211.2600 -0.1133 decreased the prediction 1.1% negligible
19 days_since_last_bet_x_bet_day_rate 1.7220 0.1021 increased the prediction 1.0% negligible
20 active_to_tenure_ratio 0.0662 -0.0979 decreased the prediction 0.9% negligible
21 days_to_first_bet_in_obs 1.0000 -0.0965 decreased the prediction 0.9% negligible
22 ggr_margin 0.4323 -0.0941 decreased the prediction 0.9% negligible
23 ggr_positive 523.6800 -0.0935 decreased the prediction 0.9% negligible
24 avg_days_between_bets 0.5845 -0.0885 decreased the prediction 0.8% negligible
25 bet_consistency_rate 0.3690 -0.0798 decreased the prediction 0.8% negligible
26 bet_day_rate 0.3444 0.0794 increased the prediction 0.8% negligible
27 days_to_first_bet 380.0000 -0.0791 decreased the prediction 0.8% negligible
28 total_deposit_amount 836.9500 0.0780 increased the prediction 0.7% negligible
29 registration_month 9.0000 -0.0713 decreased the prediction 0.7% negligible
30 ggr_to_deposit_ratio 0.6257 -0.0679 decreased the prediction 0.6% negligible

Plain-Language Summary

The strongest features pushing the prediction upward were: ggr_abs_log1p, days_since_last_bet_x_bet_day_rate, bet_day_rate. The strongest features pushing the prediction downward were: live_bets_count_log1p, avg_bet_amount_x_bet_day_rate, bets_per_active_day.

Caveats

  • SHAP values explain model behavior, not real-world causality.
  • Correlated features can share or shift attribution.
  • The meaning of a positive or negative SHAP value depends on the model target.
  • These SHAP values are expressed in: model output.

SHAP Explanation for false_negative

Prediction Summary

  • Baseline value: -0.0096
  • Sum of SHAP values: -2.8281
  • Final model output: -2.8377
  • Output unit: model output

The final model output equals the baseline value plus the sum of all SHAP feature contributions.

Top Feature Drivers

Rank Feature Value SHAP value Direction Impact share Impact level
1 turnover_per_deposit 0.7888 -0.4970 decreased the prediction 12.7% medium
2 total_deposit_amount 284.5600 -0.3627 decreased the prediction 9.3% low
3 last_bet_day_of_week 6.0000 -0.2586 decreased the prediction 6.6% low
4 days_since_last_bet_x_bet_day_rate 1.5560 -0.2439 decreased the prediction 6.2% low
5 avg_deposit_to_avg_bet_ratio 27.2567 -0.2246 decreased the prediction 5.8% low
6 ggr_margin_x_bet_day_rate -0.0193 -0.2042 decreased the prediction 5.2% low
7 ggr_per_active_day -1.9929 0.1915 increased the prediction 4.9% low
8 payout_per_bet 5.8688 -0.1578 decreased the prediction 4.0% low
9 bet_consistency_rate 0.2059 -0.1436 decreased the prediction 3.7% low
10 ggr -27.9000 -0.1367 decreased the prediction 3.5% low
11 deposit_per_bet 0.0465 -0.1227 decreased the prediction 3.1% low
12 ggr_per_bet -0.6488 -0.1215 decreased the prediction 3.1% low
13 turnover_per_active_day 16.0329 -0.0988 decreased the prediction 2.5% negligible
14 turnover_x_bet_day_rate 34.9260 -0.0976 decreased the prediction 2.5% negligible
15 deposit_to_turnover_ratio 1.2678 -0.0863 decreased the prediction 2.2% negligible
16 bets_per_active_day 3.0714 -0.0860 decreased the prediction 2.2% negligible
17 avg_deposit_amount 142.2800 -0.0710 decreased the prediction 1.8% negligible
18 total_payout 252.3600 0.0674 increased the prediction 1.7% negligible
19 first_bet_day_of_week 2.0000 0.0634 increased the prediction 1.6% negligible
20 days_to_first_bet 413.0000 -0.0594 decreased the prediction 1.5% negligible
21 tenure_x_bet_day_rate 76.2440 -0.0594 decreased the prediction 1.5% negligible
22 registration_day_of_week 2.0000 0.0565 increased the prediction 1.4% negligible
23 net_loss_rate 0.1132 -0.0548 decreased the prediction 1.4% negligible
24 days_to_first_bet_in_obs 12.0000 0.0547 increased the prediction 1.4% negligible
25 registration_month 8.0000 -0.0453 decreased the prediction 1.2% negligible
26 bets_per_tenure_day 0.0878 -0.0413 decreased the prediction 1.1% negligible
27 ggr_to_deposit_ratio -0.0980 0.0409 increased the prediction 1.0% negligible
28 ggr_positive 0.0000 0.0406 increased the prediction 1.0% negligible
29 avg_deposit_amount_log1p 4.9648 -0.0285 decreased the prediction 0.7% negligible
30 total_turnover 224.4600 -0.0275 decreased the prediction 0.7% negligible

Plain-Language Summary

The strongest features pushing the prediction upward were: ggr_per_active_day, total_payout, first_bet_day_of_week. The strongest features pushing the prediction downward were: turnover_per_deposit, total_deposit_amount, last_bet_day_of_week.

Caveats

  • SHAP values explain model behavior, not real-world causality.
  • Correlated features can share or shift attribution.
  • The meaning of a positive or negative SHAP value depends on the model target.
  • These SHAP values are expressed in: model output.

SHAP Explanation for false_positive

Prediction Summary

  • Baseline value: -0.0096
  • Sum of SHAP values: 0.6068
  • Final model output: 0.5972
  • Output unit: model output

The final model output equals the baseline value plus the sum of all SHAP feature contributions.

Top Feature Drivers

Rank Feature Value SHAP value Direction Impact share Impact level
1 live_bets_count_log1p 3.0910 1.1910 increased the prediction 22.0% medium
2 turnover_x_bet_day_rate 9.5772 0.4695 increased the prediction 8.7% low
3 first_bet_day_of_week 5.0000 -0.2362 decreased the prediction 4.4% low
4 ggr_margin_x_bet_day_rate 0.0203 0.2257 increased the prediction 4.2% low
5 activity_span_days 87.0000 -0.2228 decreased the prediction 4.1% low
6 payout_per_bet 3.9600 -0.2132 decreased the prediction 3.9% low
7 ggr_to_deposit_ratio 0.1313 -0.2049 decreased the prediction 3.8% low
8 total_turnover 107.7300 -0.2041 decreased the prediction 3.8% low
9 avg_days_between_bets 4.1429 0.1625 increased the prediction 3.0% low
10 registration_day_of_week 4.0000 -0.1367 decreased the prediction 2.5% negligible
11 total_payout 83.1600 -0.1269 decreased the prediction 2.3% negligible
12 ggr_per_active_day 3.0713 0.1260 increased the prediction 2.3% negligible
13 deposit_per_bet 0.0952 -0.1175 decreased the prediction 2.2% negligible
14 ggr_margin 0.2281 -0.1136 decreased the prediction 2.1% negligible
15 deposit_coverage_rate 0.4444 -0.1136 decreased the prediction 2.1% negligible
16 avg_deposit_to_avg_bet_ratio 18.2398 0.1048 increased the prediction 1.9% negligible
17 avg_bet_amount 5.1300 -0.1012 decreased the prediction 1.9% negligible
18 bet_day_rate 0.0889 -0.0967 decreased the prediction 1.8% negligible
19 bets_per_active_day 2.6250 -0.0944 decreased the prediction 1.7% negligible
20 active_to_tenure_ratio 0.0235 -0.0941 decreased the prediction 1.7% negligible
21 ggr_per_bet 1.1700 0.0937 increased the prediction 1.7% negligible
22 tenure_x_bet_day_rate 30.3149 0.0850 increased the prediction 1.6% negligible
23 avg_deposit_amount 93.5700 0.0796 increased the prediction 1.5% negligible
24 net_loss 103.9800 -0.0775 decreased the prediction 1.4% negligible
25 avg_bet_amount_x_bet_day_rate 0.4561 0.0712 increased the prediction 1.3% negligible
26 bets_per_tenure_day 0.0616 0.0589 increased the prediction 1.1% negligible
27 deposit_to_turnover_ratio 1.7371 0.0556 increased the prediction 1.0% negligible
28 days_since_last_bet_x_bet_day_rate 0.0889 0.0494 increased the prediction 0.9% negligible
29 ggr_positive 24.5700 0.0491 increased the prediction 0.9% negligible
30 days_to_first_bet_in_obs 1.0000 -0.0455 decreased the prediction 0.8% negligible

Plain-Language Summary

The strongest features pushing the prediction upward were: live_bets_count_log1p, turnover_x_bet_day_rate, ggr_margin_x_bet_day_rate. The strongest features pushing the prediction downward were: first_bet_day_of_week, activity_span_days, payout_per_bet.

Caveats

  • SHAP values explain model behavior, not real-world causality.
  • Correlated features can share or shift attribution.
  • The meaning of a positive or negative SHAP value depends on the model target.
  • These SHAP values are expressed in: model output.

Feature Selection Summary for Customer Churn Model

Assumption

This summary assumes the model’s positive class represents customer churn.

The SHAP analysis was reviewed across:

  • True positives
  • True negatives
  • False positives
  • False negatives

The goal is to identify which features should be kept, removed, or reviewed because they may be causing incorrect churn predictions.


Key Findings

The model relies mainly on:

  • Betting activity
  • Turnover
  • Activity frequency
  • Recency of betting behavior
  • Deposit behavior
  • GGR / profitability metrics

The strongest useful signals come from customer activity and engagement. However, several engineered ratio, interaction, and calendar-based features appear unstable and may be contributing to wrong predictions.


Features Recommended to Keep

These features appear to provide meaningful churn signal and should be kept for the next model iteration.

live_bets_count_log1p
total_turnover
turnover_per_active_day
avg_bet_amount
bet_day_rate
bets_per_active_day
bets_per_tenure_day
active_to_tenure_ratio
activity_span_days
avg_days_between_bets
days_since_last_bet
days_to_first_bet_in_obs
ggr_per_active_day
ggr_margin
ggr_abs_log1p
payout_per_bet
deposit_coverage_rate

Notes

  • live_bets_count_log1p is the strongest feature overall, but it should be audited because it also contributes to false positives.
  • Activity-based features such as bet_day_rate, bets_per_active_day, and active_to_tenure_ratio are useful because they capture customer engagement.
  • Turnover and recency features are generally interpretable and should remain in the model.
  • Only a small number of GGR features should be kept to avoid redundancy.

Features Likely Causing Wrong Predictions

These features appear to push the model in the wrong direction in false-positive or false-negative cases.

registration_day_of_week
first_bet_day_of_week
last_bet_day_of_week
registration_month
turnover_x_bet_day_rate
ggr_margin_x_bet_day_rate
avg_bet_amount_x_bet_day_rate
days_since_last_bet_x_bet_day_rate
tenure_x_bet_day_rate
turnover_per_deposit
avg_deposit_to_avg_bet_ratio
deposit_per_bet
deposit_to_turnover_ratio
ggr_to_deposit_ratio
ggr
ggr_per_bet
ggr_positive

Why These Features Are Risky

Calendar Features

registration_day_of_week
first_bet_day_of_week
last_bet_day_of_week
registration_month

These are likely weak or artificial signals. Raw weekday and month values can create misleading patterns because the model may treat them as ordered numbers.

Recommendation: remove them, or replace them with cyclical encodings only if there is a strong business reason.


Interaction Features

turnover_x_bet_day_rate
ggr_margin_x_bet_day_rate
avg_bet_amount_x_bet_day_rate
days_since_last_bet_x_bet_day_rate
tenure_x_bet_day_rate

These features appear unstable and contribute to incorrect predictions. They may be amplifying signals that are already captured by simpler base features. Recommendation: remove them and keep the cleaner base features instead.


Deposit Ratio Features

turnover_per_deposit
avg_deposit_to_avg_bet_ratio
deposit_per_bet
deposit_to_turnover_ratio
ggr_to_deposit_ratio

These features may cause the model to over-trust customers who deposited money, even when they later churned. This can increase false negatives. Recommendation: remove or reduce these features, especially if churn recall is important.


Redundant GGR Features

The model uses several overlapping GGR-related features. This can make the model harder to interpret and may split feature importance across similar variables. Recommended GGR features to keep:

ggr_per_active_day
ggr_margin
ggr_abs_log1p

GGR features to remove or validate carefully:

ggr
ggr_per_bet
ggr_positive
ggr_to_deposit_ratio
ggr_margin_x_bet_day_rate

Main Error Drivers

False Positives

False positives are customers predicted as churners even though they did not churn. Main risky drivers:

live_bets_count_log1p
turnover_x_bet_day_rate
ggr_margin_x_bet_day_rate
avg_days_between_bets
ggr_per_active_day
avg_deposit_to_avg_bet_ratio

The model may be overreacting to moderate activity gaps, certain live betting patterns, or engineered interaction features.


False Negatives

False negatives are customers who actually churned but were predicted as non-churners. Main risky drivers:

turnover_per_deposit
total_deposit_amount
last_bet_day_of_week
days_since_last_bet_x_bet_day_rate
avg_deposit_to_avg_bet_ratio
ggr_margin_x_bet_day_rate
payout_per_bet
deposit_per_bet
ggr_per_bet

The model may be treating deposit-heavy or previously active customers as safe, causing it to miss churn risk.


Recommended Next Model Experiment

Train the next model with a simpler feature set focused on:

  • Activity frequency
  • Turnover
  • Recency
  • Engagement over tenure
  • A limited number of clean GGR features

Remove:

  • Raw calendar features
  • Handcrafted interaction features
  • Deposit-heavy ratio features
  • Redundant GGR features

This should make the model more stable, easier to explain, and less likely to produce wrong churn predictions caused by noisy engineered features.