Langchain-Chatchat项目:4.2-P-Tuning v2使用的数据集

  本文主要介绍P-tuning-v2论文中的5种任务,分别为Glue任务、NER任务、QA任务、SRL任务、SuperGlue任务,重点介绍了下每种任务使用的数据集。

一.Glue任务
  GLUE(General Language Understanding Evaluation)是纽约大学、华盛顿大学等机构创建了一个多任务的自然语言理解基准和分析平台。GLUE包含九项NLU任务,语言均为英语。GLUE九项任务涉及到自然语言推断、文本蕴含、情感分析、语义相似等多个任务。可分为三大类,分别是单句任务、相似性和释义任务、推理任务。所有任务都是2分类,除了STS-B是一个回归任务,MNLI有3个类别[1][2][3],如下所示:

  P-tuning-v2/tasks/glue/dataset.py文件中的task_to_keys字典如下所示:

task_to_keys = {
    "cola": ("sentence", None),         # 这里的None表示没有第二个句子
    "mnli": ("premise", "hypothesis"),  # 这里的第一个句子是前提,第二个句子是假设
    "mrpc": ("sentence1", "sentence2"), # 这里的第一个句子是句子1,第二个句子是句子2
    "qnli": ("question", "sentence"),   # 这里的第一个句子是问题,第二个句子是句子
    "qqp": ("question1", "question2"),  # 这里的第一个句子是问题1,第二个句子是问题2
    "rte": ("sentence1", "sentence2"),  # 这里的第一个句子是句子1,第二个句子是句子2
    "sst2": ("sentence", None),         # 这里的None表示没有第二个句子
    "stsb": ("sentence1", "sentence2"), # 这里的第一个句子是句子1,第二个句子是句子2
    "wnli": ("sentence1", "sentence2"), # 这里的第一个句子是句子1,第二个句子是句子2
}

1.CoLA(The Corpus of Linguistic Acceptability)
  纽约大学发布的有关语法的数据集,该任务主要是对一个给定句子,判定其是否语法正确,因此CoLA属于单个句子的文本二分类任务。

2.SST(The Stanford Sentiment Treebank)
  斯坦福大学发布的一个情感分析数据集,主要针对电影评论来做情感分类,因此SST属于单个句子的文本分类任务(其中SST-2是二分类,SST-5是五分类,SST-5的情感极性区分的更细致)。

3.MRPC(Microsoft Research Paraphrase Corpus)
  由微软发布,判断两个给定句子,是否具有相同的语义,属于句子对的文本二分类任务。

4.STS-B(Semantic Textual Similarity Benchmark)
  主要是来自于历年SemEval中的一个任务(同时该数据集也包含在了SentEval),具体来说是用1到5的分数来表征两个句子的语义相似性,本质上是一个回归问题,但依然可以用分类的方法做,因此可以归类为句子对的文本五分类任务。

5.QQP(Quora Question Pairs)
  由Quora发布的两个句子是否语义一致的数据集,属于句子对的文本二分类任务。

6.MNLI(Multi-Genre Natural Language Inference)
  同样由纽约大学发布,是一个文本蕴含的任务,在给定前提(Premise)下,需要判断假设(Hypothesis)是否成立,其中因为MNLI主打卖点是集合了许多不同领域风格的文本,因此又分为matched和mismatched两个版本的MNLI数据集,前者指训练集和测试集的数据来源一致,而后者指来源不一致。该任务属于句子对的文本三分类问题。

7.QNLI(Question Natural Language Inference)
  其前身是SQuAD 1.0数据集,给定一个问句,需要判断给定文本中是否包含该问句的正确答案。属于句子对的文本二分类任务。

8.RTE(Recognizing Textual Entailment)
  和MNLI类似,也是一个文本蕴含任务,不同的是MNLI是三分类,RTE只需要判断两个句子是否能够推断或对齐,属于句子对的文本二分类任务。

