【问题标题】:sklearn subset fitted pipeline - reuse for tranformsklearn 子集拟合管道 - 重用转换
【发布时间】:2020-06-23 16:30:42
【问题描述】:

我已经构建了一个包含几个步骤的管道,这需要一些时间来适应。对于调试,我希望能够检查该管道的子集(例如 {pipe step 1-3}.transform(X))。

我知道我可以使用 Pipe(pipe.named_steps[:3]) 来提取一个子集并从中构造一个新的管道。不幸的是,我必须在对其调用转换之前重新安装管道。

有没有办法避免改装?

【问题讨论】:

    标签: scikit-learn


    【解决方案1】:

    您可以通过像普通列表一样对其进行索引来访问Pipeline 对象的子部分,例如pipe[:3]。这将返回一个新的但不适合的 Pipeline 实例。不过有趣的是,它的组件是安装好的。

    因此,使用 scikit-learn 的 check_is_fitted 函数进行检查会引发错误。但是,您仍然可以致电pipe[:3].transform(X),如果您之前已经安装了整个管道,它仍然可以工作。

    【讨论】:

      猜你喜欢
      • 2015-09-07
      • 2018-02-16
      • 2020-12-20
      • 2016-02-01
      • 2018-01-09
      • 2020-10-05
      • 2017-01-17
      • 2021-09-01
      • 2017-12-29
      相关资源
      最近更新 更多