首页 文章

使用GridSearch进行sklearn交叉验证

提问于
浏览
0

问题是:当我使用GridSearch时,我需要做一些事情来进行交叉验证过程吗?

我知道的事情:

1.-我可以设置一个评分函数(但不是很清楚如何做到这一点,至少对我而言)

2.-如果我没有将'cv'参数传递给GridSearch类,那么它使用默认的3倍交叉验证 .

GridSearch究竟对我传递的数据做了什么?,所有数据都用在列车中,还是在列车内部拆分并测试数据?

谢谢!

PD:似乎我的分类器过度拟合,因为得分为100%,但新数据没有很好的结果 .

1 回答

  • 1

    请看GridSearchCV documentation . 它详细描述了您想要的一切 .

    GridSearch将在给定的参数值上训练给定的估计量,并找到在列车数据上给出最高(或最低,如果使用损失函数)得分的参数 .

    GridSearchCV 将在内部进行交叉验证 . 估计器的参数可以在 GridSearchCV 中与 param_grid 参数一起提供 .

    对于您的查询:

    • Scoring - 您可以传递任何可用的字符串on this page(取决于您的分类器) . 或者你可以通过make_scorer传递自己的自定义得分手 .

    • CV - 同样的cv . 您可以为多次折叠交叉验证或cv对象传递数字 . 您可以在this page查看可用的cv迭代器 .

相关问题