Skip to content

Commit

Permalink
Merge pull request #198 from DoubleML/p-paradox
Browse files Browse the repository at this point in the history
Changes: Paradox
  • Loading branch information
PhilippBach committed Jun 5, 2024
2 parents 5de0dd0 + ba1836d commit e631592
Show file tree
Hide file tree
Showing 16 changed files with 117 additions and 116 deletions.
1 change: 1 addition & 0 deletions .github/workflows/rcheck.yml
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ jobs:
if: matrix.config.mlr3 == 'dev'
run: |
remotes::install_github("mlr-org/mlr3")
remotes::install_github("mlr-org/paradox")
shell: Rscript {0}

- name: Check
Expand Down
2 changes: 1 addition & 1 deletion DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Package: DoubleML
Type: Package
Title: Double Machine Learning in R
Version: 1.0.0
Version: 1.0.0.9000
Authors@R: c(
person("Philipp", "Bach", email = "philipp.bach@uni-hamburg.de", role=c("aut", "cre")),
person("Victor", "Chernozhukov", role="aut"),
Expand Down
18 changes: 9 additions & 9 deletions R/double_ml_iivm.R
Original file line number Diff line number Diff line change
Expand Up @@ -74,15 +74,15 @@
#' alpha_x = 1, dim_x = 20)
#' dml_iivm_obj = DoubleMLIIVM$new(obj_dml_data, ml_g, ml_m, ml_r)
#' param_grid = list(
#' "ml_g" = paradox::ParamSet$new(list(
#' paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
#' paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
#' "ml_m" = paradox::ParamSet$new(list(
#' paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
#' paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
#' "ml_r" = paradox::ParamSet$new(list(
#' paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
#' paradox::ParamInt$new("minsplit", lower = 1, upper = 2))))
#' "ml_g" = paradox::ps(
#' cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
#' minsplit = paradox::p_int(lower = 1, upper = 2)),
#' "ml_m" = paradox::ps(
#' cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
#' minsplit = paradox::p_int(lower = 1, upper = 2)),
#' "ml_r" = paradox::ps(
#' cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
#' minsplit = paradox::p_int(lower = 1, upper = 2)))
#' # minimum requirements for tune_settings
#' tune_settings = list(
#' terminator = mlr3tuning::trm("evals", n_evals = 5),
Expand Down
12 changes: 6 additions & 6 deletions R/double_ml_irm.R
Original file line number Diff line number Diff line change
Expand Up @@ -59,12 +59,12 @@
#' dml_irm_obj = DoubleMLIRM$new(obj_dml_data, ml_g, ml_m)
#'
#' param_grid = list(
#' "ml_g" = paradox::ParamSet$new(list(
#' paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
#' paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
#' "ml_m" = paradox::ParamSet$new(list(
#' paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
#' paradox::ParamInt$new("minsplit", lower = 1, upper = 2))))
#' "ml_g" = paradox::ps(
#' cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
#' minsplit = paradox::p_int(lower = 1, upper = 2)),
#' "ml_m" = paradox::ps(
#' cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
#' minsplit = paradox::p_int(lower = 1, upper = 2)))
#'
#' # minimum requirements for tune_settings
#' tune_settings = list(
Expand Down
18 changes: 9 additions & 9 deletions R/double_ml_pliv.R
Original file line number Diff line number Diff line change
Expand Up @@ -49,15 +49,15 @@
#' dim_z = 1)
#' dml_pliv_obj = DoubleMLPLIV$new(obj_dml_data, ml_l, ml_m, ml_r)
#' param_grid = list(
#' "ml_l" = paradox::ParamSet$new(list(
#' paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
#' paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
#' "ml_m" = paradox::ParamSet$new(list(
#' paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
#' paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
#' "ml_r" = paradox::ParamSet$new(list(
#' paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
#' paradox::ParamInt$new("minsplit", lower = 1, upper = 2))))
#' "ml_l" = paradox::ps(
#' cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
#' minsplit = paradox::p_int(lower = 1, upper = 2)),
#' "ml_m" = paradox::ps(
#' cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
#' minsplit = paradox::p_int(lower = 1, upper = 2)),
#' "ml_r" = paradox::ps(
#' cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
#' minsplit = paradox::p_int(lower = 1, upper = 2)))
#'
#' # minimum requirements for tune_settings
#' tune_settings = list(
Expand Down
12 changes: 6 additions & 6 deletions R/double_ml_plr.R
Original file line number Diff line number Diff line change
Expand Up @@ -48,12 +48,12 @@
#' dml_plr_obj = DoubleMLPLR$new(obj_dml_data, ml_l, ml_m)
#'
#' param_grid = list(
#' "ml_l" = paradox::ParamSet$new(list(
#' paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
#' paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
#' "ml_m" = paradox::ParamSet$new(list(
#' paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
#' paradox::ParamInt$new("minsplit", lower = 1, upper = 2))))
#' "ml_l" = paradox::ps(
#' cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
#' minsplit = paradox::p_int(lower = 1, upper = 2)),
#' "ml_m" = paradox::ps(
#' cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
#' minsplit = paradox::p_int(lower = 1, upper = 2)))
#'
#' # minimum requirements for tune_settings
#' tune_settings = list(
Expand Down
18 changes: 9 additions & 9 deletions man/DoubleMLIIVM.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 6 additions & 6 deletions man/DoubleMLIRM.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 9 additions & 9 deletions man/DoubleMLPLIV.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 6 additions & 6 deletions man/DoubleMLPLR.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 9 additions & 9 deletions tests/testthat/test-double_ml_iivm_tuning.R
Original file line number Diff line number Diff line change
Expand Up @@ -63,15 +63,15 @@ patrick::with_parameters_test_that("Unit tests for tuning of IIVM:",
n_rep = n_rep)

param_grid = list(
"ml_m" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
"ml_g" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
"ml_r" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))))
"ml_m" = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2)),
"ml_g" = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2)),
"ml_r" = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2)))

