目录
从预测文本到遵循指令
安全遵循指令
模型微调
要点总结
对话智能体的进一步工作思考
首页 科技周边 人工智能 这些技术,ChatGPT和它的潜在竞争者们都在用

这些技术,ChatGPT和它的潜在竞争者们都在用

Apr 12, 2023 pm 01:13 PM
ai 技术

随着 ChatGPT 的出现以及随之而来的广泛讨论,RLHF、SFT、IFT、CoT 等晦涩的缩略词出现在公众面前,这都归功于 ChatGPT 的成功。这些晦涩的缩略词是什么?为什么它们如此重要?本文作者查阅了所有关于这些主题的重要论文,进行了分类总结。

ChatGPT 并不是第一个基于语言模型(LM)的对话智能体,事实上,许多机构在 OpenAI 之前发布过语言模型对话智能体,包括 Meta BlenderBot、Google LaMDA、DeepMind 的 Sparrow 和 Anthropic Assistant。一些机构也宣布建立开源聊天机器人的计划,并公开了路线图(如 LAION 的 Open-Assistant)。肯定还有其它机构在做同样的工作,只是没有宣布。

下表根据上面提到的 AI 聊天机器人是否可公开访问、训练数据、模型架构和评估的详细信息,对它们进行了比较。ChatGPT 没有相关数据,这里使用的是 InstructGPT 的资料,它是 OpenAI 的一个微调模型,被认为是 ChatGPT 的基础。

图片

尽管在训练数据、模型和微调方面存在许多差异,但这些聊天机器人也存在一些共性 —— 指令遵循(instruction following),即根据用户的指令,给出响应。例如让 ChatGPT 写一首关于微调的诗。 

图片

从预测文本到遵循指令

通常而言,基础语言建模的目标不足以让模型高效地遵循用户的指示。模型创建者还使用指令微调(Instruction Fine-Tuning,IFT),它可以在多样化任务上对基本模型进行微调,还能应用在情感分析、文本分类、摘要等经典 NLP 任务。

IFT 主要由三个部分组成:指令、输入和输出。输入是可选的,有些任务只需要指令,如上面的 ChatGPT 示例。输入和输出构成实例(instance)。给定的指令可以有多个输入和输出。相关示例如下([Wang et al., ‘22])。

图片

IFT 的数据通常使用人类的指令和语言模型 bootstrapped 的指令集合。对于 bootstraping,LM 会在零样本的情况下根据 prompt,生成新的指令、输入和输出。在每一轮中,模型都会得到从人类编写和生成模型中选择的样本的 prompt。人类和模型贡献数据集的情况可以用频谱表示,如下图所示。

图片

一种是纯模型生成的 IFT 数据集如 Unnatural Instructions,另一种是集社区努力、手动创建的指令如 Super natural Instructions。位于这两者之间,选用高质量种子数据集然后进行 bootstrap 如 Self-instruct。为 IFT 收集数据集的另一种方法是将现有高质量众包 NLP 数据集用于各种任务(包括 prompting),并使用统一的模式或不同的模板将这些数据集作为指令,相关工作包括 T0、Natural instructions 数据集、FLAN LM 和 OPT-IML。

安全遵循指令

LM 使用微调后的指令,可能并不总是生成有用安全的响应。这种行为的示例包括无效回应(托词),总是给出诸如「对不起,我不明白」之类的无效回答,或者对用户关于敏感话题的输入做出不安全的回应。

为了解决这种问题,模型开发人员使用监督式微调(Supervised Fine-tuning, SFT),在高质量的人类标记数据上微调基础语言模型,以实现有效和安全的响应。

SFT 和 IFT 紧密相连。指令调优可以看作是监督式微调的子集。在最近的文献中,SFT 阶段通常用于安全主题,而不是在 IFT 之后进行的指令特定主题。未来这种分类和描述会有更清晰的用例和方法。

图片

谷歌的 LaMDA 也是根据一组规则对带有安全注释的对话数据集微调。这些规则通常是由模型创建者预先定义和制定的,包含一系列广泛的主题,如有害、歧视和错误信息。

模型微调

另一方面,OpenAI 的 InstructGPT、DeepMind 的 Sparrow 和 Anthropic 的 ConstitutionalAI 均使用从人类反馈中强化学习(reinforcement learning from human feedback, RLHF)的技术。在 RLHF 中,模型响应基于人类反馈(如选择一个更好的答案)进行排序,然后用这些带注释的响应训练模型,以返回 RL 优化器的 scalar 奖励,最后通过强化学习训练对话智能体来模拟偏好模型。

思维链(Chain-of-thought, CoT)是指令演示的特殊情况,通过从对话智能体中引出逐步推理生成输出。用 CoT 进行微调的模型使用带有逐步推理的人类注释的指令数据集。如下示例所示,橙色标记代表指令,粉色标记代表输入和输出,蓝色标记代表 CoT 推理。

图片

用 CoT 来微调的模型在涉及常识、算术和符号推理的任务上表现得更好。CoT 进行微调也显示出对实现无害性非常有效(有时比 RLHF 做得更好),并且模型不会回避并产生「对不起,我无法回答这个问题」等回复。

图片

要点总结

本文要点总结如下:

1、 与预训练数据相比,只需要非常小的一部分数据来对指令进行微调。

2、 监督式微调使用人工标注使模型输出更安全和更有帮助。

3、 CoT 微调提高模型在逐步思考任务上的性能,并减少了它们在敏感话题上的无效响应或回避不答。

对话智能体的进一步工作思考

最后,作者对未来对话智能体的发展给出了自己的一些思考。

