需要满足多个评价指标时如何选择最优算法

前言

在使用机器学习,通常都会面对一种情况,

面对众多的算法和众多的性能指标,究竟应该如何来选择最优的算法。本篇文章主要就是介绍,如何利用单一评估指标来选择模型,主要内容来自于deeplearnai视频教程。

单一评估指标

需要满足多个评价指标时如何选择最优算法

应用机器学习主要可以分为三个过程想法、编码、看效果。当最开始面对一个需要解决的问题时候,我们往往都会有一个想法,然后根据我们的想法来进行编码,再来看算法的效果。为了优化算法的性能指标我们会产生一些新的想法,然后再进行编码,再如此循环。

下面通过一个例子来说明查准率和查全率,假设我们有一个猫狗分类器,一共有100张图片,其中猫和狗的图片各占50占,预测结果用一个表格说明。

需要满足多个评价指标时如何选择最优算法

上表表示的是其实是一个混淆矩阵,对角线表示的是预测的类标和真实的类标是一致的。这里将猫被称为正例,狗被称为反例。50张猫的图片,有30张图片预测正确也就是真正例(TP),还有20张猫的图片被预测成了狗也就是假反例(FN)。50张狗的图片,有40张图片被正确的预测了也就是真反例(TN),还有10张狗的图片被预测称为了猫也就是假正例(FP)。

查准率(precision):也被称为精准度,计算公式如下

需要满足多个评价指标时如何选择最优算法

查准率

查全率(recall):也被称为召回率,计算公式如下

需要满足多个评价指标时如何选择最优算法

查全率

查准率其实就是对于某一类预测结果,预测正确所占的比例。查准率追求的是预测结果的准确性。而查全率就是对于某一类预测结果,正确找出该类图片所占的比例。查全率追求的是预测结果的全面性。

起初我们有一个猫和狗的分类器A,分类器A的查准率(precision)为95%查全率(recall)为90%。通过调参和优化模型的算法后,我们获得了一个猫狗分类器B,分类器B的查准率(precision)为98%,查全率(reacall)为85%

此时面对分类器A和B的时候,我们就会遇到一个问题,到底应该选择哪个分类器?对于精准度而言分类器B的性能要高于分类器A,对于召回率而言分类器A的性能又要优于分类器B。所以这时我们就不知道应该选择哪一个分类器了。

单一评估指标:就是指当遇到上面的这种情况时,我们只需要从查准率和查全率中选择一个指标进行评价即可,可以根据不同指标的不同特性来选择适合于自己系统的指标。如果想同时兼顾查准率和查全率时,可以使用F1 score。通过上表可以发现,通过F1 score我们可以很快就挑选出分类器A要由于分类器B。

F1 socre的计算公式如下:

需要满足多个评价指标时如何选择最优算法

F1分数

其中P代表查准率,R代表查全率,通过F1 score就可以平衡查准率和查全率的评价指标。F1 score也被称为查准率和查全率的调和平均数。

在有些时候,我们可能会遇到下面这种情况

需要满足多个评价指标时如何选择最优算法

有时候可能会遇到,对于一个算法而言,需要考察多个不同的指标,这时候我们可以考虑采用多个不同指标的平均值,如果对于某些指标的要求会比较高,这时可以通过调节这些指标所占的权重,来突出这些指标的重要性


最后,给大家推荐一个非常好的学习人工智能相关知识的平台——微信小程序“八斗问答”,有不懂的问题可以在上面进行免费提问,还有大咖会进行详细解答,还可以与大咖一对一咨询。我现在也已经入驻了“八斗问答”,以后的文章在上面也会同步更新,有不懂的地方欢迎来咨询。


分享到:


相關文章: