Release Notes

These release notes adhere to the keep a changelog format. Below is a list of changes since CausalELM was first released.

Version v0.7.0 - 2024-06-22

Added

  • Implemented bagged ensemble of extreme learning machines to use with estimators #67
  • Implemented multithreading for testing the sensitivity of estimators to the counterfactual consistency assumption

Changed

  • Compute the number of neurons to use with log heuristic instead of cross validation #62
  • Calculate probabilities as the average label predicted by the ensemble instead of clipping #71
  • Made calculation of p-values and standard errors optional and not executed by default in summarize methods #65
  • Removed redundant W argument for double machine learning, R-learning, and doubly robust estimation #68
  • Use swish as the default activation function #72
  • Implemented noise as a function of each observation instead of the variance of the outcome when testing the sensitivity of the counterfactual consistency assumption #74
  • p-values and standard errors for randomization inference are generated in parallel

Fixed

  • Applying the weight trick for R-learning #70

Version v0.6.0 - 2024-06-15

Added

  • Implemented doubly robust learner for CATE estimation #31
  • Provided better explanations of supported treatment and outcome variable types in the docs #41
  • Added support for specifying confounders, W, separate from covariates of interest, X, for double machine

learning and doubly robust estimation 39

Changed

  • Removed the estimatecausaleffect! call in the model constructor docstrings #35
  • Standardized and improved docstrings and added doctests #44
  • Counterfactual consistency now simulates outcomes that violate the counterfactual consistency assumption rather than

binning of treatments and works with discrete or continuous treatments #33

  • Refactored estimator and metalearner structs, constructors, and estimatecausaleffect! methods #45

Fixed

  • Clipped probabilities between 0 and 1 for estimators that use predictions of binary variables #36
  • Fixed sample splitting and cross fitting procedure for doubly robust estimation #42
  • Addressed numerical instability when finding the ridge penalty by replacing the previous ridge formula with

generalized cross validation #43

  • Uses the correct variable in the ommited predictor test for interrupted time series.
  • Uses correct range for p-values in interrupted time series validation tests.
  • Correctly subsets the data for ATT estimation in G-computation #52

Version v0.5.1 - 2024-01-15

Added

  • More descriptive docstrings #21

Fixed

  • Permutation of continuous treatments draws from a continuous, instead of discrete uniform distribution during randomization inference

Version v0.5.0 - 2024-01-13

Added

  • Constructors for estimators taht accept dataframes from DataFrames.jl #25

Changed

  • Estimators can handle any array whose values are <:Real #23
  • Estimator constructors are now called with model(X, T, Y) instead of model(X, Y, T)
  • Removed excess type constraints for many methods #23
  • Vectorized a few for loops
  • Increased test coverage

Version v0.4.0 - 2024-01-06

Added

  • R-learning
  • Softmax function for arrays

Changed

  • Moved all types and methods under the main module
  • Decreased size of function definitions #22
  • SLearner has a G-computation field that does the heavy lifting for S-learning
  • Removed excess fields from estimator structs

Fixed

  • Changed the incorrect name of DoublyRobustEstimation struct to DoubleMachineLearning
  • Caclulation of risk ratios and E-values
  • Calculation of validation metrics for multiclass classification
  • Calculation of output weights for L2 regularized extreme learning machines

Version v0.3.0 - 2023-11-25

Added

  • Splitting of temporal data for cross validation 18
  • Methods to validate/test senstivity to violations of identifying assumptions #16

Changed

  • Converted all functions and methods to snake case #17
  • Randomization inference for interrupted time series randomizes all the indices #15

Fixed

  • Issue related to recoding variables to calculate validation metrics for cross validation

Version v0.2.1 - 2023-06-07

Added

  • Cross fitting to the doubly robust estimator

Version v0.2.0 - 2023-04-16

Added

  • Calculation of p-values and standard errors via randomization inference

Changed

  • Divided package into modules

Version v0.1.0 - 2023-02-14

Added

  • Event study, g-computation, and doubly robust estimators
  • S-learning, T-learning, and X-learning
  • Model summarization methods