我们如何修复 a PipeOp
,$state
使其参数或配置从一开始就固定,并在训练和预测中保持不变。
task = tsk("iris")
pos1 = po("scale", param_vals =list(
center = T,
scale = T,
affect_columns = selector_name("Sepal.Width")))
pos1$state
pos1$state$center <- c(Sepal.Width = 0)
pos1$state$scale <- c(Sepal.Width = 2)
graph <- pos1 %>>% lrn("classif.xgboost", eval_metric = "mlogloss")
gl <- GraphLearner$new(graph)
gl$train(task)
gl$state
在上面的代码中,即使我尝试将它们分别固定为零和二(不确定我是否正确地这样做),参数center
和scale
from也会根据数据重新计算。po("scale")