4.1模型评估
1.由于像多重回归这样的问题会导致无法在图上展示,所以需要能够够定量地表示机器学习模型的精度。
4.2交叉验证
4.2.1回归问题的验证
1.把获取的全部训练数据分成两份:一份用于测试,一份用于训练。然后用前者来评估模型。
一般来说,比起 5 : 5,大多数情况会采用 3 : 7 或者 2 : 8 这种训练数据更多的比例。不过倒也没有特别规定必须要这样。
2.模型评估就是检查训练好的模型对测试数据的拟合情况。
3.对于回归的情况,只要在训练好的模型上计算测试数据的误差的平方,再取其平均值就可以了。假设测试数据有 n 个,那么可以这样计算。
这个值被称为均方误差或者 MSE,全称 Mean Square Error 。这个误差越小,精度就越高,模型也就越好。
4.2.2分类问题的验证
1.假设分类结果为正的情况是 Positive、为负的情况是 Negative。分类成功为 True、分类失败为 False。
下列表达式表示的是在整个数据集中,被正确分类的数据 TP 和 TN 所占 的比例。
用测试数据来计算这个值,值越高精度越高,也就意味着模型越好。
4.2.3精确率和召回率
1.假设图中的圆点是 Positive 数据、叉号是 Negative 数据,我们来考虑一下数据量极其不平衡的情况。
假设有 100 个数据,其中 95 个是 Negative。那么,哪怕出现模型把数据全部分类为 Negative 的极端情况,Accuracy 值也为 0.95, 也就是说模型的精度是 95%。
既然 Positive 相对少很多,那么即使模型把数据全 部分类为 Negative,它的精度也会很高。
2.所以需要引入新的指标,第一个指标——精确率。