![人工智能程序员面试笔试宝典](https://wfqqreader-1252317822.image.myqcloud.com/cover/97/32463097/b_32463097.jpg)
2.2 性能度量
衡量模型泛化能力的评价标准就是性能度量,在对比不同模型的能力时,使用不同的性能度量往往会导致不同的评判结果。在性能度量时,回归问题和分类问题用的指标往往不同,所以需要分开讨论。
2.2.1 回归问题常用的性能度量指标有哪些
1)均方误差。
![](https://epubservercos.yuewen.com/5F7122/17526975206882706/epubprivate/OEBPS/Images/21_01.jpg?sign=1738848027-mhX3qUZ9T0HXqKziTsWPODd6ybWbWGXZ-0-93c0943cae3b405163220cd0e0d7c463)
2)Root Mean Squared Error(RMSE)均方根误差是观测值与真值偏差的平方和与观测次数m比值的平方根,用来衡量观测值同真值之间的偏差。
![](https://epubservercos.yuewen.com/5F7122/17526975206882706/epubprivate/OEBPS/Images/21_02.jpg?sign=1738848027-YNmjhOIMOFTcGpgYKmpga3oyMTSD0VNK-0-61b9b107b13bbf55f4bd31ec8536df39)
3)和方误差。
![](https://epubservercos.yuewen.com/5F7122/17526975206882706/epubprivate/OEBPS/Images/21_03.jpg?sign=1738848027-U53x4m6dU6piJMRyNUUJlBEiaDqNrgA6-0-77f89434ead572cb8845c1ae5e60bd26)
4)Mean Absolute Error(MAE)直接计算模型输出与真实值之间的平均绝对误差。
![](https://epubservercos.yuewen.com/5F7122/17526975206882706/epubprivate/OEBPS/Images/21_04.jpg?sign=1738848027-vOl6ILMN0HKyacaZ3ZZpQMM0ilEhJsbP-0-78c71672c6e0ffd64321cdb9d3bf159f)
5)Mean Absolute Percentage Error(MAPE)不仅考虑预测值与真实值的误差,还考虑了误差与真实值之间的比例。
![](https://epubservercos.yuewen.com/5F7122/17526975206882706/epubprivate/OEBPS/Images/21_05.jpg?sign=1738848027-PeJWfPjBIUFot8S5ld3KrgLckGSj9Y6b-0-9316300f6a2514c13038234fc4aaba2f)
6)平均平方百分比误差。
![](https://epubservercos.yuewen.com/5F7122/17526975206882706/epubprivate/OEBPS/Images/22_01.jpg?sign=1738848027-e3ze93f93vOP5Na8saSQI7XG6ohF1EIC-0-c05cc2bca1b515dc70ab9a599d2286a3)
7)决定系数。
![](https://epubservercos.yuewen.com/5F7122/17526975206882706/epubprivate/OEBPS/Images/22_02.jpg?sign=1738848027-R7FdSTn4upRg1aIRtiWEecEoy38K4myx-0-8a68814e2ce4d17fd3fcfcf8b1caa16d)
2.2.2 分类问题常用的性能度量指标有哪些
常用的性能度量指标有精确率、召回率、F1、TPR、FPR。
表2-1中TP表示正样本被预测为正样本(真正例,true positive)。
表2-1 TP、FN、FP和TN定义
![](https://epubservercos.yuewen.com/5F7122/17526975206882706/epubprivate/OEBPS/Images/22_03.jpg?sign=1738848027-Q1mdcEbHiCR7vnLQKFxicMV1PhzZM9kN-0-f0e8f4903f0b356426f370f3cc1414ee)
FN表示正样本被预测为负样本(假负例,false negative)。
FP表示负样本被预测为正样本(假正例,false positive)。
TN表示负样本被预测为负样本(真负例,true negative)。
精确率Precision=。
召回率Recall=。
真正例率即为正例被判断为正例的概率。
假正例率即为反例被判断为正例的概率。
精确率又称查准率,顾名思义适用于对准确率要求高的应用,例如网页检索与推荐。召回率又称查全率,适用于检测信贷风险信息、逃犯信息等。由于精确率与召回率是一对矛盾的度量,所以需要找一个平衡点,研究者们往往使用F1,F1是精确率与召回率的调和平均值:
![](https://epubservercos.yuewen.com/5F7122/17526975206882706/epubprivate/OEBPS/Images/22_08.jpg?sign=1738848027-yHFWiWs5na6dlVVXNTsmTLE6ac2eLzVq-0-3c9ff160cf7ddb82656387fabad4f995)
(1)错误率和准确率
错误率。
准确率acc=1-e。
(2)AUC与ROC曲线
对于0、1分类问题,一些分类器得到的结果并不是0或1,如神经网络得到是0.5、0.6等。此时就需要取一个阈值cutoff,那么小于cutoff的归为0类,大于等于cutoff的归为1类,可以得到一个分类结果。取不同的阈值,最后得到的分类情况也不同。
ROC曲线(Receiver Operational Characteristic Curve)是以False Positive Rate为横坐标,True Positive Rate为纵坐标的绘制的曲线。曲线的点表示了在敏感度和特殊性之间的平衡,例如越往左,也就是假阳性越小,则真阳性也越小。曲线下方的面积越大,则表示该方法越有利于区分两种类别。AUC即为ROC曲线所覆盖的区域面积。AUC值是一个概率值,当随机挑选一个正样本以及一个负样本,当前的分类算法根据计算得到的Score值将这个正样本排在负样本前面的概率就是AUC值。所以AUC值越大,当前的分类算法越有可能将正样本排在负样本前面,即能够更好的分类。而如果AUC=0.5,跟随机猜测一样(例如丢硬币),模型没有预测价值。如图2-1所示。
![](https://epubservercos.yuewen.com/5F7122/17526975206882706/epubprivate/OEBPS/Images/23_01.jpg?sign=1738848027-E5ZanmeLYqWbIxOs3hUYPJZxrkeUSf8G-0-37be46660281ba5edcbec11154692b2a)
图2-1 ROC曲线
ROC曲线的主要意义是方便观察阈值对学习器的泛化性能影响,所以有助于选择最佳的阈值。ROC曲线越靠近左上角,模型的查全率就越高。最靠近左上角的ROC曲线上的点是分类错误最少的最好阈值,其假正例和假反例总数最少。
代码如下:
![](https://epubservercos.yuewen.com/5F7122/17526975206882706/epubprivate/OEBPS/Images/23_02.jpg?sign=1738848027-xUPKDaVcqrkPh5KGubfGwXKNMAJ57o3o-0-ee12433cf15763b960954ac0fb4deda2)