9.WNLI(Winograd Natural Language Inference)
  一个文本蕴含任务,二分类任务,判断两个句子含义是否一样。

  从官网GLUE Tasks来看,现在又多了一个Diagnostics Main分类任务,如下所示:


二.NER任务
  主要是处理脚本P-tuning-v2/tasks/ner/dataset.py文件。
1.conll2003数据集
(1)简介
  Conll-2003数据集是由欧洲计算语言学学会(CoNLL)于2003年发布的一个英语命名实体识别数据集。该数据集包含了英语新闻文本中的实体类别和实体位置信息。其中,实体类别包括人名、地名、组织名和其他实体。实体位置信息以标注的方式呈现,即以实体开始和结束的字符索引表示。Conll-2003数据集由训练集、开发集和测试集组成,用于训练和评估命名实体识别模型。
(2)下载地址
  链接:https://www.cnts.ua.ac.be/conll2002/ner/
2.conll2004数据集
(1)简介
  CoNLL04数据集由《华尔街日报》和美联社的新闻文章组成。CoNLL04定义了4种实体类型,包括位置(Loc)、组织(Org)、人(Peop)和其他(Other),以及5种关系类别,即坐落在(Locate_In)、基于组织的在(OrgBased_In)、住在(Live_In)、杀死(Kill)和工作在(Work_For)。
(2)下载地址
  链接:https://www.clips.uantwerpen.be/conll2003/ner/
3.ontonotes数据集
(1)简介
  OntoNotes 5.0是OntoNotes项目的最后一个版本,是BBN Technologies、科罗拉多大学、宾夕法尼亚大学和南加州大学信息科学研究所之间的合作项目。该项目的目标是对一个大型语料库进行注释,该语料库由三种语言(英语、汉语和阿拉伯语)的各种类型的文本(新闻、电话对话、网络日志、usenet新闻组、广播、脱口秀)组成,包含结构信息(语法和谓词论证结构)和浅层语义(与本体和核心参考相关联的词义)。
(2)下载地址
  链接:OntoNotes Release 4.0:https://catalog.ldc.upenn.edu/LDC2011T03;OntoNotes Release 5.0:https://catalog.ldc.upenn.edu/LDC2013T19

三.QA任务
  主要是处理脚本P-tuning-v2/tasks/qa/dataset.py文件。
1.SQuAD 1.1数据集
  SQuAD是由Rajpurkar等人提出的一个抽取式QA数据集。该数据集包含10万个(问题,原文,答案)三元组,原文来自于536篇维基百科文章。对于每个文章的问题(<=5),有很多标注人员标注答案,且答案出现在原文中。https://huggingface.co/datasets/squad
  训练集数据如下所示:

  验证集数据如下所示:

2.SQuAD 2.0数据集
  相较SQuAD 1.1中的10万问答,SQuAD 2.0又新增了5万个人类撰写的问题——而且问题不一定有对应答案。https://huggingface.co/datasets/squad_v2
  训练集数据如下所示:

  验证集数据如下所示:


四.SRL任务
  主要是处理脚本P-tuning-v2/tasks/srl/dataset.py文件。语义角色标注(Semantic Role Labeling)的目标主要是识别出句子中Who did What to Whom, When and Where。英文数据集主要有CoNLL-2005和CoNLL-2012提供的标注数据集,其中CoNLL-2005的数据集来源于Penn Tree Bank,CoNLL-2012的数据集来源于OntoNotes v5.0。
1.conll2005数据集
链接:https://github.com/strubell/preprocess-conll05
2.conll2012数据集
链接:https://cemantix.org/conll/2012/data.html

