怎么对模型的好坏进行评价,对机器学习的泛化能力进行提高,增强泛化能力。
泛化能力:对训练后的数据进行分类,得到的性能和指标
不好获取所有的样本,所有的模型泛化能力的评估。一个准确的泛化能力的评估,把所有的西瓜收集过来进行预测得到的结果是一个精确的结果。但是实际情况中不可能实现,不可能搜集到一个问题所有的样本,用一个测试集上的数据来对所有未知样本的一个抽样,用测试集合对模型进行评估,得到一个测试性能,用测试性能得到泛化性能。
泛化性能是终极目标,但是不能做到,不能收集所有的样本。用有限的测试集得到所有未知样本的抽样,在测试集上面进行模型的评估。
得到的测试性能非常依赖测试集的数据,不同的测试集得到的数据的测试性能是不一样的,所以用什么样的测试集来进行测试是一个值得思考的问题。让泛化性能近似等于测试性能。
确定一个实验方法进行测试性能的评估,能够比较好的估计泛化性能。设置一个性能度量的指标,用什么指标来量化说明模型的好坏。
训练集数据越丰富,训练过程当中得到的效果更好,减少过拟合,训练集要尽可能多,但是测试集也不能太少。
测试集占有比较小的比例,1/5或者1/3
- 训练集比测试集多
- 测试集占比1/5或者1/3
- 训练集和测试集一定是互斥的,没有交集
训练集进行变化,测试集也进行变化,得到的训练结果就会变化,训练结果对测试集有着依赖。
留出法:
保持数据的分布一致性,分层采样??不是很懂什么意思
多次重复划分,100次随机划分
测试集不能太大或者太小
k-折交叉验证(留一法)