Skip to content

Instantly share code, notes, and snippets.

@erikcs
Last active May 5, 2021 06:32
Show Gist options
  • Save erikcs/a34a031d1161b841f5fef5910fbed500 to your computer and use it in GitHub Desktop.
Save erikcs/a34a031d1161b841f5fef5910fbed500 to your computer and use it in GitHub Desktop.
# Master
oob test stdratio
Y.error "0.047 +/- 0.001" "0.047 +/- 0.001" "2.471 +/- 0.087"
tau.error "0.009 +/- 0.001" "0.009 +/- 0.001" "1.251 +/- 0.099"
csf.error "0.105 +/- 0.011" "0.104 +/- 0.011" "1.600 +/- 0.201"
mcf.error "0.047 +/- 0.002" "0.048 +/- 0.003" "2.735 +/- 0.143"
user.self sys.self elapsed
Y.time "18.138 +/- 0.057" "0.309 +/- 0.010" "18.496 +/- 0.059"
Y.time.pred "3.225 +/- 0.039" "0.107 +/- 0.005" "3.340 +/- 0.042"
Y.time.ci "5.135 +/- 0.074" "0.200 +/- 0.009" "5.348 +/- 0.074"
tau.time "17.361 +/- 0.095" "0.206 +/- 0.010" "17.610 +/- 0.101"
tau.time.pred "2.644 +/- 0.030" "0.061 +/- 0.003" "2.711 +/- 0.032"
tau.time.ci "3.850 +/- 0.035" "0.129 +/- 0.012" "3.989 +/- 0.042"
survival.time "17.204 +/- 0.241" "0.116 +/- 0.006" "17.361 +/- 0.238"
survival.time.pred "3.903 +/- 0.039" "0.138 +/- 0.011" "4.050 +/- 0.046"
quantile.time "11.611 +/- 0.026" "0.177 +/- 0.004" "11.817 +/- 0.025"
quantile.time.pred "5.099 +/- 0.079" "0.135 +/- 0.023" "5.246 +/- 0.086"
ll.Y.time "15.713 +/- 0.049" "0.341 +/- 0.006" "16.096 +/- 0.053"
ll.Y.time.pred "6.334 +/- 0.062" "0.256 +/- 0.024" "6.605 +/- 0.074"
csf.time "24.699 +/- 0.093" "2.157 +/- 0.028" "16.332 +/- 0.081"
csf.time.pred "1.598 +/- 0.016" "0.024 +/- 0.002" "1.627 +/- 0.017"
csf.time.ci "3.013 +/- 0.025" "0.066 +/- 0.007" "3.086 +/- 0.026"
mcf.time "32.385 +/- 0.080" "0.351 +/- 0.012" "32.817 +/- 0.087"
mcf.time.pred "2.752 +/- 0.019" "0.070 +/- 0.007" "2.829 +/- 0.020"
mcf.time.ci "5.315 +/- 0.018" "0.221 +/- 0.007" "5.550 +/- 0.020"
# All getters inlined
oob test stdratio
Y.error "0.047 +/- 0.001" "0.047 +/- 0.001" "2.471 +/- 0.087"
tau.error "0.009 +/- 0.001" "0.009 +/- 0.001" "1.251 +/- 0.099"
csf.error "0.105 +/- 0.011" "0.104 +/- 0.011" "1.600 +/- 0.201"
mcf.error "0.047 +/- 0.002" "0.048 +/- 0.003" "2.735 +/- 0.143"
user.self sys.self elapsed
Y.time "16.331 +/- 0.060" "0.303 +/- 0.008" "16.677 +/- 0.059"
Y.time.pred "3.130 +/- 0.029" "0.115 +/- 0.008" "3.253 +/- 0.028"
Y.time.ci "5.004 +/- 0.066" "0.196 +/- 0.021" "5.212 +/- 0.065"
tau.time "15.160 +/- 0.085" "0.210 +/- 0.008" "15.408 +/- 0.090"
tau.time.pred "2.556 +/- 0.037" "0.051 +/- 0.005" "2.614 +/- 0.037"
tau.time.ci "3.732 +/- 0.035" "0.115 +/- 0.012" "3.856 +/- 0.041"
survival.time "16.387 +/- 0.231" "0.106 +/- 0.005" "16.532 +/- 0.231"
survival.time.pred "3.847 +/- 0.037" "0.143 +/- 0.008" "3.999 +/- 0.038"
quantile.time "10.535 +/- 0.024" "0.174 +/- 0.005" "10.738 +/- 0.027"
quantile.time.pred "5.037 +/- 0.047" "0.182 +/- 0.018" "5.232 +/- 0.056"
ll.Y.time "13.923 +/- 0.028" "0.331 +/- 0.015" "14.290 +/- 0.030"
ll.Y.time.pred "6.058 +/- 0.048" "0.314 +/- 0.008" "6.387 +/- 0.049"
csf.time "23.143 +/- 0.071" "2.204 +/- 0.013" "14.543 +/- 0.073"
csf.time.pred "1.508 +/- 0.020" "0.024 +/- 0.003" "1.536 +/- 0.021"
csf.time.ci "2.942 +/- 0.025" "0.074 +/- 0.004" "3.023 +/- 0.027"
mcf.time "29.853 +/- 0.087" "0.360 +/- 0.008" "30.286 +/- 0.088"
mcf.time.pred "2.639 +/- 0.011" "0.091 +/- 0.007" "2.737 +/- 0.010"
mcf.time.ci "5.195 +/- 0.017" "0.201 +/- 0.017" "5.409 +/- 0.022"
# No inline
user.self sys.self elapsed
Y.time "17.857 +/- 0.076" "0.317 +/- 0.010" "18.221 +/- 0.076"
Y.time.pred "3.220 +/- 0.036" "0.104 +/- 0.005" "3.332 +/- 0.033"
Y.time.ci "5.110 +/- 0.069" "0.214 +/- 0.021" "5.337 +/- 0.064"
tau.time "16.998 +/- 0.078" "0.216 +/- 0.008" "17.255 +/- 0.080"
tau.time.pred "2.621 +/- 0.029" "0.055 +/- 0.003" "2.683 +/- 0.029"
tau.time.ci "3.837 +/- 0.035" "0.113 +/- 0.014" "3.959 +/- 0.041"
survival.time "17.188 +/- 0.243" "0.122 +/- 0.005" "17.351 +/- 0.242"
survival.time.pred "3.933 +/- 0.046" "0.136 +/- 0.012" "4.078 +/- 0.047"
quantile.time "11.578 +/- 0.028" "0.167 +/- 0.005" "11.777 +/- 0.030"
quantile.time.pred "5.102 +/- 0.058" "0.177 +/- 0.020" "5.291 +/- 0.068"
ll.Y.time "15.443 +/- 0.041" "0.342 +/- 0.009" "15.826 +/- 0.044"
ll.Y.time.pred "6.351 +/- 0.051" "0.276 +/- 0.033" "6.643 +/- 0.056"
csf.time "24.839 +/- 0.053" "2.213 +/- 0.035" "16.198 +/- 0.060"
csf.time.pred "1.572 +/- 0.016" "0.020 +/- 0.002" "1.596 +/- 0.015"
csf.time.ci "3.028 +/- 0.027" "0.080 +/- 0.008" "3.115 +/- 0.032"
mcf.time "32.253 +/- 0.102" "0.358 +/- 0.017" "32.691 +/- 0.108"
mcf.time.pred "2.659 +/- 0.023" "0.074 +/- 0.006" "2.739 +/- 0.023"
mcf.time.ci "5.342 +/- 0.025" "0.150 +/- 0.021" "5.505 +/- 0.027"
# All inlined
# machine: 12 cores / 150G
# 300 000 rows of continous data
library(grf)
set.seed(1)
n <- 300000
p <- 20
X <- matrix(rnorm(n * p), n, p)
W <- rbinom(n, 1, 0.5)
Y <- pmax(X[, 1], 0) * W + X[, 2] + pmin(X[, 3], 0) + rnorm(n)
system.time(c.forest <- causal_forest(X, Y, W, seed = 1))
user system elapsed
11136.322 46.305 1060.477
# Master @0f432c4b70d12a55ca90fb088a3dd6c96eea243b
user system elapsed
13292.470 48.901 1240.551
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment