COIG:首个大规模、可商用的中文开源指令数据!

news2024/12/24 20:36:10

2901903b1aa27660d3dccd17e13f7656.png

文 | ZenMoore

ChatGPT 出现后的这几个月,整个学界和业界的疯狂想必大家都已经看到了。

然而,在背各种各样的动物还有山海经怪兽的英语单词的时候,其实不妨停下来想一想复现中文 ChatGPT 到底缺什么?缺大模型吗?缺工程经验吗?缺 trick 吗?缺算力吗(确实缺...)?

先来看看比较火的那些“动物”做了什么:Alpaca[1](羊驼)用语言模型生成了一些指令数据,Baize[2](白泽)用 ChatGPT 生成了一些对话数据,Vicuna[3](小羊驼)用 ShareGPT 数据 (ChatGPT 用户分享的对话记录) 复现了不少 ChatGPT 效果......

种种迹象表明,数据还是那个最珍贵的资源。那什么样的数据更重要呢?

再来看看 ChatGPT 的关键几步:(1)大规模语料预训练;(2)监督指令精调(Supervised Instruction Fine-Tuning);(3)基于人类反馈的强化学习(RLHF)

对于(1)来说,中文其实不缺,从互联网上爬就是了;对于(3)而言,人工打分标注的成本相对而言低一些。所以,主要是指令数据的稀缺,导致语言模型精调的时候无法获得足够的监督训练,而且,还影响了后续 RLHF 的输入指令集的筹备。要知道,指令精调给模型带来的指令遵循能力,是具有很强的泛化性的,这样模型才能够更好地泛化到用户多种多样的指令上去(参考[4])。

可惜的是,相比于英文来说,开源的、大规模的中文指令数据实在是太少了......

因此,本文给大家推荐这么一批珍贵的中文数据:Chinese Open Instruction Generalist(COIG)第一期!

第一期总共发布了 5 个子数据集,包括翻译指令、考试指令、人类价值观对齐指令、反事实修正多轮聊天、Leetcode指令,总计 191k  数据,聚焦中文语料、数据类型多样、经过了人工质检与修正、数据质量可靠,而且可以商用。

论文标题:
Chinese Open Instruction Generalist: a Preliminary Release

论文机构:
北京智源人工智能研究院等

论文链接:
https://arxiv.org/pdf/2304.07987.pdf

数据链接:
https://huggingface.co/datasets/BAAI/COIG

经过人工验证的翻译通用指令(67,798)

作者对三个数据集进行了翻译工作,包括具有1,616个任务描述和示例的Super-Natural Instructions数据集,175个种子任务的Self-Instruct数据集,以及66,007个指令的Unnatural Instructions数据集。整个翻译过程分为自动翻译、人工验证和人工修正三个阶段,以确保翻译结果的准确性和可靠性。

在自动翻译阶段,作者将指令和实例的输入输出组合在一起,然后使用 DeepL 进行翻译。

在人工验证阶段,作者为注释者定义了四个标签,根据指令是否可用和需要的修正程度进行分类。作者使用两阶段质量验证方法进行人工验证,第一阶段由经验丰富的质量检查员进行验证,只有正确率超过95%的案例才能进入第二阶段。在第二阶段,专家质量检查员从总语料库中随机抽取200个案例进行验证。

在人工修正阶段,注释者需要将翻译后的指令和实例纠正为正确的中文三元组{指令,输入,输出},而不仅仅是保持翻译的准确性。这是因为在 unnatural instructions 中存在事实错误,这可能会导致LLMs出现 hallucination. 作者同样使用两阶段质量验证方法进行人工修正,第一阶段的正确率为97.24%。

人工注释的考试指令(63,532)

中国的高考、中考和公务员考试题目中包含各种问题类型和详细的分析,这些考试可以用来构建思维链(CoT)语料库用于增强模型推理能力。作者从这些考试中提取了六个信息元素,包括指令、问题背景、问题、答案、答案分析和粗粒度学科。这些语料库中的六个主要学科是语文、英语、政治、生物、历史和地质。数学、物理和化学问题很少在语料库中出现,因为这些问题通常包含难以注释的复杂数学符号。

7745962c3ab94ccf29a59a29462aecbe.png

人类价值观对齐指令(34,471)

为了尊重和反映不同文化背景所带来的主要差异,COIG数据集中的价值观对齐数据被分为两个独立的系列:

一组展示中文世界共享人类价值观的样本。作者选择了50个指令作为扩充种子,并使用中文世界通用的价值观对齐样本,生成了3,000个结果指令。另外一些展示特定区域文化或国家特定人类价值观的样本集。以下是数据示例:

658dfbceb1249fe02beff738d7d558df.png

反事实修正多轮聊天(13,653)

