首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何腌制TPOT安装的管道?

如何腌制TPOT安装的管道?
EN

Stack Overflow用户
提问于 2021-12-14 15:30:32
回答 1查看 127关注 0票数 2

我正在使用TPOT分类器,在对模型进行训练之后,我想保存最好的管道;我可以使用它。

代码语言:javascript
复制
model.fitted_pipeline_

这是其中一个产出的例子:

代码语言:javascript
复制
Pipeline(steps=[('extratreesclassifier',
                  ExtraTreesClassifier(criterion='entropy', max_features=0.1,
                                       min_samples_split=8))])

但是,当我试图使用joblib.dump对这个对象进行分类时,我会得到以下错误:

代码语言:javascript
复制
pickle.PicklingError: Can't pickle <class 'tpot.operator_utils.ExtraTreesClassifier__bootstrap'>: it's not found as tpot.operator_utils.ExtraTreesClassifier__bootstrap

因此,问题是:我如何才能腌制经过训练的管道?提前感谢!

如果这可能会影响:培训在类中,并使用train()方法调用,则从该方法返回管道,另一个则进行转储。我不能通过设计约束来改变这个结构。

EN

回答 1

Stack Overflow用户

发布于 2022-05-26 05:30:25

尝试在已安装的管道中使用steps属性。

以下是代码:

代码语言:javascript
复制
model = model.fitted_pipeline.steps[-1][1]
joblib.dump(model, "/path/to/pickle")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70351437

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档