1700533320
由图可见,当召回率接近于0时,模型A的精确率为0.9,模型B的精确率是1,这说明模型B得分前几位的样本全部是真正的正样本,而模型A即使得分最高的几个样本也存在预测错误的情况。并且,随着召回率的增加,精确率整体呈下降趋势。但是,当召回率为1时,模型A的精确率反而超过了模型B。这充分说明,只用某个点对应的精确率和召回率是不能全面地衡量模型的性能,只有通过P-R曲线的整体表现,才能够对模型进行更为全面的评估。
1700533321
1700533322
除此之外,F1 score和ROC曲线也能综合地反映一个排序模型的性能。F1 score是精准率和召回率的调和平均值,它定义为
1700533323
1700533324
1700533325
1700533326
1700533327
(2.2)
1700533328
1700533329
ROC曲线会在后面的小节中单独讨论,这里不再赘述。
1700533330
1700533331
问题3 平方根误差的“意外”。
1700533332
1700533333
难度:★☆☆☆☆
1700533334
1700533335
Hulu作为一家流媒体公司,拥有众多的美剧资源,预测每部美剧的流量趋势对于广告投放、用户增长都非常重要。我们希望构建一个回归模型来预测某部美剧的流量趋势,但无论采用哪种回归模型,得到的RMSE指标都非常高。然而事实是,模型在95%的时间区间内的预测误差都小于1%,取得了相当不错的预测结果。那么,造成RMSE指标居高不下的最可能的原因是什么?
1700533336
1700533337
分析与解答
1700533338
1700533339
RMSE经常被用来衡量回归模型的好坏,但按照题目的叙述,RMSE这个指标却失效了。先看一下RMSE的计算公式为
1700533340
1700533341
1700533342
,
1700533343
1700533344
(2.3)
1700533345
1700533346
1700533347
其中,yi是第i个样本点的真实值,是第i个样本点的预测值,n是样本点的个数。
1700533348
1700533349
一般情况下,RMSE能够很好地反映回归模型预测值与真实值的偏离程度。但在实际问题中,如果存在个别偏离程度非常大的离群点(Outlier)时,即使离群点数量非常少,也会让RMSE指标变得很差。
1700533350
1700533351
回到问题中来,模型在95%的时间区间内的预测误差都小于1%,这说明,在大部分时间区间内,模型的预测效果都是非常优秀的。然而,RMSE却一直很差,这很可能是由于在其他的5%时间区间内存在非常严重的离群点。事实上,在流量预估这个问题中,噪声点确实是很容易产生的,比如流量特别小的美剧、刚上映的美剧或者刚获奖的美剧,甚至一些相关社交媒体突发事件带来的流量,都可能会造成离群点。
1700533352
1700533353
针对这个问题,有什么解决方案呢?可以从三个角度来思考。第一,如果我们认定这些离群点是“噪声点”的话,就需要在数据预处理的阶段把这些噪声点过滤掉。第二,如果不认为这些离群点是“噪声点”的话,就需要进一步提高模型的预测能力,将离群点产生的机制建模进去(这是一个宏大的话题,这里就不展开讨论了)。第三,可以找一个更合适的指标来评估该模型。关于评估指标,其实是存在比RMSE的鲁棒性更好的指标,比如平均绝对百分比误差(Mean Absolute Percent Error,MAPE),它定义为
1700533354
1700533355
1700533356
.
1700533357
1700533358
(2.4)
1700533359
1700533360
相比RMSE,MAPE相当于把每个点的误差进行了归一化,降低了个别离群点带来的绝对误差的影响。
1700533361
1700533362
·总结与扩展·
1700533363
1700533364
本小节基于三个假想的Hulu应用场景和对应的问题,说明了选择合适的评估指标的重要性。每个评估指标都有其价值,但如果只从单一的评估指标出发去评估模型,往往会得出片面甚至错误的结论;只有通过一组互补的指标去评估模型,才能更好地发现并解决模型存在的问题,从而更好地解决实际业务场景中遇到的问题。
1700533365
1700533366
1700533367
1700533368
[
上一页 ]
[ :1.70053332e+09 ]
[
下一页 ]