Skip to content

disappearing dependencies when cloning #356

Open
@be-marc

Description

When a graph learner is deep cloned, the dependencies in the parameter set disappear in the original and cloned learner.

library("mlr3")
library("mlr3pipelines")
library("paradox")

graph_learner = GraphLearner$new( lrn("classif.rpart"))
graph_learner$param_set$add_dep("classif.rpart.cp", "classif.rpart.keep_model", CondEqual$new(TRUE))

graph_learner$param_set$deps
# >                 id                       on           cond
# > 1: classif.rpart.cp classif.rpart.keep_model <CondEqual[9]>

graph_learner_2 = graph_learner$clone(deep = TRUE)

graph_learner_2$param_set$deps                                                                                      
# > Empty data.table (0 rows and 3 cols): id,on,cond

graph_learner$param_set$deps                                                                                         
# > Empty data.table (0 rows and 3 cols): id,on,cond

Normal learners are not affected.

library("mlr3")
library("mlr3pipelines")
library("paradox")

learner = lrn("classif.rpart")
learner$param_set$add_dep("cp", "keep_model", CondEqual$new(TRUE))
learner$param_set$deps

# >    id         on           cond
#> 1: cp keep_model <CondEqual[9]>

learner_2 = learner$clone(deep = TRUE)

learner_2$param_set$deps

# >    id         on           cond
#> 1: cp keep_model <CondEqual[9]>

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions