econml.grf.LinearMomentGRFCriterion

class econml.grf.LinearMomentGRFCriterion

Bases: econml.tree._criterion.RegressionCriterion

A criterion class that estimates local parameters defined via linear moment equations of the form:

E[ m(J, A; theta(x)) | X=x] = E[ J * theta(x) - A | X=x] = 0

Calculates impurity based on heterogeneity induced on the estimated parameters, based on the proxy score defined in the Generalized Random Forest paper:

Athey, Susan, Julie Tibshirani, and Stefan Wager.
"Generalized random forests." The Annals of Statistics
47.2 (2019): 1148-1178 https://arxiv.org/pdf/1610.01271.pdf.

Calculates proxy labels for each sample:

rho[i] := - J(Node)^{-1} (J[i] * theta(Node) - A[i])
J(Node) := E[J[i] | X[i] in Node]
theta(Node) := J(Node)^{-1} E[A[i] | X[i] in Node]

Then uses as proxy_impurity_improvement for a split (Left, Right) the quantity:

sum_{k=1}^{n_relevant_outputs} E[rho[i, k] | X[i] in Left]^2 + E[rho[i, k] | X[i] in Right]^2

Stores as node impurity the quantity:

sum_{k=1}^{n_relevant_outputs} Var(rho[i, k] | X[i] in Node)
 = sum_{k=1}^{n_relevant_outputs} E[rho[i, k]^2 | X[i] in Node] - E[rho[i, k] | X[i] in Node]^2
__init__()

Initialize self. See help(type(self)) for accurate signature.

Methods

__init__()

Initialize self.