五.SuperGlue任务
  主要是处理脚本P-tuning-v2/tasks/superglue/dataset.py文件。SuperGLUE(General Language Understanding Evaluation)是一个广泛用于测试自然语言理解模型性能的基准测试集合,由斯坦福大学等机构联合开发。它是自然语言理解领域最具挑战性的测试集之一,旨在推动自然语言处理技术的发展。SuperGLUE中包含BoolQ、CB、COPA、MultiRC、ReCoRD、RTE、WiC、WSC 8个子数据集。详情可参考论文:https://w4ngatang.github.io/static/papers/superglue.pdf。

task_to_keys = {
    "boolq": ("question", "passage"),            # boolq数据集:包含问题和段落,预测段落是否包含答案
    "cb": ("premise", "hypothesis"),             # cb数据集:包含前提和假设,预测假设是否为前提的蕴含
    "rte": ("premise", "hypothesis"),            # rte数据集:包含前提和假设,预测假设是否为前提的蕴含
    "wic": ("processed_sentence1", None),        # wic数据集:包含2个句子和1个多义词,预测2个句子中的单词含义是否相同
    "wsc": ("span2_word_text", "span1_text"),    # wsc数据集:包含1个句子和2个名词短语,预测哪个名词短语更符合句子中的指代关系
    "copa": (None, None),                        # copa数据:包含1个问题和2个候选答案,预测哪个答案更符合问题的语境
    "record": (None, None),                      # record数据集:包含1篇新闻文章和1个关于文章的完形填空式问题,预测问题的被屏蔽的实体
    "multirc": ("paragraph", "question_answer")  # multirc数据集:示例由上下文段落、问题和可能答案列表组成,预测答案是否正确
}

1.BoolQ数据集
  BoolQ(Boolean Questions)是一项QA任务,预测段落是否包含答案。
2.CB数据集
  CB(CommitmentBank)是一个短文本语料库,根据给定的前提和假设,判断假设是否为前提的蕴含。
3.RTE数据集
  RTE(Recognizing Textual Entailment)数据集来自一系列关于文本蕴涵的年度竞赛,判断给定的两个句子是否具有蕴含关系。
4.WiC数据集
  WiC(Word-in-Context)是一个词义消歧任务,作为句子对的二元分类。给定两个文本片段和一个出现在两个句子中的多义词,任务是确定该词在两个句子中是否以相同的含义使用。
5.WSC数据集
  WSC(Winograd Schema Challenge)在GLUE中以NLI任务出现,给定一个句子和两个名词短语,判断哪个名词短语更符合句子中的指代关系。
6.COPA数据集
  COPA(Choice of Plausible Alternatives)是一项因果推理任务,给定一个问题和两个候选答案,判断哪个答案更符合问题的语境。
7.ReCoRD数据集
  ReCoRD(Reading Comprehension with Commonsense Reasoning Dataset)是一项多项选择的QA任务,每个示例都包含一篇新闻文章和一个关于文章的完形填空式问题,文章中的一个实体被屏蔽掉了,模型需要从提供的段落中给定的可能实体列表中预测被屏蔽的实体。
8.MultiRC数据集
  MultiRC(Multi-Sentence Reading Comprehension)是一项QA任务,其中每个示例由上下文段落、关于该段落的问题和可能答案列表组成,由模型预测哪些答案是正确的,哪些是错误的。

