libuplift.meta.nested#

Nested models where control outcome predictions are used in an uplift model.

Classes#

NestedMeanUpliftRegressor

Nested regression model.

DDRUpliftClassifier

Dependent Data Representation metamodel. It is a double model

Module Contents#

class libuplift.meta.nested.NestedMeanUpliftRegressor(base_estimator=LinearRegression())[source]#

Bases: libuplift.base.UpliftRegressorMixin, libuplift.meta.base.UpliftMetaModelBase

Nested regression model.

First builds a model on controls, then subtracts its training predictions from target. An uplift model is then build on the new target.

Only available for regression models.

predict(X)[source]#
class libuplift.meta.nested.DDRUpliftClassifier(base_estimator=LogisticRegression(), feature_prediction_method='predict_proba', direction='C->T')[source]#

Bases: libuplift.base.UpliftClassifierMixin, libuplift.meta.base.UpliftMetaModelBase

Dependent Data Representation metamodel. It is a double model where control predictions are added as a variable in the treatment model.

The model was proposed in A. Betlei, E. Diemert, and M.-R. Amini Uplift Prediction with Dependent Feature Representation in Imbalanced Treatment and Control Conditions, ICONIP, 2018.

directionstring, default=”C->T” “C->T” means control

predictions are used as an additional predictor for the treatment model, “T->C” means the reverse: predictions of all treatment models are used (jointly) as predictors for the control model.

predict(X)[source]#