反事实修正多轮聊天数据集(CCMC)是基于CN-DBpedia知识图谱数据集构建的,旨在解决当前LLM中出现的幻觉和事实不一致的问题。数据集包含约13,000个对话,每个对话平均有5轮,共约65,000轮聊天。这些对话是在学生和教师之间进行的角色扮演聊天,他们在对话中参考相关的知识。77799add174ebba997500992d28ef72e.png

Leetcode 指令(11,737)

考虑到与代码相关的任务可能有助于LLM能力的涌现,作者从CC-BY-SA-4.0许可下的2,589个编程问题中构建Leetcode指令。这些问题包含问题描述、多种编程语言和解释(其中 834个问题尚没有解释)。编程语言分类统计如下图所示:

6720df3f931a17bb197e8f138e01f9f0.png

结语

COIG 是目前首个指令类型丰富且可商用的中文指令集,作者欢迎大家加入共建,一起扩充指令数据集类型和规模!

dcf6db47d2a094f98e8deb1cbbe0fe28.jpeg卖萌屋作者:ZenMoore

智源实习生🧐,爱数学爱物理爱 AI🌸 想从 NLP 和 System-2 出发探索人工认知的奥秘🧠🤖!即将进入 PhD 申请季,微信📩 zen1057398161 嘤其鸣矣,求其友声✨!

作品推荐

  1. 一文跟进Prompt进展!综述+15篇最新论文逐一梳理

  2. 图灵奖大佬+谷歌团队,为通用人工智能背书!CV 任务也能用 LM 建模!

  3. 以4%参数量比肩GPT-3!Deepmind 发布检索型 LM,或将成为 LM 发展新趋势!?

a3b0c39e260a32e38c28337178033689.jpeg后台回复关键词【入群

加入卖萌屋NLP、CV、搜推广与求职讨论群

 926af9ed919a03467c3c6bae50e7a811.png

[1] Alpaca: https://github.com/tatsu-lab/stanford_alpaca

[2] Baize: https://arxiv.org/pdf/2304.01196.pdf

[3] Vicuna: https://vicuna.lmsys.org/

[4] https://yaofu.notion.site/How-does-GPT-Obtain-its-Ability-Tracing-Emergent-Abilities-of-Language-Models-to-their-Sources-b9a57ac0fcf74f30a1ab9e3e36fa1dc1

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++的引用

目录 引用概念 引用的用法 做函数形参 优点一 优点二 引用做返回值 让我们更深入的了解引用与指针 语法层引用与指针完全不同的概念 站在底层的角度看指针与引用 笔记类型文章 引用概念 在语言层面上:引用不是定义新的变量,而是给已存在变量再…

大模型带来的Web复兴,会是昙花一现吗?

大家是不是对GPT、对话式AI、生成式AI之类的话题,已经有点审美疲劳了? 写这篇文章之前,我有点犹豫,究竟还要不要接着讨论GPT了。最终决定写,是觉得个人用户、开发者,以及正在紧锣密鼓训大模型的AI公司和云厂…

Go | 一分钟掌握Go | 1 - 安装Go

作者:Mars酱 声明:本文章由Mars酱原创,部分内容来源于网络,如有疑问请联系本人。 转载:欢迎转载,转载前先请联系我! 为什么学Go 为什么要学Go?网上太多广告和说辞了,什…

“SCSA-T学习导图+”首发:路由技术之OSPF入门

本期引言: 路由技术是网络环境中,为不同的节点传输数据提供传输路径的技术,企业网络的拓扑一般会比较复杂,不同的部门或者总部和分支可能处于不同的网段中,此时就需要使用路由协议来连接不同的网段,实现数…

django channels(websocket)的使用,实现网页间实时聊天

目录 一、创建项目mysite和应用chat 1. 创建项目mysite 2. 创建应用chat并添加应用到settings.py的INSTALLED_APPS中 3. 添加模板文件 4. 添加视图及路由 5.配置根路由指定chat应用的路由 6. 集成channels 二、实现聊天服务器 1. 创建一个新文件chat/templates/chat/r…

响应式开发HTNL5CSS3视频播放器

目录 前言 一、本视频播放器需要实现的功能 ​二、代码分布结构 三、部分主要代码 1.index01.html 2.video1.css 3.video1.js 四、images图片资源及视频 五、运行效果 前言 1.本文讲解的响应式开发技术(HTML5CSS3Bootstrap)的HTML5视频播放器等…

TS-黑马(二)

目录: (1)ts-类型-字面量与nullish类型 (2)ts-类型-泛型 (3)ts-意义 (4)ts-class语法 (1)ts-类型-字面量与nullish类型 我们子啊传递参数的时…

以 100GB SSB 性能测试为例,通过 ByteHouse 云数仓开启你的数据分析之路

