高考与机器学习训练测试

来源:互联网 发布:淘宝试用报名技巧 编辑:程序博客网 时间:2024/04/30 14:49

这里写图片描述

机器学习的一个前提是有大量的数据,机器学习的过程就是对这些大量数据进行学习训练,获得一个能用于预测的模型,从而在面对新的数据时,我们能进行准确的预测。

怎么理解呢?

回想我们读高三的时候,是不是每天都在做题,为最后的高考做准备。我们从题库中不断学习,不断做题,然后就掌握了各种知识和一些解题方法,最后在高考中取得好成绩,考上了清华北大,985,211。

机器学习的大量数据就好像是高三的题库,而对大量数据的学习就是针对题库中的各种题目进行做题训练,获得的训练模型就是我们掌握的知识和解题方法,新的数据就是高考,准确的预测就是在高考中取得好成绩。如果考上了清华北大,说明知识和解题方法掌握的好,也就是机器学习算法模型训练效果好,如果只是考上了二本、三本,说明知识和解题方法掌握的一般,也就是机器学习算法模型训练效果一般。

高三的这个题库就是用来训练我们的,对应在机器学习中的名称就是“训练集(training set)”,高考试卷就是用来测试我们的最终学习效果的,对应在机器学习中的名称就是“测试集(test set)”

注意上面加粗的部分“最终学习效果”,为什么?因为高考是一考定终生,你只能参加一次。当然现在可以复读,但复读的话就是一年的青春耗费,况且下一年高考发挥怎样并不知道,这个机会成本实在是太高。所以,我们在做题训练的过程中,有一个重要的手段,那就是:

模拟考试。

这个模拟考试还有好多次,有一模考试,二模考试,三模考试等。通过模拟考试,我们有了学习效果的反馈,不断查漏补缺,最后上了高考考场,就不慌了,可以从容应对了。

在机器学习中,“模拟考试”同样有一个对应的名称“验证集(validation set)”,在用训练集训练模型的过程中,不断通过验证集对模型进行验证,获得训练效果的反馈。于是,在最后用测试集进行测试时,就能取得满意的成绩。

那么在机器学习中,训练集、测试集、验证集从何而来呢?

前面提过,机器学习的一个前提是有大量的数据,这个大量数据就是高三题库,这个题库就可以作为我们的训练集。那测试集和验证集呢?

我们知道高考是由国家或省里专门的命题组出题的,而在机器学习中有点不同的是,出题人一般也就是组织训练的人,你可以理解为:高考出题人就是你们的高三老师

那高三老师怎么出高考题呢,他比较偷懒,还是直接用那个题库,把一小部分题目筛选出来,作为高考的试卷题目,也就是测试集(test set)。注意因为是高考试卷,要严格保密,不然犯法的。所以你平时做题训练时是看不到这些题目的,同样在机器学习中训练过程也是看不到测试集的。

然后刨除测试集后的题库,剩下的就是“训练集(training set)”了,也就是你平时做的各种训练题。然后高三老师在这个训练题的基础上,再划出一小部分,作为模拟考试的试卷题目,也就是“验证集(validation set)”。注意这个模拟考试的题目就是从你平时做题训练中的题目中选出来的,所以你平时做题训练时是可以接触到这些题目的,同样在机器学习中训练过程也是可以接触验证集的。由于验证集是从训练集中切分出来的,所以验证集属于训练集。而训练集和测试集统称为“数据集(data set)”,也就是那个高三题库。画出图就是这样:
这里写图片描述

最后总结下:

训练集 = 训练题库
验证集 = 模拟试卷
测试集 = 高考试卷

数据集 = 训练集(含验证集) + 测试集

参考文献:https://zhuanlan.zhihu.com/p/25992568

0 0