本章中讨论如何衡量模型的好坏。
均方误差:用于判断回归任务的学习器(算法模型的实例)好坏,计算方式为
其中$y_i$是正确值
错误率/精度:错误率是分类错误的样本数占样本总数的比例,精度则是分类正确的样本数占样本总数的比例
查准率/查全率的概念 查准率(P)和查全率(R)的定义为:
P-R曲线 适用于二分分类学习器。学习器的预测结果为一个实数,学习器的工作方式是选择一个阈值,高于和低于的分为两类。
P是查准率,R是查全率,要研究这种结果的模型可以使用PR曲线
PR图的做法是先通过学习器,预测得到所有样本的预测结果(对于二分分类这通常是一个实数),然后对结果从高到低排序,再从高到低逐个取样本的预测值为阈值(大于该值为正,小于为负),使用以上的公式即可得到这个阈值下的查准率P和查全率R,绘制在以R为x轴,P为y轴的坐标图上。取遍所有预测值为阈值后,具体图形如下所示
![68747470733a2f2f692e6c6f6c692e6e65742f323031382f31302f31372f356263373164616663343431312e706e67.png](<https://s3-us-west-2.amazonaws.com/secure.notion-static.com/5f200649-00dc-42d9-b113-29ebe0cce5a9/68747470733a2f2f692e6c6f6c692e6e65742f323031382f31302f31372f356263373164616663343431312e706e67.png>)
P-R图的评估方法是:
> 若一个学习器A的P-R曲线被另一个学习器B的P-R曲线完全包住,则称:B的性能优于A。若A和B的曲线发生了交叉,则谁的曲线下的面积大,谁的性能更优。但一般来说,曲线下的面积是很难进行估算的,所以衍生出了“平衡点”(Break-Event Point,简称BEP),即当P=R时的取值,平衡点的取值越高,性能更优。
F!
>
F1 F1是F-Measure方法的一种。F-Measure的值是P和R的加权调和平均,当F为1的时候,得的F1值为PR的调和平均。F1较高的时候,模型的性能越好。
<aside> 💡 值得注意的是,一般一个数据集做二分分类,只有一个PR图,如果有多个数据集,那么估算全局性能的话有两种方法。
一种是先算出没个数据集的混淆矩阵的TP、FP、TN、FN,取平均,再来计算PR,进而求出F1
第二种是算出每个的P和R,取平均,从而算出F1。
具体方法如下:
</aside>
ROC研究的参数为TPR和FPR,其定义如下:
![68747470733a2f2f692e6c6f6c692e6e65742f323031382f31302f31372f356263373165643662656539312e706e67.png](<https://s3-us-west-2.amazonaws.com/secure.notion-static.com/4569e20d-32f0-41a6-bfee-b82da1a90b16/68747470733a2f2f692e6c6f6c692e6e65742f323031382f31302f31372f356263373165643662656539312e706e67.png>)
TPR又称真正例率,FPR称为假正例率。绘图方式同PR图。
![68747470733a2f2f692e6c6f6c692e6e65742f323031382f31302f31372f356263373165643735636566652e706e67.png](<https://s3-us-west-2.amazonaws.com/secure.notion-static.com/f4c7f851-df57-4e20-8bf7-b1e17fcc3696/68747470733a2f2f692e6c6f6c692e6e65742f323031382f31302f31372f356263373165643735636566652e706e67.png>)
其中ROC曲线的(0,1)点,说明此时正例的值全部大于反例的值,即完全正确。所以曲线越凸向(0,1)效果越好。
AUC是ROC曲线如上图围成的阴影面积,由于ROC曲线真正的样子如[右图](<https://ripple-toaster-d51.notion.site/21e5e4eab1db419d880add2cc6fab74a>),为离散的点用直方线连接起来,所以面积是可求的:
![68747470733a2f2f692e6c6f6c692e6e65742f323031382f31302f31372f356263373165643665326335372e706e67.png](<https://s3-us-west-2.amazonaws.com/secure.notion-static.com/4f88a1b8-6d3f-46f0-bc5d-b0fcf982b48f/68747470733a2f2f692e6c6f6c692e6e65742f323031382f31302f31372f356263373165643665326335372e706e67.png>)
我们可以通过正例概率代价 (理解为得到正例的代价)* 归一化代价(理解为犯错的代价)得出总体代价
因此,可以通过画图求面积的方式得到总体的代价为多少。画法见下截图: