Link Search Menu Expand Document

Algorithm Overview

Read the summaries below to determine which of our matching algorithms is right for you.

Table of contents
  1. Dynamic Almost Matching Exactly (DAME)
  2. Fast Large-Scale Almost Matching Exactly (FLAME)
  3. Matching After Learning to Stretch (MALTS)
  4. Adaptive Hyper-Box Matching (AHB)
  5. Model-to-Match: Lasso Coefficient Matching (LCM)

Dynamic Almost Matching Exactly (DAME)

Languages: Python
Input data: Categorical covariates, works best with small to moderately-sized datasets
Matching method: Uses bit-vector computations to match units based on a learned, weighted Hamming distance.
Paper: Interpretable Almost Matching Exactly for Causal Inference

Fast Large-Scale Almost Matching Exactly (FLAME)

Languages: R, Python
Input data: Categorical covariates, scales well to large datasets with millions of observations
Matching method: Uses bit-vector computations to match units based on a learned, weighted Hamming distance. FLAME successively drops irrelevant covariates to lessen the computational load while still maintaining enough covariates for high-quality conditional average treatment effect (CATE) estimation.
Paper: FLAME: A Fast Large-scale Almost Matching Exactly Approach to Causal Inference

Matching After Learning to Stretch (MALTS)

Languages: Python
Input data: Continuous, categorical, or mixed (continous and categorical) covariates
Matching method: Uses exact matching for discrete variables and learned, generalized Mahalanobis distances for continuous variables. Instead of a predetermined distance metric, the covariates contributing more towards predicting the outcome are given higher weights.
Paper: MALTS: Matching After Learning to Stretch

Adaptive Hyper-Box Matching (AHB)

Languages: R
Input data: Continuous, categorical, or mixed (continous and categorical) covariates
Matching method: Matches units with others in unit-specific, hyper-box-shaped regions of the covariate space. The regions are found as either the solution to a mixed integer program, or by using a fast approximation algorithm.
Paper: Adaptive Hyper-box Matching for Interpretable Individualized Treatment Effect Estimation

Model-to-Match: Lasso Coefficient Matching (LCM)

Languages: Python
Input data: Continuous covariates
Matching method: Creates almost exact matches in a computationally scalable manner, which works well for high-dimensional and/or big data. The feature importances from an outcome regression model are used as distance metric weights.
Paper: From Feature Importance to Distance Metric: An Almost Exact Matching Approach for Causal Inference