首先区分两个概念:‘模型评估’ 与 ‘模型性能度量’
- 模型评估:这里强调的是如何划分和利用数据,对模型学习能力的评估,重点在数据的划分方法。 Keywords: 划分、利用数据
- 模型性能度量:是在研究模型对具体问题上的性能,如分类问题,回归问题…等。 参考之前的介绍 Keywords: 具体问题的性能
这部分要讨论的问题是模型评估,根据上面定义的研究范围,模型评估就是在讲怎么划分和使用数据,首先,为什么要划分数据? 答:机器学习模型需要通过数据来自动地学习和发现数据中的规律,我们把用来学习的数据称为训练数据集(Training Set),用来考试的(测试的)称为测试数据集(Test Set)。因此,给了一堆数据,我们就应该合理划分出训练集和测试集,至于怎么划分才算合理,就是这部分的重点了。
一、 留出法(简单交叉验证)
直接将数据集随机地分为互斥的两部分(互相没有重复的两部分),一部分作为训练集,另一部分作为测试集。测试/训练集的划分尽量保持数据分布的一致性。其缺点:存在随机性,所以单次使用留出法的结果不够可靠和稳定,通常是取多次的均值。
二、K折交叉验证
将数据集划分为K个互斥的子集,每次取其中的K-1个子集作为训练集,剩下的1 个作为测试集,这样可以进行K次训练和测试。最终将K次测试的结果取平均值返回,作为最终的测试结果。