通俗易懂彻底理解训练集,验证集,测试集
概念理解:
首先顾名思义的进行理解:
- 训练指参与了反向传播,对神经网络参数本身有调整的,叫训练。相当于书上的典型例题。做完以后必须对答案弄懂弄透的那种,主要功能是学习知识本身。
- 验证指的是检验成果,验证从词义本身理解,如人脸验证,指纹验证,往往是可以多次进行的。相当于模拟考试,一般有很多轮模考。这些模拟考试中的模拟题有答案但没有详细的解法,只用来评分但不用来学习知识,为的是验证之前的学习效果。由于题量即训练集样本的数目是固定的,大家拿到的题目无论是内容还是数目都一模一样,成绩的好坏在于做题的方法。所以在神经网络训练中验证集主要是用来调整超参数,即通过模考调整学习方法,淘汰掉那些直接背答案的不具有泛化能力的学习方法,通过模考不断调整学习方法真正吸收知识做到举一反三的效果。
- 测试集则相当于高考,只有一次,谁都不能提前知道高考题,考了多少就是多少。
- 验证和测试的区别在于验证是可以多次进行的,而测试是一锤定音的。为了高考能考好,在考前不断地做模考来调整自己的学习方法。
信息泄露:
由于测试集的特点在于在高考前没有人能够知道高考题。如果使用测试集即高考题反复调整学习方法即超参数,最后又使用相同的题目作为最终评价标准。就相当于提前获得了高考题,然后用高考题作为模拟题不断调整学习方法,获得一个最好成绩以后又去考一模一样的题,自然不能客观评价该学习方法的好坏。比如你通过泄题知道今年高考几何考很难,然后你对几何的学习就更加细致,最后果然取得了好成绩,这