Causal inference with machine learning