报错分析: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 labels with no predicted samples. Use zero_division
parameter to control this behavior.
如报错所说“ 你的模型的分类结果中有一类是没有被预测的 ”
同时:预测结果中,两个标签的预测结果精度为0
检查了一下我的数据集:训练集、测试集、验证集都包含情感标签0、1、2
训练集、测试机、验证集的数据比例为 6:2:2
按理来说不可能没有预测到
错误原因
------ 数据集没有打乱
打开数据集,发现我的数据标签分布基本上是:一大部分0,下面一大部分1,再往下一大部分2
就是因为这个引起问题
数据集需要随机分布,这样规规矩矩的便会出错
解决方法
方法1:python代码前加Random,将数据集打乱一下
方法2:本人JAVA用着相对熟练,因此使用JAVA将数据集一行行随机打乱,再将数据集放到Pycharm运行
JAVA代码如下:
public class randomLine {public static void main(String[] args){//获取要读取的文件File readFile=new File("D:/Progarmfile/IdeaProgarmfile/Utils/src/main/java/com/dwc/randomLine/input/FinNRES3/dev.txt");//获取要写入到的文件File outFile=new File("D:/Progarmfile/IdeaProgarmfile/Utils/src/main/java/com/dwc/randomLine/output/output.txt");//输入IO流声明InputStream in=null;InputStreamReader ir=null;BufferedReader br=null;//输出IO流说明OutputStream os=null;OutputStreamWriter osw =null;BufferedWriter bw=null;try {//用流读取文件in=new BufferedInputStream(new FileInputStream(readFile));os=new BufferedOutputStream(new FileOutputStream(outFile));//如果你文件已utf-8编码的就按这个编码来读取,不然又中文会读取到乱码ir=new InputStreamReader(in,"utf-8");osw=new OutputStreamWriter(os,"utf-8");//字符输入流中读取文本,这样可以一行一行读取br= new BufferedReader(ir);bw=new BufferedWriter(osw);String line="";ArrayList<String> arrayList=new ArrayList<>();//一行一行读取while((line=br.readLine())!=null){System.out.println(line);//存入到集合中,一行为一个元素arrayList.add(line);}System.out.println("=======================");//打乱集合的元素Collections.shuffle(arrayList);//遍历集合,并输出一下,跟一行一行的写入到b.txt文件中for (String s : arrayList) {System.out.println(s);bw.write(s);bw.newLine();}} catch (Exception e) {e.printStackTrace();}finally{//一定要关闭流,倒序关闭try {if(br!=null){br.close();}if(ir!=null){ir.close();}if(in!=null){in.close();}if(bw!=null){bw.close();}if(osw!=null){osw.close();}if(os!=null){os.close();}} catch (Exception e2) {}}}}
报错分析:Precision and F-score are ill-defined for being 0.0 in labels with no predicted samples相关推荐
- LoadrRunner报错-Error: The table 'F:\测试脚本\loadrunner\toutTest3\NewParam.dat' does not exist.
LoadrRunner报错-Error: The table 'F:\测试脚本\loadrunner\toutTest3\NewParam.dat' does not exist. Loadrunne ...
- outlook响应服务器450,outlook报错分析
原标题:outlook报错分析 1.0x800CCC79,报错内容一般如下: 由于服务器拒绝收件人之一,无法发送邮件.被拒绝的电子邮件地址是"xxx@163.com". 主题 '饿 ...
- 思科2960接入华为S5130报错分析
思科2960接入华为S5130报错分析 拓扑: 拓扑介绍: 如图所示,原先架构为华为5130接入到核心5130,有一台思科2960管理口access接5130核心,后新增一台思科2960接入至5130 ...
- sparksql Error in query: resolved attribute(s)报错分析
sparksql Error in query: resolved attribute(s)报错分析 项目场景: sparksql Error in query: resolved attribute ...
- ROS基础(安装、报错分析)
ROS 1 ROS基础1 1.1 ROS的安装 首先需要搭建开发环境.下载与安装参考博客的做法. ros_graph rosnode list rosnode info /turtlesim rost ...
- echarts报错分析汇总
echarts报错分析汇总 echart 节点重复报错---echarts2.js:60988 Graph nodes have duplicate name or id 桑基图-拖拽时出现样式错乱, ...
- docker启动报错 (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 9876 -j DNAT --
docker启动报错 : (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 9876 -j DNAT ...
- dockerq启动报错(iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 9876 -j DNAT --t
docker启动报错 (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 9876 -j DNAT --t ...
- 在ubuntu中使用cv2.imshow()报错 No protocol specified qt.qpa.xcb: could not connect to display :0
目录 报错 解决方案 1. 更换较低版本的opencv-python 2. 设置X server 报错 在带有桌面的ubuntu 16.04中,使用cv2.imshow()函数,报错信息如下 No p ...
最新文章
- python venv 复制_pythonenv的安装及迁移
- 网络知识:为什么你家里的网速慢,看完你就懂了?
- python 画树 递归_python递归函数绘制分形树的方法
- 编写运行java的步骤,【简答题】编写运行Java程序需要经过哪些主要步骤? (30.0分)...
- RyuBook1.0案例三:REST Linkage
- matlab算法knn算法,MATLAB KNN算法
- 归并排序(java实现)
- 手势控制鼠标(源码)
- 一键Pad变电脑,安全快速的远控办公这不就来了。
- Eclipse解压后打开报错javaw.exe in your current PATH
- 交换两个数组的内容555555555
- Android 应用瘦身
- SAS硬盘优缺点概述
- css设置元素抛物线,CSS3 抛物线波动(Parabola Wave)
- vue设置scrollTop不起作用
- docker 容器Exited【数字报错】问题
- Windows bat 循环脚本案例
- 帝国危机,线程要罢工了!
- 内外网的安全隔离技术实现
- 介绍一款特别好用的java反编译工具jd-gui
热门文章
- a java runtime enviroment jre or java de,手把手教你启动报错:A java Runtime Environment(JRE)…...
- overflow: hidden的用法
- Java锁机制了解一下
- hbw-utils - ColUtils
- There is insufficient memory for the Java Runtime Environment to continue. -XX:ReservedCodeCach解决
- 设置电脑主机ip地址
- 反知识蒸馏后门攻击:Anti-Distillation Backdoor Attacks: Backdoors Can Really Survive in Knowledge Distillation
- Centos 7下 ceph的安装
- Python爬取哔哩哔哩(bilibili)视频
- 鱼眼相机图像畸变校正