Adapt the nuisance estimation for the IV type score in the PLR model #147
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
In this PR the nuisance estimation for the IV-type score in the PLR model is adapted to be in line with the DML paper Chernozhukov et al. (2018).
score='partialling out'
(Equation (4.4) in Chernozhukov et al. (2018)) are not affected by the changes in this PR. However, the naming of the predictions is changed fromg_hat
tol_hat
to be better in line with Chernozhukov et al. (2018). Still the API is not changed to be backward-compatible, i.e., when initializing anDoubleMLPLR
object, learnersml_g
andml_m
need to be specified. The estimatorml_g
is then used to estimate the effect ofX
onY
(i.e. l_0(X) = E[Y|X]) and the estimatorml_m
to estimate the effect ofX
onD
(i.e. m_0(X) = E[D|X]). When setting hyperparamterslearner='ml_l'
andlearner='ml_m'
should be used.score='IV-type'
(Equation (4.3) in Chernozhukov et al. (2018)) the implementation now follows the approach described on pp. C31-C33 in Chernozhukov et al. (2018). This means that an initial estimate fortheta_0
is obtained via the'partialling out'
score. Then an estimate forg_0(X)
is obtained by regressingY - theta_0 * D
onX
. For both nuisance functionsl_0(X)
(needed for the preliminarytheta_0
estimate) andg_0(X)
, the same ML estimator (specified inml_g
) is used. However, hyperparamters can be set individually vialearner='ml_l'
andlearner='ml_m'
.PR Checklist