您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在Scikit学习中将Smote与Gridsearchcv一起使用

在Scikit学习中将Smote与Gridsearchcv一起使用

是的,可以做到,但是可以使用Pipeline

您会看到,imblearn有自己的管道来正确处理采样器。我在一个类似的问题中对此进行了描述。

在对象predict()imblearn.Pipeline调用时,它将跳过采样方法,并保留将要传递给下一个转换器的数据。您可以通过在此处查看源代码来确认这一点]

        if hasattr(transform, "fit_sample"):
            pass
        else:
            Xt = transform.transform(Xt)

因此,要使其正常工作,您需要以下内容

from imblearn.pipeline import Pipeline
model = Pipeline([
        ('sampling', SMOTE()),
        ('classification', LogisticRegression())
    ])

grid = gridsearchcv(model, params, ...)
grid.fit(X, y)

根据需要填写详细信息,管道将处理其余的工作。

其他 2022/1/1 18:36:17 有522人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