Add the Rzepakowski normalization factor (normalization=True is the default) to the KL/ED/Chi criteria, plus the CTS (Contextual Treatment Selection) criterion.
Depends on Issue 1 (KL/ED/Chi scaffold). Grouped with Issue 3b (the two-class/variance criteria) under "remaining criteria".
Scope
- Rzepakowski normalization
normI / arr_normI (uplift.pyx ~1625–1734) applied to KL/ED/Chi so the gain is divided by the treatment-vs-control distribution divergence. Respect the normalization flag (default True).
- CTS criterion (simple multi-treatment gain: max over groups of the outcome mean).
Verify
- Per-criterion parity vs legacy with
normalization=True on fixed seeds (KL/ED/Chi).
- CTS parity vs
UpliftTreeClassifier(evaluationFunction="CTS") on a fixed seed.
Reusable templates
- Legacy:
uplift.pyx normI/arr_normI (~1625–1734), evaluate_CTS.
Part of #945.
Add the Rzepakowski normalization factor (
normalization=Trueis the default) to the KL/ED/Chi criteria, plus the CTS (Contextual Treatment Selection) criterion.Depends on Issue 1 (KL/ED/Chi scaffold). Grouped with Issue 3b (the two-class/variance criteria) under "remaining criteria".
Scope
normI/arr_normI(uplift.pyx~1625–1734) applied to KL/ED/Chi so the gain is divided by the treatment-vs-control distribution divergence. Respect thenormalizationflag (defaultTrue).Verify
normalization=Trueon fixed seeds (KL/ED/Chi).UpliftTreeClassifier(evaluationFunction="CTS")on a fixed seed.Reusable templates
uplift.pyxnormI/arr_normI(~1625–1734),evaluate_CTS.Part of #945.