get_W {SDModels} | R Documentation |
Estimation of anchor transformation
Description
Estimates the anchor transformation for the Anchor-Objective.
The anchor transformation is W = I-(1-\sqrt{\gamma}))\Pi_A
,
where \Pi_A = A(A^TA)^{-1}A^T
. For \gamma = 1
this is just the identity.
For \gamma = 0
this corresponds to residuals after orthogonal projecting onto A.
For large \gamma
this is close to the orthogonal projection onto A, scaled by \gamma
.
The estimator \text{argmin}_f ||W(Y - f(X))||^2
corresponds to the Anchor-Regression Estimator
(Rothenhäusler et al. 2021), (Bühlmann 2020).
Usage
get_W(A, gamma, intercept = FALSE, gpu = FALSE)
Arguments
A |
Numerical Anchor of class |
gamma |
Strength of distributional robustness, |
intercept |
Logical, whether to include an intercept in the anchor. |
gpu |
If |
Value
W of class matrix
, the anchor transformation matrix.
Author(s)
Markus Ulmer
References
Bühlmann P (2020).
“Invariance, Causality and Robustness.”
Statistical Science, 35(3).
ISSN 0883-4237, doi:10.1214/19-STS721.
Rothenhäusler D, Meinshausen N, Bühlmann P, Peters J (2021).
“Anchor Regression: Heterogeneous Data Meet Causality.”
Journal of the Royal Statistical Society Series B: Statistical Methodology, 83(2), 215–246.
ISSN 1369-7412, doi:10.1111/rssb.12398.
Examples
set.seed(1)
n <- 50
X <- matrix(rnorm(n * 1), nrow = n)
Y <- 3 * X + rnorm(n)
W <- get_W(X, gamma = 0)
resid <- W %*% Y