A feature-importance chart goes into a leadership review — say days_since_app_open
on top at 0.32 — and drives a decision or a budget ask. Weeks later someone reruns
the analysis, or measures importance a different way, and the top features flip.
Two charts from the same team now contradict each other, leadership asks which one
lied, and every future chart from that team gets the sceptical squint.
A random forest or boosted model on tabular business data — churn, credit risk,
collections. The chart came straight from feature_importances_ (impurity
importance), pasted into a deck without checks. The table holds correlated
near-twins: two recency columns, an EMI column and an EMI-ratio column, a declared
and a verified income. Nobody looked at the correlation matrix before presenting.
Linked modules: 1.4 (where the trap is first staged) and 1.11 (the audit).
Impurity importance is measured on the training side and shares credit between
correlated features: two twins carrying one signal each show roughly half the
signal's true weight, and which twin edges ahead depends on seed, tree count and
sampling noise. Many-valued columns also get inflated credit from sheer cut-point
supply. So the ranking's top spots are unstable exactly where the table has
correlation — and business tables almost always do. Confirm in minutes: print the
correlation matrix of the top features; run permutation_importance on held-out
rows and compare rankings; rerun with two or three fresh seeds. If twins share
credit, or the top spot moves across seeds, the chart was noise dressed as insight.
In the 1.11 demo, twins split 0.55 of credit into 0.32 + 0.32, and one twin's
single-column permutation score even went negative.
Rebuild the story before rebuilding trust. Run permutation_importance on the
test set (n_repeats=20), print it beside the impurity ranking, and check the
correlation matrix of the leading features. Shuffle correlated groups together —
one joint shuffle for the twins — because single-column shuffles let a twin cover
for its partner; report the group's combined weight as one line ("recency signals:
0.10"), not two halves. Rerun the whole audit with fresh seeds and present only
rankings that survive. Then go back to leadership with one corrected chart and say
plainly which method the old chart used and why it moved.
House rule: no importance chart leaves the team without three stamps — permutation
cross-check on held-out data, correlation audit with twins grouped, and a
stability rerun across seeds. Put the method in the chart's caption ("permutation,
test set, 20 repeats, groups marked") so a reader knows what they are trusting.
Treat feature_importances_ as a five-second lead for your own exploration, never
as a slide.
Q: "Your feature-importance chart showed different top features in two runs. What happened, and what do you present instead?" Strong answer: name the credit split between correlated features and impurity importance's training-side bias; propose permutation importance on held-out rows; add the grouped shuffle for correlated twins — singles let one twin cover for the other; and finish with the stability habit: a ranking must survive a reseeded rerun before it earns a slide.