Wombat:93%ChatGPT性能!无需RLHF就能对齐人类的语言模型

news2024/11/16 17:43:03

eb79a0e99151742675c1cb4b7f937d8e.png

文 | zzy

文章地址:
https://arxiv.org/abs/2304.05302v1

训练代码:
https://github.com/GanjinZero/RRHF

模型权重:
https://huggingface.co/GanjinZero/wombat-7b-delta

文章提出RRHF一种无须强化学习的对齐方法训练语言模型。该文章利用chatGPT或者GPT-4作为得分模型,开发了语言模型Wombat-7BWombat-7B-GPT4Wombat-7B在Vicuna的部分测试集上(因没有GPT4 API,无法完整测试),可以达到ChatGPT 93% 的性能。其中GPT-4给ChatGPT的回复平均打了8.5分,而给Wombat-7B平均打了7.9分。

OpenAI的chatGPT理解多种多样的的人类指令,并且可以很好的应对不同的语言任务需求。chatGPT令人惊叹的能力来源于一种新颖的大规模语言模型微调方法:RLHF(通过强化学习对齐人类反馈)。RLHF方法不同于以往传统的监督学习的微调方式,该方法使用强化学习的方式对LLM进行训练。RLHF解锁了语言模型跟从人类指令的能力,并且使得语言模型的能力和人类的需求和价值观对齐。

当前研究RLHF的工作主要使用PPO算法对语言模型进行优化。PPO算法包含有众多的超参数,并且在算法迭代的过程中需要多个独立模型的相互配合,错误的实现细节都会导致不好的训练结果

2962c7725391aa986198a27d1fef962b.png

在和人类对齐的角度上,强化学习算法是不是必须的呢?来自阿里巴巴达摩院的作者们提出了不需要强化学习的基于排序的人类偏好对齐方法,它对不同语言模型生成的回复(可以是ChatGPT、GPT-4或者当前的训练模型)进行评分,并通过排名损失使它们与人类偏好对齐。不同于PPO,RRHF的训练过程可以利用人类专家或者GPT4的输出作为对比。RRHF训练好的模型可以同时作为生成语言模型和奖励模型使用。

Playgound AI的CEO Suhail表示这是最近最令他兴奋的一篇论文。

1b69d1cd0537d084a787c7357b388d76.png

下图中对比了PPO算法和RRHF算法的区别。

048fc185a5e55cb1dafcc83d74585112.png

RRHF算法可以有效地将语言模型输出概率与人类偏好对齐,其训练思路非常简单,训练完成的模型有几个特点:

  • 只需要12个模型。相比之下,PPO需要4个模型。

  • 监督微调(SFT)可以看做是他的一种特殊形式,超参数很少

  • 他可以同时直接作为一个语言模型和一个奖励模型使用

  • 他以相当低的训练难度就可以拟合奖励模型的偏好,达到PPO的效果

袋熊Wombat作为新的开源预训练模型可以更好的与人类偏好对齐。作者们实验发现Wombat-7B拥有角色扮演和进行反事实推理等复杂的能力。作者也在Huggingface放出了WomBat的权重,来供大家尝试。以下是袋熊Wombat给大家的一个自我介绍。

  • Give an introduction of wombat

  • Wombat is a marsupial mammal native to Australia. It is typically found in mountainous areas and is known for its burrowing behavior. Wombats are typically around two feet long and weigh up to 30 pounds. They have a gray coat with white on their chests, and they have thick and powerful hind legs which they use for digging. Wombats are mostly nocturnal and eat a variety of insects, leaves, and grasses.

005bec52fd1c0de5642bcfbf8e295012.png

链接:
https://huggingface.co/GanjinZero/wombat-7b-delta

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

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

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

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

相关文章

浅析时间复杂度与空间复杂度

时间复杂度 何为时间复杂度 算法的时间复杂度,是一个用于度量一个算法的运算时间的一个描述,本质是一个函数,根据这个函数能在不用具体的测试数据来测试的情况下,粗略地估计算法的执行效率,换句话讲时间复杂度表示的…

GPT-4问世;LLM训练指南;纯浏览器跑Stable Diffusion

1.多模态GPT-4正式发布:支持图像和文本输入,效果超越ChatGPT OpenAI的里程碑之作GPT-4终于发布,这是一个多模态大模型(接受图像和文本输入,生成文本)。主要能力有: GPT-4可以更准确地解决难题&a…

【软件安装】图数据库_Neo4j下载与安装配置详解

【软件安装】图数据库_Neo4j安装下载详解 文章目录【软件安装】图数据库_Neo4j安装下载详解1. 前言2. 下载Neo4j3. 安装 配置3.1 解压3.2 配置4. 启动Neo4j5. 参考1. 前言 因为使用Neo4j时默认是需要java-jdk的支持,因此在下载neo4j之前,需要下载jdk&a…

7年,从功能测试到测试开发,我证明了自己

我感觉我是一个比较有发言权的人吧,我在测试行业爬模滚打7年,从点点点的功能测试到现在成为测试开发工程师,工资也翻了几倍; 个人觉得,测试的前景并不差,只要自己肯努力;我刚出来的时候是在鹅厂…

Android 高通Camera2 Camera Device Close

