From 53e1df8580aec0c28453124d71f75231eeca3413 Mon Sep 17 00:00:00 2001 From: be-marc Date: Fri, 8 Nov 2024 11:10:01 +0100 Subject: [PATCH] limit number of cores --- R/FilterBoruta.R | 11 +++++++++-- man/mlr3filters-package.Rd | 3 ++- man/mlr_filters_boruta.Rd | 12 ++++++++++++ tests/testthat/test_filter_regr.R | 4 ++-- 4 files changed, 25 insertions(+), 5 deletions(-) diff --git a/R/FilterBoruta.R b/R/FilterBoruta.R index e2df72f9..9c088dfb 100644 --- a/R/FilterBoruta.R +++ b/R/FilterBoruta.R @@ -10,6 +10,12 @@ #' The order of selected features is random. #' In combination with \CRANpkg{mlr3pipelines}, only the filter criterion `cutoff` makes sense. #' +#' @section Initial parameter values: +#' - `num.threads`: +#' - Actual default: `NULL`, triggering auto-detection of the number of CPUs. +#' - Adjusted value: 1. +#' - Reason for change: Conflicting with parallelization via \CRANpkg{future}. +#' #' @references #' `r format_bib("kursa_2010")` #' @@ -43,10 +49,11 @@ FilterBoruta = R6Class("FilterBoruta", doTrace = p_int(lower = 0, upper = 4, default = 0), holdHistory = p_lgl(default = TRUE), getImp = p_uty(), - keep = p_fct(levels = c("confirmed", "tentative"), default = "confirmed") + keep = p_fct(levels = c("confirmed", "tentative"), default = "confirmed"), + num.threads = p_int(lower = 1, default = 1) ) - param_set$set_values(keep = "confirmed") + param_set$set_values(keep = "confirmed", num.threads = 1) super$initialize( id = "boruta", diff --git a/man/mlr3filters-package.Rd b/man/mlr3filters-package.Rd index fe6b7cb9..1cf3424c 100644 --- a/man/mlr3filters-package.Rd +++ b/man/mlr3filters-package.Rd @@ -20,11 +20,12 @@ Useful links: } \author{ -\strong{Maintainer}: Michel Lang \email{michellang@gmail.com} (\href{https://orcid.org/0000-0001-9754-0393}{ORCID}) +\strong{Maintainer}: Marc Becker \email{marcbecker@posteo.de} (\href{https://orcid.org/0000-0002-8115-0400}{ORCID}) Authors: \itemize{ \item Patrick Schratz \email{patrick.schratz@gmail.com} (\href{https://orcid.org/0000-0003-0748-6624}{ORCID}) + \item Michel Lang \email{michellang@gmail.com} (\href{https://orcid.org/0000-0001-9754-0393}{ORCID}) \item Bernd Bischl \email{bernd_bischl@gmx.net} (\href{https://orcid.org/0000-0001-6002-6980}{ORCID}) \item Martin Binder \email{mlr.developer@mb706.com} \item John Zobolas \email{bblodfon@gmail.com} (\href{https://orcid.org/0000-0002-3609-8674}{ORCID}) diff --git a/man/mlr_filters_boruta.Rd b/man/mlr_filters_boruta.Rd index 4a62b499..7674d73b 100644 --- a/man/mlr_filters_boruta.Rd +++ b/man/mlr_filters_boruta.Rd @@ -12,6 +12,18 @@ Selected features get a score of 1, deselected features get a score of 0. The order of selected features is random. In combination with \CRANpkg{mlr3pipelines}, only the filter criterion \code{cutoff} makes sense. } +\section{Initial parameter values}{ + +\itemize{ +\item \code{num.threads}: +\itemize{ +\item Actual default: \code{NULL}, triggering auto-detection of the number of CPUs. +\item Adjusted value: 1. +\item Reason for change: Conflicting with parallelization via \CRANpkg{future}. +} +} +} + \examples{ \donttest{ if (requireNamespace("Boruta")) { diff --git a/tests/testthat/test_filter_regr.R b/tests/testthat/test_filter_regr.R index 48241e8d..d5fa6824 100644 --- a/tests/testthat/test_filter_regr.R +++ b/tests/testthat/test_filter_regr.R @@ -35,8 +35,8 @@ test_that("filters throw errors on missing values", { }) test_that("Errors for unsupported features", { - skip_if("ames_housing" %nin% mlr_tasks$keys()) - task = tsk("ames_housing") + skip_if("california_housing" %nin% mlr_tasks$keys()) + task = tsk("california_housing") filters = mlr_filters$mget(mlr_filters$keys()) # supported: numeric, integer