double_mliivm_obj_tuned$tune(param_set = param_grid, tune_on_folds = tune_on_folds, tune_settings = tune_settings)
double_mliivm_obj_tuned$fit()
Expand Down
12 changes: 6 additions & 6 deletions tests/testthat/test-double_ml_irm_tuning.R
Original file line number Diff line number Diff line change
Expand Up @@ -66,12 +66,12 @@ patrick::with_parameters_test_that("Unit tests for tuning of PLR:",
score = score)

param_grid = list(
"ml_g" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
"ml_m" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))))
"ml_g" = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2)),
"ml_m" = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2)))

double_mlirm_obj_tuned$tune(param_set = param_grid, tune_on_folds = tune_on_folds, tune_settings)
double_mlirm_obj_tuned$fit()
Expand Down
12 changes: 6 additions & 6 deletions tests/testthat/test-double_ml_pliv_exception_handling.R
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,12 @@ test_that("Unit tests for deprecation warnings of PLIV", {
regexp = msg)

par_grids = list(
"ml_g" = paradox::ParamSet$new(list(
paradox::ParamInt$new("num.trees", lower = 9, upper = 10))),
"ml_m" = paradox::ParamSet$new(list(
paradox::ParamInt$new("num.trees", lower = 10, upper = 11))),
"ml_r" = paradox::ParamSet$new(list(
paradox::ParamInt$new("num.trees", lower = 10, upper = 11))))
"ml_g" = paradox::ps(
num.trees = paradox::p_int(lower = 9, upper = 10)),
"ml_m" = paradox::ps(
num.trees = paradox::p_int(lower = 10, upper = 11)),
"ml_r" = paradox::ps(
num.trees = paradox::p_int(lower = 10, upper = 11)))

