(完全解决)Precision and F-score are ill-defined for being 0.0 in labels with no predicted samples.
首先,这个错误是在使用如下包才出现的。
from sklearn.metrics import classification_report,accuracy_score
然后,运行我的其他代码,警告如下:
UndefinedMetricWarning:
Precision and F-score are ill-defined and being set to 0.0 in labels with no predicted samples. Usezero_division
parameter to control this behavior._warn_prf(average, modifier, msg_start, len(result))
一开始没看懂在说什么,后来才发现:正如报错所说,你的模型的分类结果中有一类是没有被预测的,拿2分类来说,你的模型全部预测成了1或者0,就会报上述错误。例如:
实际标签 1,1,1,1,1,1,0,0
预测标签 0,0,0,0,0,0,0,0
先说解决办法,然后再说原因,由于原因比较冗长,所以如果你时间有限,看完解决办法就可以走了。
解决办法
老办法,警告并不是报错,我们选择屏蔽。在开头加上如下语句:
import warnings
warnings.filterwarnings("ignore")
原因
问题来了,我们的模型预测成1或者0关 sklearn
什么事呢?这是因为如果某个类别没有被预测,Macro-F1会有除0的操作,所以才警告你一下。强烈建议你看看Macro-F1的计算方式,因为这个太基础了。
请看,Micro-F1和Macro-F1详解。
我的情况如下:
大家可以根据我上面给的那篇文章分别计算一下两个类别的macro-f1,也就是上面两行,最后一列的support是指真实标签两类样本的数量。
至于macro avg就是上面两行相加除以二,也就是上面两行的权重各为0.5.
而weighted avg就是上面两行的权重各为类别比例,即58/100,42/100。
(完全解决)Precision and F-score are ill-defined for being 0.0 in labels with no predicted samples.相关推荐
- 报错分析:Precision and F-score are ill-defined for being 0.0 in labels with no predicted samples
NLP情感分析任务报错如下 UndefinedMetricWarning: Precision and F-score are ill-defined and being set to 0.0 in ...
- UndefinedMetricWarning: Precision and F-score are ill-defined and being set to 0.0 in labels with no
日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) print(classification_report(tes ...
- 程序运行出现 UndefinedMetricWarning: Precision and F-score are ill-defined and being set to 0.0 in labels
程序运行时出现以下问题·: UndefinedMetricWarning: Precision and F-score are ill-defined and being set to 0.0 i ...
- F score和ROC
数据的真实结果和预测结果如以下二联表所示,行为真实值,列为预测值. 真实阳性 真实阴性 预测阳性 TP FP 预测阴性 FN TN F score Fscore是precision和recall的调和 ...
- 分类模型性能评价指标:混淆矩阵、F Score、ROC曲线与AUC面积、PR曲线
以二分类模型为例:二分类模型最终需要判断样本的结果是1还是0,或者说是positive还是negative. 评价分类模型性能的场景: 采集一个称之为测试集的数据集: 测试集的每一个样本由特征数据及其 ...
- lingo 出现63. MODEL IS ILL DEFINED 解决办法
63. MODEL IS ILL DEFINED. CHECK FOR UNDEFINED INDICES AND/OR CONDITIONS IN EXPRESSION: EXPRESSION. 还 ...
- 解决git下载出现:Failed to connect to 127.0.0.1 port 1080: Connection refused拒绝连接错误
解决git下载出现:Failed to connect to 127.0.0.1 port 1080: Connection refused拒绝连接错误 文章目录: 一.git拒绝连接原因分析 二.错 ...
- 解决idea启动项目报错:Unable to open debugger port(127.0.0.1:60157):java.net.SocketExceptionsocket closed
转载自 解决idea启动项目报错:Unable to open debugger port(127.0.0.1:60157):java.net.SocketException"socket ...
- aidl远程服务调用Android,报错:Process 'command 'F:\Android\SDK\build-tools\29.0.0\aidl.exe''
aidl远程服务调用Android demo1: Alipay 支付App服务: 1.新建: Alipay\app\src\main\aidl\com\glsite\alipay\IAlipaySer ...
最新文章
- 《中国大数据产业白皮书及百强榜单》:一览中国大数据产业发展全局
- Android PathDashPathEffect 使用详解
- 提防iostream使用中的一个“陷阱”
- cutterman 导出html,电脑中如何使用cutterman插件
- 云炬随笔20171203
- 1028 List Sorting
- boost::hana::fill用法的测试程序
- java2的7次方怎么表示_静态市盈率要怎么看?
- RUNOOB python练习题44
- 关于 php 用webservice传输数据的问题(nosoap与.NET对接)此处一直困扰三天时间,终于解决...
- UIView 移除子视图
- oracle 表 队列,如何将复制队列表移出系统(SYSTEM)表空间
- 查看C#Dll的一个 工具 ILSpy
- Linux用户管理 (实验2)
- android apk旋转,系统的屏幕旋转弱爆了!超强屏幕旋转控制APP
- 2022北京工业互联网安全大赛初赛-wakeup
- nyoj366 D的小L 全排列模板题
- 调用百度AI开放平台实现图片文字识别
- 聊一下测试工程师的招聘
- 设备巡检的执行的痛点及解决方案