参考文献:
[1]GLUE的论文:GLUE: A Multi-Task Benchmark and Analysis Platform for Natural Language Understanding(https://aclanthology.org/W18-5446/)
[2]GLUE的官网:https://gluebenchmark.com/
[3]NLP常见任务介绍:https://www.cnblogs.com/guozw/p/13369757.html
[4]NER常用数据集汇总:https://zhuanlan.zhihu.com/p/606788093
[5]SUPER_GLUE数据集:https://www.modelscope.cn/datasets/modelscope/super_glue/summary

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/115110.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring IOC详解

文章目录 目录 文章目录 前言 一 . SpringFramework介绍 1.1 Spring和SpringFramework概念 1.2 SpringFramework主要功能模块 二 . Spring IOC容器和核心概念 2.1 组件和组件管理 2.1.1 什么是组件? 2.1.2 组件管理 2.2 Spring IOC容器和容器实现 2.2.1 Sprign IO…

nodejs+springboot+elementui+python的Sd球鞋销售平台的设计与实现-毕业设计

此网站系统的开发方式和信息管理方式&#xff0c;借鉴前人设计的信息和研发。以网站商品信息为主&#xff0c;购物商品为核心功能来进行设计和研发&#xff0c;把网站信息和技术整合&#xff0c;开发出一套Sd球鞋销售平台。用目前现有的新技术进行系统开发&#xff0c;提供后台…

Oracle注入(基础篇)

先了解Oracle一些内容 Oracle做联合注入的注意事项(附带示例) 联合查询的字段数必须和前面的查询语句字段数一致 select id,username,password from admin union select 1,admin from dual (X) 联合查询的字段类型也必须和前面的查询语句字段类型一致 select id,username,pas…

OpenAI最新官方GPT最佳实践指南,一文讲清ChatGPT的Prompt玩法

原文&#xff1a;Sina Visitor System OpenAI的官网发表万字GPT最佳实践指南&#xff0c;讲清Prompt提示词的原则和策略&#xff0c;这里是总结和全文翻译 原创图像&#xff0c;AI辅助生成 OpenAI的官网上刚刚发表一篇万字的GPT最佳实践指南&#xff0c;这份指南把写好Promp…

路由器基础(七):NAT原理与配置

一、NAT 配置 华为路由器配置NAT 的方式有很多种&#xff0c;考试中可能考到的基本配置方 式主要有EasyIP和通过NAT地址池的方式。图22-7-1是一个典型的通过EasyIP进行NAT的示意图&#xff0c;其中Router出接口GE0/0/1的IP地址为200.100.1.2/24,接口E0/0/1的IP地址为192.168.0.…

MySQL - 库的操作

目录 1.库的操作1.1创建数据库1.2创建数据库案例 2.字符集和校验规则3.操纵数据库4.备份和恢复5.查看连接情况 1.库的操作 1.1创建数据库 语法&#xff1a; CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specification] ...] create_specifica…

递归与快速算法

借鉴&#xff1a; 4分钟彻底掌握递归算法、斐波那契数列、快速排序&#xff0c;不再怕面试&#xff01;_哔哩哔哩_bilibili 可直接观看借鉴里的视频 快速算法

QT学习之QT概述

1.1 什么是QT&#xff1f; Qt是一个跨平台的C图形用户界面应用程序框架。 QT特点&#xff1a; 跨平台&#xff0c;几乎支持所有的平台接口简单&#xff0c;容易上手&#xff0c;学习QT框架对学习其他框架有参考意义。一定程度上简化了内存回收机制开发效率高&#xff0c;能够…

Nacos全面知识 ----微服务 SpringCloud

快速入门 分级存储模型 修改集群配置 Nacos设置负载均衡策略 集群优先 权重优先 Nacos热更新配置 Nacos添加配置信息 微服务配置拉取 热更新:推荐使用第二种方法进行热部署 ConfigurationProperties(prefix "pattern") 是 Spring Boot 中用于自动配置属性的注解。它…

MATLAB 绘制 SISO 和 MIMO 线性系统的时间和频率响应图

系列文章目录 文章目录 系列文章目录前言一、时间响应二、频率响应三、极点/零点图和根节点四、响应特性五、分析 MIMO 系统六、系统比较七、修改时间轴或频率轴数值如果觉得内容不错&#xff0c;请点赞、收藏、关注 前言 本例演示如何绘制 SISO 和 MIMO 线性系统的时间和频率…

直播电商大变局:店播时代终于来了!

店播时代终于来了。 直播在2023年双十一的亮点&#xff0c;也是焦点。今年双十一&#xff0c;舆论场的注意力都集中在了几大平台的头部主播身上&#xff0c;却少有人注意店播的表现——根据淘宝直播官方数据&#xff0c;10月31日淘宝直播上有29个直播间开局即破亿&#xff0c;…

【MATLAB源码-第67期】基于麻雀搜索算法(SSA)的无人机三维地图路径规划,输出最短路径和适应度曲线。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 ​麻雀搜索算法&#xff08;Sparrow Search Algorithm, SSA&#xff09;是一种新颖的元启发式优化算法&#xff0c;它受到麻雀社会行为的启发。这种算法通过模拟麻雀的食物搜索行为和逃避天敌的策略来解决优化问题。SSA通过模…

Anaconda安装与配置

1.打开Anaconda官网&#xff0c;选择对应版本,下载到对应目录即可 或者进入: Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 2.双击打开.exe文件&#xff0c;然后点击next ; 3.点击agree 4.点击just me,然后next; 5.在Choose Install L…

Linux 安装node并全局可用

前言 基于&#xff1a;操作系统 CentOS 7.6 工具&#xff1a;Xshell7、Xftp7 1.下载 根目录创建一个 node 文件夹并进入 mkdir /node && cd /node下载压缩包 wget https://nodejs.org/download/release/v16.18.0/node-v16.18.0-linux-x64.tar.gz2.解压并重命名 …

oracle 重启步骤及踩坑经验

oracle 重启步骤及踩坑经验 标准重启步骤 切换到oracle用户 su - oracle关闭监听 lsnrctl stop杀掉oracle有关进程 ps -ef|grep $ORACLE_SID|grep -v ora_|grep LOCALNO|awk {print $2}|xargs kill -9#查询pid ps -ef|grep $ORACLE_SID|grep -v ora_|grep LOCALNO|awk {p…

第 5 章 主窗口及对话框

5.1 主窗口区域划分 QMainWindow是Qt框架带来的一个预定义的主窗口类。所谓主窗口&#xff0c;就是一个普通意义上的应用程序最顶层的窗口。例如对于浏览器而言&#xff0c;主窗口就是这个浏览器窗口。回想一下&#xff0c;经典的主窗口通常由一个标题栏、一个菜单栏、若干工具…

【Linux】常见的Linux命令

目录 一、与目录有关的操作 二、与文件有关的操作 三、针对目录的操作 三、在linux上搭建环境 一、与目录有关的操作 1.ls 显示目录内容列表 ls / 这里的 / 表示根目录&#xff0c;相当于windows中的此电脑&#xff0c;linux中没有盘符。 ls -l / 显示详细信息 可以…

基于Taro + React 实现微信小程序半圆滑块组件、半圆进度条、弧形进度条、半圆滑行轨道(附源码)

效果&#xff1a; 功能点&#xff1a; 1、四个档位 2、可点击加减切换档位 3、可以点击区域切换档位 4、可以滑动切换档位 目的&#xff1a; 给大家提供一些实现思路&#xff0c;找了一圈&#xff0c;一些文章基本不能直接用&#xff0c;错漏百出&#xff0c;代码还藏着掖…

postgresql 触发器如何生成递增序列号,从1开始,并且每天重置

大家好&#xff0c;我是三叔&#xff0c;许久不见&#xff0c;这期给大家介绍一下笔者在开发中遇到的业务处理&#xff1a;pgsql 创建触发器生成每日递增序列&#xff0c;并且第二天重置&#xff0c;根据不同的用户进行不同的控制。 1.创建生成递增序列的 table 表 -- 创建us…

线程池与工厂模式

目录 ♫什么是线程池 ♫线程池的优点 ♫工厂模式 ♫工厂模式的意义 ♫线程池的使用 ♫线程池常见的创建方法 ♫ThreadPoolExecutor ♫实现一个线程池 ♫什么是线程池 线程池是一种管理和复用线程的技术&#xff0c;它在应用程序启动时预先创建一组线程&#xff0c;并将它…