梦晨 发自 凹非寺
量子位 | 公众号 QbitAI

开源大模型火爆,已有大小羊驼LLaMA、Vicuna等很多可选。

但这些羊驼们玩起来经常没有ChatGPT效果好,比如总说自己只是一个语言模型、没有感情blabla,拒绝和用户交朋友。

归根结底,是这些模型没有ChatGPT那么对齐(Alignment),也就是没那么符合人类用语习惯和价值观。

为此,港科大LMFlow团队提出全新对齐算法RAFT,轻松把伯克利Vicuna-7b模型定制成心理陪伴机器人,从此AI会尽力做你的朋友。

相较于OpenAI所用RLHF对齐算法的高门槛,RAFT(Reward rAnked Fine-Tuning)易于实现,在训练过程中具有较高的稳定性,并能取得更好的对齐效果。

并且任意生成模型都可以用此算法高效对齐,NLP/CV通用

用在Stable Diffusion上,还能对齐生成图片和提示词,让模型生成更加符合提示词描述的图片。

另外,团队特别提示RAFT的对齐训练过程中生成与训练过程完全解耦。

这样就可以在生成过程中利用一些魔法提示词 (magic prompts),让最终对齐的模型不需要魔法提示词也能得到好的效果。从而大大减少了提示词编写的难度!

可以说,RAFT为AIGC社区的研究者和工作者提供了一种新的可选的AI对齐策略。

RAFT模型对齐

OpenAI在ChatGPT前身Instruct论文中介绍了基于人类反馈的强化学习(RLHF)算法。

首先利用人类标注数据训练一个打分器 (reward model),然后通过强化学习算法(如PPO)来调节模型的行为,使得模型可以学习人类的反馈。

但PPO等强化学习算法高度依赖反向梯度计算,导致训练代价较高,并且由于强化学习通常具有较多的超参数, 导致其训练过程具有较高的不稳定性。

相比之下,RAFT算法通过使用奖励模型对大规模生成模型的生成样本进行排序,筛选得到符合用户偏好和价值的样本,并基于这些样本微调一个对人类更友好的AI模型。

具体而言,RAFT分为三个核心步骤:

(1)数据收集:数据收集可以利用正在训练的生成模型作为生成器,也可以利用预训练模型(例如LLaMA、ChatGPT,甚至人类)和训练模型的混合模型作为生成器,有利于提升数据生成的多样性和质量。

(2)数据排序:一般在RLHF中我们都拥有一个与目标需求对齐的分类器或者回归器,从而筛选出最符合人类需求的样本。

(3)模型微调:利用最符合人类需求的样本来实现模型的微调,使得训练之后的模型能够与人类需求相匹配。

在RAFT算法中,模型利用了更多次采样 (当下采样后用以精调的样本一定时),和更少次梯度计算(因为大部分低质量数据被reward函数筛选掉了),让模型更加稳定和鲁棒。

同时,在某些情况下, 由于有监督微调本身对于超参数敏感性更低, 有更稳健的收敛性, 在相同reward情况下,RAFT可以拥有更好的困惑度 (perplexity, 对应其生成多样性和流畅性更好)。

完整算法如下所示:

定制垂直领域GPT

作者在多个任务上进行了实验,首先是正向影评补全。

作者实验发现,给出一个电影评论的起始句,RAFT微调后的大模型可以轻松补齐电影评论,而且更加积极和流畅。

如下图所示,LLaMA未经调整的影评会以随机概率输出正面和负面的评论,RAFT和PPO都能够将评论的态度倾向正面。

在基于Vicuna制作的一个心理陪伴机器人演示中,作者模拟了一个因为考试失利而心情低落的人和机器人在聊天。

可以看到在使用RAFT进行对齐之前,模型说自己没有情感和感情,拒绝和人类交友。

但是在RAFT对齐之后,模型的共情能力明显增强,不断地在安慰人类说,“虽然我是一个AI,但是我会尽力做你的朋友”。

增强Stable Diffusion

除了在语言模型上的对齐能力以外,作者还在扩散模型上验证了文生图的对齐能力,这是之前PPO算法无法做到的事情。

原始Stable Diffusion在256x256分辨率生成中效果不佳 ,但经过RAFT微调之后不仅产生不错的效果,所需要的时间也仅为原版的20%。

对计算资源不足的AIGC爱好者来说无疑是一个福音。

除了提升256分辨率图片的生成能力以外,RAFT还能够对齐生成图片和提示词,让模型生成更加符合提示词描述的图片。

如下图所示,给出提示词“莫奈风格的猫”,原始的stable diffusion生成的图片里,大多数没有猫,而是生成了“莫奈风格”的其他作品,这是由于“莫奈作品”中鲜有猫的身影,而stable diffusion没有完全理解文本的含义。

而经过RAFT微调后,stable diffusion认识到“猫”的概念,所以每张图片里都会有猫的身影。

RAFT来自香港科技大学统计和机器学习实验室团队,也是开源LMFlow模型微调框架的一次重大升级。

LMFlow包括完整的训练流程、模型权重和测试工具。您可以使用它来构建各种类型的语言模型,包括对话模型、问答模型和文本生成模型等。

自框架发布两周以来,LMFlow团队仍在进行着密集的迭代,并在4月9号正式上线了RAFT算法,补齐了AI对齐的训练流程。

LMFlow框架的逐步完善,将更加便利于科研人员和开发者在有限算力下微调和部署大模型。

论文:https://arxiv.org/abs/2304.06767

