package causal
- Alphabetic
- Public
- All
Type Members
-
class
DoubleMLEstimator extends Estimator[DoubleMLModel] with ComplexParamsWritable with DoubleMLParams with SynapseMLLogging with Wrappable
Double ML estimators.
Double ML estimators. The estimator follows the two stage process, where a set of nuisance functions are estimated in the first stage in a cross-fitting manner and a final stage estimates the average treatment effect (ATE) model. Our goal is to estimate the constant marginal ATE Theta(X)
In this estimator, the ATE is estimated by using the following estimating equations: .. math :: Y - \\E[Y | X, W] = \\Theta(X) \\cdot (T - \\E[T | X, W]) + \\epsilon
Thus if we estimate the nuisance functions :math:
q(X, W) = \\E[Y | X, W]
and :math:f(X, W)=\\E[T | X, W]
in the first stage, we can estimate the final stage ate for each treatment t, by running a regression, minimizing the residual on residual square loss, estimating Theta(X) is a final regression problem, regressing tilde{Y} on X and tilde{T}).. math :: \\hat{\\theta} = \\arg\\min_{\\Theta}\ \E_n\\left[ (\\tilde{Y} - \\Theta(X) \\cdot \\tilde{T})^2 \\right]
Where
\\tilde{Y}=Y - \\E[Y | X, W]
and :math:\\tilde{T}=T-\\E[T | X, W]
denotes the residual outcome and residual treatment.The nuisance function :math:
q
is a simple machine learning problem and user can use setOutcomeModel to set an arbitrary sparkML model that is internally used to solve this problemThe problem of estimating the nuisance function :math:
f
is also a machine learning problem and user can use setTreatmentModel to set an arbitrary sparkML model that is internally used to solve this problem. -
class
DoubleMLModel extends Model[DoubleMLModel] with DoubleMLParams with ComplexParamsWritable with Wrappable with SynapseMLLogging
Model produced by DoubleMLEstimator.
- trait DoubleMLParams extends Params with HasTreatmentCol with HasOutcomeCol with HasFeaturesCol with HasMaxIter with HasWeightCol with HasParallelismInjected
- trait HasMaxDepth extends Params
- trait HasMinSampleLeaf extends Params
- trait HasNumTrees extends Params
- trait HasOutcomeCol extends Params
- trait HasTreatmentCol extends Params
- class OrthoForestDMLEstimator extends Estimator[OrthoForestDMLModel] with ComplexParamsWritable with OrthoForestDMLParams with Wrappable with SynapseMLLogging with HasOutcomeCol
-
class
OrthoForestDMLModel extends Model[OrthoForestDMLModel] with OrthoForestDMLParams with ComplexParamsWritable with Wrappable with SynapseMLLogging
Model produced by OrthoForestDMLEstimator.
- trait OrthoForestDMLParams extends DoubleMLParams with HasNumTrees with HasMaxDepth with HasMinSampleLeaf with HasOutputCol
-
class
OrthoForestVariableTransformer extends Transformer with HasOutputCol with DefaultParamsWritable with Wrappable with SynapseMLLogging
Transform the outcome residual and treatment residual.
Transform the outcome residual and treatment residual. \E_n\left[ \left(\tilde{Y} - \theta(X) \cdot \tilde{T}\right)2 \right] = \E_n\left[ \tilde{T}2 \left(\frac{\tilde{Y}}{\tilde{T}} - \theta(X)\right)^2 \right] The latter corresponds to a weighted regression problem, where the target label is :math:
\tilde{Y}/\tilde{T}
, the features areX
and the weight of each sample is :math:\tilde{T}^2
. Any regressor that accepts sample weights can be used as a final model, e.g.:
-
class
ResidualTransformer extends Transformer with HasOutputCol with DefaultParamsWritable with Wrappable with SynapseMLLogging
Compute the differences between observed and predicted values of data.
Compute the differences between observed and predicted values of data. for classification, we compute residual as "observed - probability($(classIndex))" for regression, we compute residual as "observed - prediction"
Value Members
- object ConstantColumns
- object DoubleMLEstimator extends ComplexParamsReadable[DoubleMLEstimator] with Serializable
- object DoubleMLModel extends ComplexParamsReadable[DoubleMLModel] with Serializable
- object OrthoForestDMLEstimator extends ComplexParamsReadable[OrthoForestDMLEstimator] with Serializable
- object OrthoForestDMLModel extends ComplexParamsReadable[OrthoForestDMLModel] with Serializable
- object OrthoForestVariableTransformer extends DefaultParamsReadable[OrthoForestVariableTransformer] with Serializable
- object ResidualTransformer extends DefaultParamsReadable[ResidualTransformer] with Serializable