使用评分函数评估模型性能
兴许是年纪大了,对于深度学习中的一些概念,弄懂了,过一段时间就模糊了。因此决定抄书……
抄书就从最烦人的xx率开始
使用准确率、精确率、召回率对分类器进行评分
准确率:
accuracy_score,在测试数据集中(记住哦,都是在测试数据集中,后面就不写了),预测正确的数据点的数量除以测试集全部的数量。一个分类结果,非对即错,对的/全部,就是准确率。是分类器中最基本的评分函数。
精确率:
precision_score,这个书上讲的好绕口,我一定记不住。该分数俗称模型找的对的能力评估。其分母就不是全部测试数据集了。比如现在有一个分类器(整个复杂的),可以分类猫、狗、鸡、鸭四种动物,总共100张,分类器认为其中有30张有猫咪的图片,但是其中这30张中只有15张有猫咪,那么这个模型针对猫咪的精确率只有15/30,50%。该值的分母为针对某一类别,分类器认为对的之中真正对了的比例。叫精确率。
召回率:
recall_score,(再多来几个率,我就吐血),召回率,俗称找的全,也叫敏感率。这个分母是测试集中包含猫的数量,其中某些被分类器正确识别为猫咪。那么召回率=识别正确的猫咪数量 / 猫咪的总量。
一般来讲,精确率和召回率是一对冤家。这个比较好理解。召回率高,也就是说找的全,比如说有100张测试集,有一个分类器算法,认为这100张图片里面既有猫咪,又有狗狗,那当然了,召回率100%,但是精确率就惨的很,如果猫咪狗狗各占一半,那精确率只有50%。那么如果精确率高,比如分类器为了保证正确,就拿出30张来,认为其中有猫咪,如果识别对了28张,那么精确率确实很高,但召回率就会很低。
如果召回率和准确率都很高,比如100%,那么说明这个算法很牛。打得准,又打得全。
下一节再加深理解一下正样本,负样本,及真正、假正、真负、假负(正负,真假,四个词组合全了)这几个绕口的概念