我试图在sklearn中设置一个GridSearchCV
,它使用一个TimeSeriesSplit
,在训练集上对数据进行规范化。我所做的是创建一个名为TransformerMixin
的DivisorTransform
,它获取规范化的除数并存储它。DivisorTransform
在Pipeline
之前实例化。在管道中,我设置DivisorTransform
(为了适合它),然后NormalizeTransformer
将DivisorTransform
作为输入并执行除法。但是,使用这个管道到GridSearchCV
中的变压器将被酸洗。这使得DivisorTransform
被酸洗并装配,然后NormalizeTransformer
被酸洗,但是拥有{DivisorTransform
再次被酸洗。这导致NormalizeTransformer
使用未安装的DivisorTransform
。
这里有一个例子
dt = DivisorTransform()
pipe = Pipeline([('divisor',dt),('normalize',NormalizeTransformer(dt))])
gridS = GridSearchCV(pipe,params={...},cv=TimeSeriesSplit())
如何将不同的规范化管理到GridSearchCV
?哪个是最佳实践?在
这里有一个python示例
^{pr2}$这是印刷品:
^{3}$这说明了问题所在
目前没有回答
相关问题 更多 >
编程相关推荐