GitHub:https://github.com/OptimalScale/LMFlow

文档: https://optimalscale.github.io/LMFlow/examples/raft.html

或点击阅读原文跳转到GitHub页面

《中国AIGC算力产业全景报告》征集启动

AIGC算力需求爆发,谁将在此次算力产业变革中脱颖而出?

量子位《中国AIGC算力产业全景报告》《最值得关注的AIGC算力玩家》正式启动对外征集,期待有更多优秀的机构产品、案例与技术能够被大众看到。

点这里

玩不起RLHF?港科大开源高效对齐算法RAFT「木筏」,GPT扩散模型都能用相关推荐

  1. 玩不起RLHF?港科大开源高效对齐算法木筏,GPT扩散模型都能用

    原文:玩不起RLHF?港科大开源高效对齐算法木筏,GPT扩散模型都能用_训练_人类_微调 开源大模型火爆,已有大小羊驼LLaMA.Vicuna等很多可选. 但这些羊驼们玩起来经常没有ChatGPT效果 ...

  2. 对标GPT核心技术RLHF!港科大开源RAFT「木筏」,适用GPT扩散模型

    梦晨 发自 凹非寺  量子位 | QbitAI 开源大模型火爆,已有大小羊驼LLaMA.Vicuna等很多可选. 但这些羊驼们玩起来经常没有ChatGPT效果好,比如总说自己只是一个语言模型.没有感情 ...

  3. 在小树林飞也能又快又稳,这是港科大沈劭劼组的「猛禽」无人机重规划框架(这也符合我理想中的无人机,而且他们这说明这种室内避障无人机是可以做得很小的。)

    这也符合我理想中的无人机,而且他们这说明这种室内避障无人机是可以做得很小的. 摘自:https://mp.weixin.qq.com/s/xzY3GOLzd4fgy7Ff-cSigg 在小树林飞也能又 ...

  4. EMNLP2021 “Transformer+预训练”再下一城,港科大开源高效的多模态摘要总结网络...

    关注公众号,发现CV技术之美 ▊ 写在前面 多模态摘要总结(Multimodal abstractive summarization,MAS)模型总结了视频(视觉模态)及其相应的文本(文本模态)的知识 ...

  5. 不仅搞定“梯度消失”,还让CNN更具泛化性:港科大开源深度神经网络训练新方法

    原文链接:不仅搞定"梯度消失",还让CNN更具泛化性:港科大开源深度神经网络训练新方法 paper: https://arxiv.org/abs/2003.10739 code: ...

  6. 图像反光能被一键去除了?港科大开源RFC,仅用一个操作,强反光也能完美去除|CVPR2021...

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨雷晨阳 审稿丨邓富城 编辑丨极市平台 导读 本文介绍一篇来自香港科技大学中稿CVPR2021的工 ...

  7. 国产深度学习框架迎来高光时刻,继清华 Jittor开源后,旷视「天元」纷纷重磅开源!...

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 1956年,美国的达特茅斯会议成为人工智能开启的标志性事件.同年,中国第一批自主制 ...

  8. 阿里云机器学习PAI开源中文NLP算法框架EasyNLP,助力NLP大模型落地

    作者:临在.岑鸣.熊兮 一 导读 随着 BERT.Megatron.GPT-3 等预训练模型在NLP领域取得瞩目的成果,越来越多团队投身到超大规模训练中,这使得训练模型的规模从亿级别发展到了千亿甚至万 ...

  9. 官方文档太辣鸡?TensorFlow 2.0开源工具书,30天「无痛」上手

    本文转载自机器之心. 项目作者:lyhue1991 「官方文档排布凌乱.搜索难用.API 丑陋不堪--」这是很多人对 TensorFlow 官方文档的吐槽.但吐槽归吐槽,到了工业界,你是无论如何也绕不 ...

最新文章

  1. linux管理员工具
  2. 一款蓝牙音频无线传输设备上拆下的光电管
  3. python 32位和64位的区别在哪
  4. 最小公倍数(Least_Common_Multiple)
  5. boost::callable_traits的is_rvalue_reference_member的测试程序
  6. centos 7 No package python-dev available
  7. error C2065: “cout”: 未声明的标识符
  8. 问题管理——“斩草需除根”
  9. java解析excel生成sql文件
  10. Tomcat 启动耗时严重
  11. 开机没有自检声,显示器无信号及各版本BIOS报警信号大全 转
  12. 计算机组成原理面试常见问题
  13. EAS 后台事务定时执行设置
  14. EISeg——应用于语义分割的自动标注软件
  15. DIVA靶场测试APP客户端不规范项(一)
  16. [推荐]“痘痘”与所对应的疾病
  17. 订单紧急变动?交期无法确定?APS了解一下
  18. java 线程 中断标志位
  19. [Pandas] 分组比例计算求和
  20. Robin六种常用负载均衡算法源码解析

热门文章

  1. 4. lua调试脚本编写
  2. Java项目精选|Java毕业设计项目源码
  3. 前端photoshop 切图神器cutterman
  4. 二进制负数、补码、原码、反码、按位非
  5. OMAP3630 Linux I2C总线驱动分析
  6. pyinstall打包工具
  7. 华为IPsce以及GRE over IPSec配置练习
  8. 宜家一元甜筒背后的奥秘:如何利用峰终定律提升用户体验
  9. 大一暑假实习day5_3
  10. 【华为机试真题详解】获得完美走位【2022 Q4 | 100分】