  This paper serves as a starting point for machine learning researchers,
engineers and students who are interested in but not yet familiar with causal
inference. We start by laying out an important set of assumptions that are
collectively needed for causal identification, such as exchangeability,
positivity, consistency and the absence of interference. From these
assumptions, we build out a set of important causal inference techniques, which
we do so by categorizing them into two buckets; active and passive approaches.
We describe and discuss randomized controlled trials and bandit-based
approaches from the active category. We then describe classical approaches,
such as matching and inverse probability weighting, in the passive category,
followed by more recent deep learning based algorithms. By finishing the paper
with some of the missing aspects of causal inference from this paper, such as
collider biases, we expect this paper to provide readers with a diverse set of
starting points for further reading and research in causal inference and
discovery.
