基于超参数k的特征选择对比:KNN分类器性能比较疑问
关于KNN特征选择与超参数调优的性能对比方案
- 如果你的目标是精准对比特征选择本身的效果(排除超参数变化的干扰),必须用相同的超参数值:
也就是你在无特征选择的训练集上调出来的最优超参数(比如K值、距离度量方式),直接套用到做了特征选择的数据集上评估。这样唯一的变量就是“是否做特征选择”,得到的性能差异才能明确归因为特征选择的作用。 - 如果你的目标是对比两种方案的最终最优性能(即让两种场景都发挥出最佳潜力),那必须在特征选择后的数据集上重新调优超参数:
特征选择会改变数据的特征空间,原来的最优超参数可能不再适配新的特征组合。比如原来K=5是最优,但特征选择后冗余特征被去掉,可能K=3才是最优。重新调优后得到的性能,才是“特征选择+适配超参数”这个完整方案的真实最佳水平,和“无特征选择+最优超参数”的性能对比,才是两种完整流程的公平较量。
结合你已划分好训练/验证/测试集的情况:
- 第一种场景:用无特征选择的训练集调超参数,拿到最优值后,分别在两组验证/测试集(有无特征选择)上跑模型,对比结果。
- 第二种场景:先跑完无特征选择的完整流程(调参+测试)拿到性能P1;再对训练集做特征选择,用这个新训练集调参,再用对应特征选择后的测试集测性能P2,最后对比P1和P2。
注意:一定要先明确你的对比目标,选对应方案,不然结果会有误导性——比如想测特征选择的作用却重新调参,那性能变化可能是超参数和特征选择共同导致的,没法单独归因。
内容的提问来源于stack exchange,提问作者user22094125
相关产品推荐
相关产品推荐