1、 RL 在从人类反馈中学习有多重要?可以通过 IFT 或 SFT 中的高质量数据训练获得与 RLHF 一样的性能吗?

2、 与在 LaMDA 中使用 SFT 相比,在 Sparrow 中使用 SFT+RLHF 的安全性如何?

3、 IFT、SFT、CoT 和 RLHF,需要怎样程度的预训练?tradeoff 是什么?应该使用的最好的基础模型是什么?

4、 文中介绍的许多模型都是经过精心设计,工程师们专门收集导致失败的模式,并根据已处理的问题改善未来的训练(prompts 和方法)。要如何系统地记录这些方法的效果并重现它们?

以上是这些技术,ChatGPT和它的潜在竞争者们都在用的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
威尔R.E.P.O.有交叉游戏吗?
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

centos关机命令行 centos关机命令行 Apr 14, 2025 pm 09:12 PM

CentOS 关机命令为 shutdown,语法为 shutdown [选项] 时间 [信息]。选项包括:-h 立即停止系统;-P 关机后关电源;-r 重新启动;-t 等待时间。时间可指定为立即 (now)、分钟数 ( minutes) 或特定时间 (hh:mm)。可添加信息在系统消息中显示。

如何检查CentOS HDFS配置 如何检查CentOS HDFS配置 Apr 14, 2025 pm 07:21 PM

检查CentOS系统中HDFS配置的完整指南本文将指导您如何有效地检查CentOS系统上HDFS的配置和运行状态。以下步骤将帮助您全面了解HDFS的设置和运行情况。验证Hadoop环境变量:首先,确认Hadoop环境变量已正确设置。在终端执行以下命令,验证Hadoop是否已正确安装并配置:hadoopversion检查HDFS配置文件:HDFS的核心配置文件位于/etc/hadoop/conf/目录下,其中core-site.xml和hdfs-site.xml至关重要。使用

CentOS上GitLab的备份方法有哪些 CentOS上GitLab的备份方法有哪些 Apr 14, 2025 pm 05:33 PM

CentOS系统下GitLab的备份与恢复策略为了保障数据安全和可恢复性,CentOS上的GitLab提供了多种备份方法。本文将详细介绍几种常见的备份方法、配置参数以及恢复流程,帮助您建立完善的GitLab备份与恢复策略。一、手动备份利用gitlab-rakegitlab:backup:create命令即可执行手动备份。此命令会备份GitLab仓库、数据库、用户、用户组、密钥和权限等关键信息。默认备份文件存储于/var/opt/gitlab/backups目录,您可通过修改/etc/gitlab

CentOS上PyTorch的GPU支持情况如何 CentOS上PyTorch的GPU支持情况如何 Apr 14, 2025 pm 06:48 PM

在CentOS系统上启用PyTorchGPU加速,需要安装CUDA、cuDNN以及PyTorch的GPU版本。以下步骤将引导您完成这一过程:CUDA和cuDNN安装确定CUDA版本兼容性:使用nvidia-smi命令查看您的NVIDIA显卡支持的CUDA版本。例如,您的MX450显卡可能支持CUDA11.1或更高版本。下载并安装CUDAToolkit:访问NVIDIACUDAToolkit官网,根据您显卡支持的最高CUDA版本下载并安装相应的版本。安装cuDNN库:前

docker原理详解 docker原理详解 Apr 14, 2025 pm 11:57 PM

Docker利用Linux内核特性,提供高效、隔离的应用运行环境。其工作原理如下:1. 镜像作为只读模板,包含运行应用所需的一切;2. 联合文件系统(UnionFS)层叠多个文件系统,只存储差异部分,节省空间并加快速度;3. 守护进程管理镜像和容器,客户端用于交互;4. Namespaces和cgroups实现容器隔离和资源限制;5. 多种网络模式支持容器互联。理解这些核心概念,才能更好地利用Docker。

centos安装mysql centos安装mysql Apr 14, 2025 pm 08:09 PM

在 CentOS 上安装 MySQL 涉及以下步骤:添加合适的 MySQL yum 源。执行 yum install mysql-server 命令以安装 MySQL 服务器。使用 mysql_secure_installation 命令进行安全设置,例如设置 root 用户密码。根据需要自定义 MySQL 配置文件。调整 MySQL 参数和优化数据库以提升性能。

CentOS下GitLab的日志如何查看 CentOS下GitLab的日志如何查看 Apr 14, 2025 pm 06:18 PM

CentOS系统下查看GitLab日志的完整指南本文将指导您如何查看CentOS系统中GitLab的各种日志,包括主要日志、异常日志以及其他相关日志。请注意,日志文件路径可能因GitLab版本和安装方式而异,若以下路径不存在,请检查GitLab安装目录及配置文件。一、查看GitLab主要日志使用以下命令查看GitLabRails应用程序的主要日志文件:命令:sudocat/var/log/gitlab/gitlab-rails/production.log此命令会显示produc

CentOS上PyTorch的分布式训练如何操作 CentOS上PyTorch的分布式训练如何操作 Apr 14, 2025 pm 06:36 PM

在CentOS系统上进行PyTorch分布式训练,需要按照以下步骤操作:PyTorch安装:前提是CentOS系统已安装Python和pip。根据您的CUDA版本,从PyTorch官网获取合适的安装命令。对于仅需CPU的训练,可以使用以下命令:pipinstalltorchtorchvisiontorchaudio如需GPU支持,请确保已安装对应版本的CUDA和cuDNN,并使用相应的PyTorch版本进行安装。分布式环境配置:分布式训练通常需要多台机器或单机多GPU。所

See all articles