PDP report

target y · 3 features · 3 plotted

data 10,000 × 33 continuousmodel output 1.17 ± 0.79 in [-0.601, 3.7]
method pdptop_k 5coverage 0.8000heter_threshold 0.2960min_r2_gain 0.0100finder bestnof_instances 10000random_state 21

1 · Overview — where to look

An additive surrogate read off the global curves reproduces 85.8% of the model's predicted variance; adding the regional plots kept by the decision sequence, 99.8%.

explained-variance ledger

Each point is a feature: importance (x) against heterogeneity (y). Bottom-left is ignorable; bottom-right is important and fully described by its mean effect; the top-right corner — important and heterogeneous — is where the mean hides something. An arrow marks each split the decision sequence accepted: from the feature's global point to its weighted-mean point across the subregions.

feature triage
#featureimportanceheterogeneity#regionsregional analysis
1x30.66030.00001below the search threshold →
2x20.32530.29607split found — rejected by the decision sequence →
3x10.29590.00003split into 2 regions →

The plotted features carry 100% of the total importance mass (target 80%, ceiling top_k = 5).

The decision sequence. Starting from the global curves, each round applies the split with the largest explained-variance gain, measured on top of the splits above it, and stops when no remaining split adds at least 1.0%. A real split (its heterogeneity does drop) can still add nothing — or even hurt, by double-counting — when its variance is already explained by an earlier split.

stepregionsheterogeneityexplained variance
global effects (GAM)··85.8%
+ split x1 (on x2)20.299 → 0.000+14.0% → 99.8%
rejected · x2 (on x1)40.296 → 0.134-10.8% — redundant (variance already explained)
Bar view — importance and heterogeneityimportance and heterogeneity

2 · Regional analysis — the final CALM

The selected snapshot: global effects everywhere except the accepted splits. Features in descending importance — a split feature enters as one group at the instance-weighted mean of its subregions. The split features' global counterparts are in the baseline section at the end.

2.1 · x3

importance 0.6603heterogeneity 0.0000regions 1

Global effect

x3 global effect

Regional effects

Heterogeneity below the threshold — the mean effect tells the whole story; find_regions was skipped.

2.2 · x2

importance 0.3253heterogeneity 0.2960regions 1

Global effect

x2 global effect

Regional effects

A split on x1 into 4 regions was found (heterogeneity 0.296 → 0.134), but the decision sequence skips it: it adds no explained variance beyond the splits kept there — the same variance is already read elsewhere. The regional plots are omitted; reproduce them with find_regions.

2.3 · x1

importance 0.2959heterogeneity 0.0000regions 2

Split on x2 into 2 regions — worth +14.0% of explained variance on top of the splits above it; importance and heterogeneity here are the instance-weighted means over the subregions. The global counterpart is in the baseline.

Partition tree

Feature 0 - Full partition tree:
🌳 Full Tree Structure:
───────────────────────
x1 🔹 [id: 0 | heter: 0.30 | inst: 10000 | w: 1.00]
    x2 < -0.00 🔹 [id: 1 | heter: 0.00 | inst: 4922 | w: 0.49]
    x2 ≥ -0.00 🔹 [id: 2 | heter: 0.00 | inst: 5078 | w: 0.51]
--------------------------------------------------
Feature 0 - Statistics per tree level:
🌳 Tree Summary:
─────────────────
Level 0🔹heter: 0.30
    Level 1🔹heter: 0.00 | 🔻0.30 (100.00%)


x1 where x2 < -0.00
heterogeneity 0.0000 · −100% vs global · n=4,922
x1 where x2 ≥ -0.00
heterogeneity 0.0000 · −100% vs global · n=5,078

3 · Global baseline — without regions

What you would believe about the split features without the regional analysis: their global mean effects, with the heterogeneity the accepted splits just explained still hiding inside the band. Compare with their subregions in the regional analysis above.

x1

global importance 0.0046global heterogeneity 0.2989
x1 global effect (baseline)