我是一名新手,目前正在从事数据科学简介的项目.在我的项目中,我需要使用GridSearchCV调整超参数,以找到KNN模型的最佳K值.然而,有一个问题让我和我的同事感到困惑,即在执行该过程时是使用整个数据集(X,y)还是仅使用训练子集(X_train,y_train).
- Using the entire dataset:一些人认为,利用整个数据集进行gridsearchcv.fit(X,y)可以最大化可用于训练的数据,这可能会更准确地确定KNN模型的最佳K值.
- Using only the training set:其他人建议仅使用gridsearchcv.fit(X_train,y_train)的训练数据,认为这种方法可以防止数据从不可见的测试集中泄露.由于GridSearchCV执行交叉验证,因此应保留测试集来判断最终模型.
就我个人而言,我try 仅使用GridSearchCV的训练集,因为我认为有必要仅为最后一步保留测试数据.您能否澄清这个问题以及哪种方法更适合使用GridSearchCV调整KNN超参数?谢谢!