1.模型评估 (Model Assessment)
笔记来源于《白话机器学习的数学》
我们训练好模型后,要对知道这个模型到底好不好,定量描述这个模型好坏就是模型评估
把获取的全部训练数据分成两份:一份用于测试,一份用于训练。然后用前者来评估模型。大多数情况会采用 3 : 7 或者 2 : 8 这种训练数据更多的比例
把全部训练数据分为测试数据和训练数据的做法称为交叉验证
假如我们要进行 4 折交叉验证,那么就会这样测量精度
不切实际地增加 K 值会非常耗费时间,所以我们必须要确定一个合适的 K 值
1.1 回归问题的验证
对于回归的情况,只要在训练好的模型上计算测试数据的误差的平方,再取其平均值就可以了。(其实是个误差函数,回归问题的目标函数也是误差函数)
测试数据有 n 个,则均方误差(MSE)
MSE越小,精度就越高,模型也就越好
除了MSE外,还有均方根误差(RMSE)、平均绝对误差(MAE)、均方根对数误差(RMSLE)等
1.2 分类问题的验证
精度(Accuracy)
表示在整个数据集中,被正确分类的数据 TP 和 TN 所占的比例,得到精度基本可以掌握分类结果的整体的精度了
精确率(Precision)(以TP为主)
在被分类为 Positive 的数据中,本来就是 True 的数据所占的比例
精确率(Precision)(以TN为主)
召回率(Recall)(以TP为主)
在True数据中,实际被分类为 Positive 的数据所占的比例
召回率(Recall)(以TN为主)
怎么选择用以TP为主的精确率和召回率还是用以TN为主的?
当数据不平衡时,使用数量少的那个会更好
如果 Positive 少,就使用 TP为主的
如果 Negative 少,就使用 TN为主的
通常情况下精确率和召回率会一个高一个低,需要我们取舍,有些麻烦
F1值
精确率和召回率的调和平均值
带权重的F值
β
\beta
β为权重,权重为1时就是上式