你了解如何评估模型吗?
点击上方“小白学视觉”,选择加"星标"或“置顶”
重磅干货,第一时间送达
本文转自:机器学习算法工程师
在不同的任务进行评估时,都需要不同的指标进行评估,本文主要给大家简单介绍评估方法。
准确率
准确率是指分类正确的样本占总样本数的比例,即
准确率是分类问题中直观的评价指标。但是当负样本占比比较高时,这时候分类器要是把所有样本都预测为负样本,他就更容易获得更高的分数,这也说明了当样本占比不均匀时,此时准确率作为评估指标会对结果有影响。那么怎么解决呢,可以通过平均准确率,即计算每个类别下的样本的准确率的算术平均。
精确率和召回率的权衡
精确率是指分类正确的正样本个数占分类器判定为正样本的样本个数的比例。
排序问题中,通常采用TopN的结果作为模型预测的正样本, 然后在计算其Precision和Recall。而Precision和Recall是矛盾又统一的指标,为了提高Precision,这时候,分类器要更有把握时才把样本预测为正样本,就会导致会过滤掉一些分数低一点的正样本,从而导致Recall值降低。
P-R曲线
所以为了更好的评估一个模型的好坏,可以通过P-R曲线。
P-R曲线横轴是召回率(Recall),纵轴是精确率(Precision),对一个排序模型来说,曲线上的一个点代表某阈值下将大于阈值的结果判定为正样本,小于阈值的判定为负样本,此时返回结果对应的召回率和精确率,整个曲线通过将阈值从高到低移动生成,如下图:
由图可见,随着召回率的升高,模型A精确率下降并没有B那么快,只用曲线某个点不能全面衡量模型的性能,需要通过曲线的整体表现。
ROC曲线
ROC曲线经常被用作为二值分类器最重要的指标之一。其横坐标为假阳性率(FPR),纵坐标为真阳性率(TPR),他们的计算公式如下
其中,P是真实的正样本的数量,N是真实的负样本的数量,TP是P个正样本中被分类器预测为正样本的个数,FP是N个负样本中被分类器预测为正样本的个数。
通过动态调整阈值(区分正负预测结果的阈值),每个阈值都对应一个FPR和TPR,在ROC曲线上对应一个点,连接所有点就得到ROC曲线,如下图:
ROC曲线与P-R曲线区别
那么ROC曲线和P-R曲线有什么区别呢?
当正负样本分布发生变化时,ROC曲线的形状基本保持不变,而P-R曲线的形状一般发生较剧烈的变化,如下图,c和d是将测试集中负样本数量增加10倍后的曲线图,可以看出ROC曲线形状基本不变,这让ROC曲线能够降低不同测试集带来的干扰,客观衡量模型本身性能,不受正负样本不均匀的影响。
下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。
下载2:Python视觉实战项目52讲
在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。
下载3:OpenCV实战项目20讲
在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。
交流群
欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~
你了解如何评估模型吗?相关推荐
- R语言构建随机森林模型randomForest分类模型并评估模型在测试集和训练集上的效果(accuray、F1、偏差Deviance):随机森林在Bagging算法的基础上加入了列采样(分枝特征随机)
R语言构建随机森林模型randomForest分类模型并评估模型在测试集和训练集上的效果(accuray.F1.偏差Deviance):随机森林在Bagging算法的基础上加入了列采样(分枝特征随机) ...
- R语言构建xgboost文本分类模型(bag of words):xgb.cv函数交叉验证确定xgboost模型的最优子树个数、交叉验证获取最优子树之后构建最优xgboost模型并评估模型文本分类效能
R语言构建xgboost文本分类模型(bag of words):xgb.cv函数交叉验证确定xgboost模型的最优子树个数.交叉验证获取最优子树之后构建最优xgboost模型并评估模型文本分类效能 ...
- R语言基于Bagging算法(融合多个决策树)构建集成学习Bagging分类模型、并评估模型在测试集和训练集上的分类效果(accuray、F1、偏差Deviance):Bagging算法与随机森林对比
R语言基于Bagging算法(融合多个决策树)构建集成学习Bagging分类模型.并评估模型在测试集和训练集上的分类效果(accuray.F1.偏差Deviance):Bagging算法与随机森林对比 ...
- R语言构建文本分类模型:文本数据预处理、构建词袋模型(bag of words)、构建xgboost文本分类模型、xgboost模型预测推理并使用混淆矩阵评估模型、可视化模型预测的概率分布
R语言构建文本分类模型:文本数据预处理.构建词袋模型(bag of words).构建xgboost文本分类模型.xgboost模型预测推理并使用混淆矩阵评估模型.可视化模型预测的概率分布 目录
- R语言构建logistic回归模型并评估模型:模型预测结果抽样、可视化模型分类预测的概率分布情况、使用WVPlots包绘制ROC曲线并计算AUC值
R语言构建logistic回归模型并评估模型:模型预测结果抽样.可视化模型分类预测的概率分布情况.使用WVPlots包绘制ROC曲线并计算AUC值 目录
- R语言构建logistic回归模型并评估模型:构建基于混淆矩阵计算分类评估指标的自定义函数、阳性样本比例(垃圾邮件比例)变化对应的分类器性能的变化、基于数据阳性样本比例选择合适的分类评估指标
R语言构建logistic回归模型并评估模型:构建基于混淆矩阵计算分类评估指标的自定义函数.阳性样本比例(垃圾邮件比例)变化对应的分类器性能的变化.基于数据阳性样本比例选择合适的分类评估指标 目录
- R语言构建logistic回归模型并评估模型:计算混淆矩阵、并基于混淆矩阵计算Accuray、Precision、Recall(sensitivity)、F1、Specificity指标
R语言构建logistic回归模型并评估模型:计算混淆矩阵.并基于混淆矩阵计算Accuray.Precision.Recall(sensitivity).F1.Specificity指标 目录
- R语言构建xgboost模型并评估模型(测试集、训练集每一轮):误分类率指标(misclassification rate)、logloss
R语言构建xgboost模型并评估模型(测试集.训练集每一轮):误分类率指标(misclassification rate).logloss 目录
- 评价对象检测模型的数字度量:F1分数以及它们如何帮助评估模型的表现
来源:DeepHub IBMA本文约2000字,建议阅读7分钟 本文为你介绍评价对象检测模型的数字度量. 介绍 使用精度和召回率评估目标检测模型可以为模型在不同置信度下的表现提供有价值的见解.类似地, ...
- 原创 | 这可能是比房子更保值的资产?七步法构建数据资产价值评估模型
作者:清华大数据软件团队 本文约2500字,建议阅读5分钟 "数据是资产"已经成为全球共识. 标签:数据资产 一.前言 在中国共产党十九届四中全会上,中央首次公开提出"健 ...
最新文章
- Linux C动态链接库实现一个插件例子
- 【总结整理】JQuery基础学习---DOM篇
- SQL Server 2005 Service Broker 初探
- JUnit:使用Java 8和AssertJ 3.0.0测试异常
- JavaIO流(2)--IO流原理、流的分类及节点流文件流操作
- The Book List
- python 取日期_python取出所有的日期
- 硬核!如何全面系统地自学 Java ?
- oracle中least()和greastest()函数的使用,其中还包含一些if...then..elseif的使用
- 基于麻雀算法优化的核极限学习机(KELM)分类算法 - 附代码
- 中国最好的论坛(未分类版)
- 程序员垃圾简历长什么样?
- 数据管理与数据库 大学课程_根据数据显示的50种最佳免费在线大学课程
- c语言分形程序,C语言实现分形图形
- woocommerce 新增一个订单状态
- Android性能优化之启动速度优化
- html5 摇骰子游戏,html5 canvas掷骰子(简单,学习基础canvas)
- MVC5-Scaffolder
- win8.1环境下硬盘安装centos6.5双系统
- 2015年9月20日