【问题标题】:sklearn Crossvalidation with GridSearchsklearn 使用网格搜索进行交叉验证
【发布时间】:2017-06-19 22:56:25
【问题描述】:

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

我知道的事情:

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

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

GridSearch 到底对我传递的数据做了什么?所有数据都在火车中使用还是在火车和测试数据中拆分?

谢谢!

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

【问题讨论】:

    标签: python scikit-learn grid-search


    【解决方案1】:

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

    GridSearch 将在所有给定参数值上训练给定估计器,并找到在训练数据上给出最高(或最低,如果使用损失函数)分数的参数。

    GridSearchCV 将在内部对交叉验证做同样的事情。估计器的参数可以在 GridSearchCVparam_grid 参数中提供。

    对于您的查询:

    1. 评分 - 您可以传递任何可用的字符串on this page(取决于您的分类器)。或者您可以使用make_scorer 传递您自己的自定义记分器。
    2. CV - 与 cv 相同。您可以为那么多折叠交叉验证传递一个数字,也可以传递一个 cv 对象。您可以在this page 上查看可用的 cv 迭代器。

    【讨论】:

      猜你喜欢
      • 2015-09-18
      • 2015-06-11
      • 2021-12-11
      • 2021-11-24
      • 1970-01-01
      • 2018-10-02
      • 2019-09-29
      • 2013-12-13
      • 2015-11-04
      相关资源
      最近更新 更多