Changelog¶
0.11.0 (2021-07-28)¶
CausalML surpassed 2K stars!
We have 3 new community contributors, Jannik (@jroessler), Mohamed (@ibraaaa), and Leo (@lleiou). Thanks for the contribution!
Major Updates¶
Minor Updates¶
Fix inconsistent feature importance calculation in uplift tree by @paullo0106 (#372)
Fix filter method failure with NaNs in the data issue by @manojbalaji1 (#367)
Add automatic package publish by @jeongyoonlee (#354)
Fix typo in unit_selection optimization by @jeongyoonlee (#347)
Fix docs build failure by @jeongyoonlee (#335)
Convert pandas inputs to numpy in S/T/R Learners by @jeongyoonlee (#333)
Require scikit-learn as a dependency of setup.py by @ibraaaa (#325)
Fix AttributeError when passing in Outcome and Effect learner to R-Learner by @paullo0106 (#320)
Fix error when there is no positive class for KL Divergence filter by @lleiou (#311)
Add versions to cython and numpy in setup.py for requirements.txt accordingly by @maccam912 (#306)
0.10.0 (2021-02-18)¶
CausalML surpassed 235,000 downloads!
We have 5 new community contributors, Suraj (@surajiyer), Harsh (@HarshCasper), Manoj (@manojbalaji1), Matthew (@maccam912) and Václav (@vaclavbelak). Thanks for the contribution!
Major Updates¶
Minor Updates¶
Add propensity_learner to R-learner by @jeongyoonlee (#297)
Add BaseLearner class for other meta-learners to inherit from without duplicated code by @jeongyoonlee (#295)
Fix installation issue for Shap>=0.38.1 by @paullo0106 (#287)
Fix import error for sklearn>= 0.24 by @jeongyoonlee (#283)
Fix KeyError issue in Filter method for certain dataset by @surajiyer (#281)
Fix inconsistent cumlift score calculation of multiple models by @vaclavbelak (#273)
Fix duplicate values handling in feature selection method by @manojbalaji1 (#271)
Fix the color spectrum of SHAP summary plot for feature interpretations of meta-learners by @paullo0106 (#269)
Add IIA and value optimization related documentation by @t-tte (#264)
Fix StratifiedKFold arguments for propensity score estimation by @paullo0106 (#262)
Refactor the code with string format argument and is to compare object types, and change methods not using bound instance to static methods by @harshcasper (#256, #260)
0.9.0 (2020-10-23)¶
CausalML won the 1st prize at the poster session in UberML’20
DoWhy integrated CausalML starting v0.4 (release note)
CausalML team welcomes new project leadership, Mert Bay
We have 4 new community contributors, Mario Wijaya (@mwijaya3), Harry Zhao (@deeplaunch), Christophe (@ccrndn) and Georg Walther (@waltherg). Thanks for the contribution!
Major Updates¶
Minor Updates¶
Implement propensity model abstraction for common interface by @waltherg (#223)
Fix bug in BaseSClassifier and BaseXClassifier by @yungmsh and @ppstacy (#217), (#218)
Fix parentNodeSummary for UpliftDecisionTrees by @paullo0106 (#238)
Add pd.Series for propensity score condition check by @paullo0106 (#242)
Fix the uplift random forest prediction output by @ppstacy (#236)
Add functions and methods to init for optimization module by @mwijaya3 (#228)
Install GitHub Stale App to close inactive issues automatically @jeongyoonlee (#237)
Update documentation by @deeplaunch, @ccrndn, @ppstacy(#214, #231, #232)
0.8.0 (2020-07-17)¶
CausalML surpassed 100,000 downloads! Thanks for the support.
Major Updates¶
Minor Updates¶
0.7.1 (2020-05-07)¶
Special thanks to our new community contributor, Katherine (@khof312)!
Major Updates¶
Minor Updates¶
0.7.0 (2020-02-28)¶
Special thanks to our new community contributor, Steve (@steveyang90)!
Major Updates¶
Add a new nn inference submodule with DragonNet implementation by @yungmsh
Add a new feature selection submodule with filter feature selection methods by @zhenyuz0500
Minor Updates¶
Make propensity scores optional in all meta-learners by @ppstacy
Replace eli5 permutation importance with sklearn’s by @yluogit
Replace ElasticNetCV with LogisticRegressionCV in propensity.py by @yungmsh
Fix the normalized uplift curve plot with negative ATE by @jeongyoonlee
Fix the TravisCI FOSSA error for PRs from forked repo by @steveyang90
Add documentation about tree visualization by @zhenyuz0500
0.6.0 (2019-12-31)¶
Special thanks to our new community contributors, Fritz (@fritzo), Peter (@peterfoley) and Tomasz (@TomaszZamacinski)!
Improve UpliftTreeClassifier’s speed by 4 times by @jeongyoonlee
Fix impurity computation in CausalTreeRegressor by @TomaszZamacinski
Fix XGBoost related warnings by @peterfoley
Fix typos and improve documentation by @peterfoley and @fritzo
0.5.0 (2019-11-26)¶
Special thanks to our new community contributors, Paul (@paullo0106) and Florian (@FlorianWilhelm)!
Add TMLELearner, targeted maximum likelihood estimator to inference.meta by @huigangchen
Add an option to DGPs for regression to simulate imbalanced propensity distribution by @huigangchen
Fix incorrect edge connections, and add more information in the uplift tree plot by @paullo0106
Fix an installation error related to Cython and numpy by @FlorianWilhelm
Drop Python 2 support from setup.py by @jeongyoonlee
Update causaltree.pyx Cython code to be compatible with scikit-learn>=0.21.0 by @jeongyoonlee
0.4.0 (2019-10-21)¶
Add uplift_tree_plot() to inference.tree to visualize UpliftTreeClassifier by @zhenyuz0500
Add the Explainer class to inference.meta to provide feature importances using SHAP and eli5’s PermutationImportance by @yungmsh
Add bootstrap confidence intervals for the average treatment effect estimates of meta learners by @ppstacy
0.3.0 (2019-09-17)¶
Extend meta-learners to support classification by @t-tte
Extend meta-learners to support multiple treatments by @yungmsh
Fix a bug in uplift curves and add Qini curves/scores to metrics by @jeongyoonlee
Add inference.meta.XGBRRegressor with early stopping and ranking optimization by @yluogit
0.2.0 (2019-08-12)¶
Add optimize.PolicyLearner based on Athey and Wager 2017 [6]
Add the CausalTreeRegressor estimator based on Athey and Imbens 2016 [4] (experimental)
Add missing imports in features.py to enable label encoding with grouping of rare values in LabelEncoder()
Fix a bug that caused the mismatch between training and prediction features in inference.meta.tlearner.predict()
0.1.0 (unreleased)¶
Initial release with the Uplift Random Forest, and S/T/X/R-learners.