msg = paste0("Learner ml_g was renamed to ml_l.")
expect_warning(dml_obj$tune(par_grids),
Expand Down
42 changes: 21 additions & 21 deletions tests/testthat/test-double_ml_pliv_tuning.R
Original file line number Diff line number Diff line change
Expand Up @@ -79,19 +79,19 @@ patrick::with_parameters_test_that("Unit tests for tuning of PLIV",
n_rep = n_rep)

param_grid = list(
"ml_l" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
"ml_m" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
"ml_r" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))))
"ml_l" = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2)),
"ml_m" = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2)),
"ml_r" = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2)))
if (score == "IV-type") {
param_grid[["ml_g"]] = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2)))
param_grid[["ml_g"]] = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2))
tune_settings[["measure"]][["ml_g"]] = "regr.mse"
}

Expand Down Expand Up @@ -175,15 +175,15 @@ patrick::with_parameters_test_that("Unit tests for tuning of PLIV (multiple Z)",
n_rep = n_rep)

param_grid = list(
"ml_l" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
"ml_m" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
"ml_r" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.01, upper = 0.02),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))))
"ml_l" = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2)),
"ml_m" = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2)),
"ml_r" = paradox::ps(
cp = paradox::p_dbl(lower = 0.01, upper = 0.02),
minsplit = paradox::p_int(lower = 1, upper = 2)))

double_mlpliv_obj_tuned$tune(param_set = param_grid, tune_settings = tune_settings, tune_on_folds = tune_on_folds)
double_mlpliv_obj_tuned$fit()
Expand Down
8 changes: 4 additions & 4 deletions tests/testthat/test-double_ml_plr_exception_handling.R
Original file line number Diff line number Diff line change
Expand Up @@ -167,10 +167,10 @@ test_that("Unit tests for deprecation warnings of PLR", {
regexp = msg)

par_grids = list(
"ml_g" = paradox::ParamSet$new(list(
paradox::ParamInt$new("num.trees", lower = 9, upper = 10))),
"ml_m" = paradox::ParamSet$new(list(
paradox::ParamInt$new("num.trees", lower = 10, upper = 11))))
"ml_g" = paradox::ps(
num.trees = paradox::p_int(lower = 9, upper = 10)),
"ml_m" = paradox::ps(
num.trees = paradox::p_int(lower = 10, upper = 11)))

msg = paste0("Learner ml_g was renamed to ml_l.")
expect_warning(dml_obj$tune(par_grids),
Expand Down
18 changes: 9 additions & 9 deletions tests/testthat/test-double_ml_plr_tuning.R
Original file line number Diff line number Diff line change
Expand Up @@ -79,17 +79,17 @@ patrick::with_parameters_test_that("Unit tests for tuning of PLR:",
resolution = 5)

param_grid = list(
"ml_l" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.02, upper = 0.03),
paradox::ParamInt$new("minsplit", lower = 1, upper = 2))),
"ml_m" = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.03, upper = 0.04),
paradox::ParamInt$new("minsplit", lower = 2, upper = 3))))
"ml_l" = paradox::ps(
cp = paradox::p_dbl(lower = 0.02, upper = 0.03),
minsplit = paradox::p_int(lower = 1, upper = 2)),
"ml_m" = paradox::ps(
cp = paradox::p_dbl(lower = 0.03, upper = 0.04),
minsplit = paradox::p_int(lower = 2, upper = 3)))

if (score == "IV-type") {
param_grid[["ml_g"]] = paradox::ParamSet$new(list(
paradox::ParamDbl$new("cp", lower = 0.015, upper = 0.025),
paradox::ParamInt$new("minsplit", lower = 3, upper = 4)))
param_grid[["ml_g"]] = paradox::ps(
cp = paradox::p_dbl(lower = 0.015, upper = 0.025),
minsplit = paradox::p_int(lower = 3, upper = 4))
}

double_mlplr_obj_tuned$tune(param_set = param_grid, tune_on_folds = tune_on_folds, tune_settings = tune_sets)
Expand Down

0 comments on commit e631592

Please sign in to comment.