Scikit-learn 管道和 Compose 中的标签 (y) 类
Labels (y) in Scikit-learn Pipeline and Compose Classes
我目前的理解是,我们不能在使用 Pipeline 时直接 transform/retrieve y-labels
作为 (X,y)
传递。
最后的fit_transform
returns 转换仅在X
上通过,y
仅在涉及fit()
、[=17 的情况下使用=] 等等。
我的理解正确吗?
是否还有一种方法可以转换和检索 y
(包括使用自定义转换器删除实例时)而无需打破完全封闭的模型训练管道?
总的来说,您的理解是正确的。 Pipeline
对象用于顺序应用 X
的多个转换。来自 user guide:
Pipelines only transform the observed data (X
).
另请参阅 gloassary 关于术语转换的内容:
transform
In a transformer, transforms the input, usually only X
, into some transformed space (conventionally notated as Xt
).
在回归任务的情况下,有一个特殊的 TransformedTargetRegressor
处理转换目标 y
并且可以例如在管道的末端使用。
除此之外,没有规范的方法来控制管道中 y
的转换。
我目前的理解是,我们不能在使用 Pipeline 时直接 transform/retrieve y-labels
作为 (X,y)
传递。
最后的fit_transform
returns 转换仅在X
上通过,y
仅在涉及fit()
、[=17 的情况下使用=] 等等。
我的理解正确吗?
是否还有一种方法可以转换和检索 y
(包括使用自定义转换器删除实例时)而无需打破完全封闭的模型训练管道?
总的来说,您的理解是正确的。 Pipeline
对象用于顺序应用 X
的多个转换。来自 user guide:
Pipelines only transform the observed data (
X
).
另请参阅 gloassary 关于术语转换的内容:
transform
In a transformer, transforms the input, usually onlyX
, into some transformed space (conventionally notated asXt
).
在回归任务的情况下,有一个特殊的 TransformedTargetRegressor
处理转换目标 y
并且可以例如在管道的末端使用。
除此之外,没有规范的方法来控制管道中 y
的转换。