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相关推荐

  1. 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 ...

  2. outlook响应服务器450,outlook报错分析

    原标题:outlook报错分析 1.0x800CCC79,报错内容一般如下: 由于服务器拒绝收件人之一,无法发送邮件.被拒绝的电子邮件地址是"xxx@163.com". 主题 '饿 ...

  3. 思科2960接入华为S5130报错分析

    思科2960接入华为S5130报错分析 拓扑: 拓扑介绍: 如图所示,原先架构为华为5130接入到核心5130,有一台思科2960管理口access接5130核心,后新增一台思科2960接入至5130 ...

  4. sparksql Error in query: resolved attribute(s)报错分析

    sparksql Error in query: resolved attribute(s)报错分析 项目场景: sparksql Error in query: resolved attribute ...

  5. ROS基础(安装、报错分析)

    ROS 1 ROS基础1 1.1 ROS的安装 首先需要搭建开发环境.下载与安装参考博客的做法. ros_graph rosnode list rosnode info /turtlesim rost ...

  6. echarts报错分析汇总

    echarts报错分析汇总 echart 节点重复报错---echarts2.js:60988 Graph nodes have duplicate name or id 桑基图-拖拽时出现样式错乱, ...

  7. 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 ...

  8. 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 ...

  9. 在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 ...

最新文章

  1. python venv 复制_pythonenv的安装及迁移
  2. 网络知识:为什么你家里的网速慢,看完你就懂了?
  3. python 画树 递归_python递归函数绘制分形树的方法
  4. 编写运行java的步骤,【简答题】编写运行Java程序需要经过哪些主要步骤? (30.0分)...
  5. RyuBook1.0案例三:REST Linkage
  6. matlab算法knn算法,MATLAB KNN算法
  7. 归并排序(java实现)
  8. 手势控制鼠标(源码)
  9. 一键Pad变电脑,安全快速的远控办公这不就来了。
  10. Eclipse解压后打开报错javaw.exe in your current PATH
  11. 交换两个数组的内容555555555
  12. Android 应用瘦身
  13. SAS硬盘优缺点概述
  14. css设置元素抛物线,CSS3 抛物线波动(Parabola Wave)
  15. vue设置scrollTop不起作用
  16. docker 容器Exited【数字报错】问题
  17. Windows bat 循环脚本案例
  18. 帝国危机,线程要罢工了!
  19. 内外网的安全隔离技术实现
  20. 介绍一款特别好用的java反编译工具jd-gui

热门文章

  1. a java runtime enviroment jre or java de,手把手教你启动报错:A java Runtime Environment(JRE)…...
  2. overflow: hidden的用法
  3. Java锁机制了解一下
  4. hbw-utils - ColUtils
  5. There is insufficient memory for the Java Runtime Environment to continue. -XX:ReservedCodeCach解决
  6. 设置电脑主机ip地址
  7. 反知识蒸馏后门攻击:Anti-Distillation Backdoor Attacks: Backdoors Can Really Survive in Knowledge Distillation
  8. Centos 7下 ceph的安装
  9. Python爬取哔哩哔哩(bilibili)视频
  10. 鱼眼相机图像畸变校正