py-why / EconML

ALICE (Automated Learning and Intelligence for Causation and Economics) is a Microsoft Research project aimed at applying Artificial Intelligence concepts to economic decision making. One of its goals is to build a toolkit that combines state-of-the-art machine learning techniques with econometrics in order to bring automation to complex causal inference problems. To date, the ALICE Python SDK (econml) implements orthogonal machine learning algorithms such as the double machine learning work of Chernozhukov et al. This toolkit is designed to measure the causal effect of some treatment variable(s) t on an outcome variable y, controlling for a set of features x.
https://www.microsoft.com/en-us/research/project/alice/
Other
3.77k stars 713 forks source link

the result changes across different runs, how to interpret the result? #264

Open hzhz2020 opened 4 years ago

hzhz2020 commented 4 years ago

Dear Authors Thanks for your great work. I am trying to use the DeepIVEstimator to estimate treatment effect for a dataset. I am getting different estimated treatment effect each time I run the estimator. Do you have any suggestion on how to interpret the outputs (i.e., the estimated treatment effect). Shall we average the result across multiple runs?

from econml.deepiv import DeepIVEstimator treatment_model = ... response_model = ... keras_fit_options = ... deepIvEst = DeepIVEstimator(...)

deepIvEst.fit(Y=our_Y,T=our_T,X=our_X,Z=our_Z) treatment_effects = deepIvEst.effect(X = our_X_test, T0 = T0, T1 = T1)

Thank you!

kbattocchi commented 4 years ago

Sorry for the late response. Unfortunately it's difficult to know how to advise you without more information. Here are a few thoughts:

Without knowing more specific details about your problem, it's hard to know which case might apply to you.

hzhz2020 commented 4 years ago

Thank you for your very insightful comments!