机器学习训练集/开发集/测试集挑选

在实际应用领域,一般将数据集分成三块,训练集:用来训练算法;开发集:用来进行特征选择或者调参;测试集:用来检测算法的表现,因此测试集应该能够反映和包含现实的真正数据分布,而不是假设分布。

在实际算法迭代过程中,我们最后希望得到的结果是算法在测试集上表现的非常优秀;但是,最近读吴恩达老师的笔记有时可能我们需要决定投资多少去获取好的开发集和测试集。切记不要假定你的训练集分布和测试集分布必须是一样的。尝试去挑选能反映你最终想要表现很好的数据作为测试样本,而不是你遇到的任何数据。

是的!我们需要的算法是能够准确预测出我们真正想知道结果我测试样本,而非遇到的任何数据;换个角度思考:通过这样的需求筛选,我们也能够进一步的强调我们的需求,从而更有目的性的去改善算法性能,受益匪浅!共勉!

猜你喜欢

转载自blog.csdn.net/zehui6202/article/details/80647710