问题描述
我想部署使用mlr创建的机器学习模型。因此,我尝试使用载波::: crate()函数包装学习模型的预测变量:
predictor <- carrier::crate(
function(data){
predict(object = model,newdata = data)},model = model)
通常这似乎可行,但是当我在未安装mlr的目标环境上执行代码时,出现以下错误:
Error in UseMethod("predict"): no applicable method for 'predict' applied to an object of class "WrappedModel"
经过一些调查,我发现在使用mlr的学习环境中,predict()的类为
class(predict)
# [1] "nonstandardGenericFunction"
# attr(,"package")
# [1] "methods"
而在没有mlr的预测环境中,
class(predictor)
# [1] "function"
所以mlr似乎以一种我不了解的方式改变了预测功能。
是否有一种方法可以将“经mlr调整”的预测功能从当前环境传送到另一个环境?最终,这样的事情(行不通)会帮助我
predictor <- carrier::crate(
function(data){
my_predict(data) -> p
return(p)},model = model,my_predict(data) = predict(object = model,newdata = data))
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)