1、很多人看到这个日志第一感觉可能觉得哪里没有合理释放,于是带着这个思路去进行百度探索 2、一开始我去寻找 ImageReader.OnImageAvailableListener 这个问题 var afterBitmap: Bitmap? null/**监听拍照的图片 */private val imageAvailableListener ImageRead…

算法 贪心3 || 1005. K 次取反后最大化的数组和 134. 加油站 135. 分发糖果

1005. K 次取反后最大化的数组和 思路:给数组按照绝对值大小排序,优先将负数转成正数。如果此时 k % 2 1 。最后再将绝对值最小的值变成负数(该值可能原本是负数) 而不是直接从小到大排序。 例如-8,-5,-5…

Zebec Protocol 出席香港 Web3 峰会,带来了哪些信息?

梳理香港加密新政的细节,一个明确的脉络是,香港加密新政的整体目的是令虚拟资产交易明确化和合法化,通过不断完善的监管框架,促进香港虚拟资产行业的可持续和负责任地发展。 在加强合规和持牌经营的监管思路下,长期审…

JavaScript|JS修仙篇|一本就够了|笔记|(超详细|保姆级)

🙈作者简介:练习时长两年半的Java up主 🙉个人主页:老茶icon 🙊 ps:点赞👍是免费的,却可以让写博客的作者开兴好久好久😎 📚系列专栏:Java全栈,计…

common markdown命令大全,控制文章格式

直接上教程 提到Markdown,很多人首先想到的是简单、Easy等等。的确,Markdown为简单而生。Markdown是由一个叫 JOHN GRUBER 的哥们发明的,它的语法用一篇文章就可以说完。不相信吗?让我们来试试看... 基础语法 标题 Markdown支持6…

搭建windows下基于VSCode的C++编译和调试环境

VSCode是目前比较流行的IDE,因为它插件丰富,依据需求扩展,非常方便。 本文记录搭建windows下基于VSCode的C编译和调试环境的过程。 网上关于此问题的帖子比较多,找了好几个也没有试验成功,最后发现还是按照VScode的官方…

揭秘阿里新大招:大模型只是前菜

技术的代际变革往往对商业格局产生深远影响。眼下,随着产业各界对大模型的投入布局加深,一个业界共识逐渐诞生:大模型正在改变云生态,将为云计算行业带来新的奇点。 在过去的一段时间里,市场研究机构IDC在2022年底的预…

Unity和Visual studio开发调试环境配置-工具插件安装和配置

在Unity开发中,常用C#脚本进行功能开发,需要用到Visual Studio进行开发和调试,需要分别在Unity3d和Visual Studio中安装插件和工具才能更好的进行开发和调试。 visual studio安装Unity扩展工具 visual studio中“工具”→“获取工具和功能”…

Leetcode.1019 链表中的下一个更大节点

题目链接 Leetcode.1019 链表中的下一个更大节点 Rating : 1571 题目描述 给定一个长度为 n 的链表 head 对于列表中的每个节点,查找下一个 更大节点 的值。也就是说,对于每个节点,找到它旁边的第一个节点的值,这个节…

[Python工匠]输出②数值与字符串

2.1 基础知识 2.1.1 数值基础 在Python中,一共存在三种内置数值类型:整型(int)、浮点型(float)和复数类型(complex)。 在大多数情况下,我们只需要用到前两种类型&#x…

SAR ADC系列23:异步SAR逻辑

异步sar逻辑的引入: 原因1:提高转换速度 ■ 同步时钟从第一个比较周期到最后一个比较周期长度都是相等的。对于Latch比较器,信号幅度越小,比较时间越长(参考latch时域响应那一节)。为了保证比较器…

Linux串口出厂测试工具与使用说明

1、说明 本文针对Linux系统上如何对各类串口硬件进行出厂测试进行硬件连接和软件使用说明,提供的软件测试工具wchsertest,适用于USB、PCI、PCIe转串口设备等、同样也适用于原生ttyS串口。 2、串口测试硬件连接 在测试前,需要制作单独的硬件…

寸照换底色技巧大全,超详细图文教程

在日常的设计工作中,我们常常需要将图片的背景色进行修改,以适应不同的场景和需求。其中最常用的方法就是寸照换底色技巧。本文将为大家介绍一些常见的寸照换底色技巧,并提供超详细的图文教程,帮助大家轻松完成这项任务。 一、使…

2023最新面试题-Java-6

1. Date API Java 8 在包java.time下包含了一组全新的时间日期API。新的日期API和开源的Joda-Time库差不多,但 又不完全一样,下面的例子展示了这组新API里最重要的一些部分: Clock类提供了访问当前日期和时间的方法,Clock是时区敏…

springboot加载命令行参数ApplicationArguments

往期文章 springcloud整合knike4j聚合微服务接口文档 spring源码 - 条件注解ConditionnalOnClass的原理分析 springboot项目实现导出pdf功能,这也太简单了吧 目录 文章目录往期文章目录一、介绍二、通过应用程序参数获取配置1. 通过bean获取应用程序参数2. 通过V…

在外web浏览器远程访问jupyter notebook服务器

文章目录前言视频教程1. Python环境安装2. Jupyter 安装3. 启动Jupyter Notebook4. 远程访问4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口5. 固定公网地址转载自远控源码文章:公网远程访问jupyter notebook【cpolar内网穿透】 前言 Jupyter Notebook&#…