动手点关注 干货不迷路 I. 传统数仓的演进:云数仓 近年来,随着数据“爆炸式”的增长,越来越多的数据被产生、收集和存储。而挖掘海量数据中的真实价值,从其中提取商机并洞见未来,则成了现代企业和组织不可忽视的命题。…

总的所有的全部的完全的整个的整体的: all entire full gross whole total

all entire full gross whole total 所有的,完全的,完整的全部的,整个的,整体的,总的 all entire full gross whole total all entire full gross whole total一些词典的解释allentirefullgrosswholetotal 区别辨析entire、whole、complete、full、total、gross与alltotal&…

【JavaWeb】HTMLCSS

一:B/S 软件的结构 二:前端的开发流程 3、网页的组成部分 页面由三部分内容组成! 分别是内容(结构)、表现、行为。 内容(结构),是我们在页面中可以看到的数据。我们称之为内容。一般内容 我们…

【Linux】共享内存(shm)代码实现

文章目录 共享内存介绍最快的IPC形式共享内存示意图共享内存数据结构共享内存函数shmget函数shmfig shmat函数说明: shmdt函数shmctl函数 共享内存的原理小结 共享内存的特点生命周期共享内存的大小共享内存为什么快共享内存没有任何的保护机制即同步互斥扩展内容 代…

《软件开发本质论》读书笔记

目录 第一部分——价值的循环开发取向频繁交付小的,价值大,代价小的特性 测试同时要有业务测试和开发测试开发测试应在代码开发的同时完成甚至先于代码完成 重构第一部分总结 第二部分——说明与论述团队目的自主专精 五卡法预测软件计划控制好自己所参与…

二叉树一定是完全二叉树

一、树的概念及其结构 树是一种非线性的数据结构,它是由n(n>0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。 1、树的特点 ①有一个特殊的结点&…

ARM Coresight 及 DS-5 介绍 5 - ARM Cortex-M DS-5 加载 ELF 文件运行

文章目录 1.1.1 DS-5 工程创建1.1.2 DS-5 加载 ELF 脚本创建1.1.3 DS-5 脚本读写 Memory1.1.4 DS-5 扫描脚本 1.1.1 DS-5 工程创建 在使用ARM DS-5 连接 board(或者PFGA)之前首先需要能够扫描到相应的硬件信息,比如对应的cpu的相关信息:coresight 相关组…

【Zblog搭建博客网站】windows环境搭建属于自己的博客并发布上线 - cpolar内网穿透

文章目录 1. 前言2. Z-blog网站搭建2.1 XAMPP环境设置2.2 Z-blog安装2.3 Z-blog网页测试2.4 Cpolar安装和注册 3. 本地网页发布3.1. Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 转载自远程内网穿透的文章:【Zblog建站】搭建属于自己的博客网站&#…

【C++】初始化列表,explicit 关键字,静态成员

初始化列表 构造函数内可以对于成员的赋值,故不能称为是初始化,初始化只能初始化依次,C中类对象的初始化可由初始化列表完成 内置类型成员可以通过设置缺省值实现初始化,但对于const修饰的成员、引用成员、没有默认构造函数的自…

hive解析json

目录 一、背景 二、hive 解析 json 数据函数 1、get_json_object 2、json_tuple 3、使用嵌套子查询(exploderegexp_replacesplitjson_tuple)解析json数组 4、使用 lateral view 解析json数组 一、背景 我们进行ETL(Extract-Transfer-Load) 过程中,经常会遇到从不同数据…

编码拓展:链接库

一.认识链接库 1.1库 计算机中,有些文件专门用于存储可以重复使用的代码块,例如功能实用的函数或者类,我们通常将它们称为库文件,简称“库”(Library)。 以 C 语言为例,如下为大家展示的就是…

JUC高级十-并发加锁原理之AbstractQueuedSynchronizer(AQS)

1. 前置知识 公平锁和非公平锁可重入锁自旋锁LockSupport数据结构之双向链表设计模式之模板设计模式 AQS重要性 JAVA ------>JVM AQS ------>AQS 2. AQS入门级别理论知识 2.1 是什么? 2.1.1 字面意思 Abstract Queued Synchronizer----抽象的队列同步器 源码位置: …

【Microsoft Edge】如何彻底卸载 Edge

文章目录 一、问题描述二、卸载 Edge2.1 卸载正式版 Edge2.2 卸载非正式版 Edge2.2.1 卸载通用的 WebView22.2.2 卸载 Canary 版 Edge2.2.3 卸载其他版本2.3 卸载 Edge Update 2.4 卸载 Edge 的 Appx 额外安装残留2.5 删除日志文件2.6 我就是想全把 Edge 都删了 一、问题描述 …