文章主题:AI, ChatGPT, GPT-4, 模型训练
从一个AI学习者的视角来看待ChatGPT,站在业界巨匠的肩头之上探索各种技术细节。作为一名学术界的小型工匠,我的职责就是修复和补充各位专家所阐述的各项技术,以便您能更深入地了解这些知识。如果您想要获得更全面的洞察,请务必阅读文末部分来自真正的大佬们的学术成果。
全文阅读时长:15min
背景介绍
ChatGPT太牛批引起了全球关注,不光卷AI圈内人,还连带卷了圈外人。
发展现状
ChatGPT和去年公布的InstructGPT是一对姊妹模型,它们有时被称作GPT-3.5。这两款模型是在GPT-4发布之前的预热模型,因此人们期待着即将到来的GPT-4将会有更多的突破和创新。据传,GPT-4将是一个多模态模型,这意味着它能够理解和处理多种类型的信息,而不仅仅是文本。这将使得回复内容更加丰富多彩,不仅限于纯文本的回答,而是可以结合各种模态的信息,如视频、图片和语音等。这样的改进无疑将极大地提高用户体验,使AI助手更加智能和人性化。
GPT进化史模型架构
ChatGPT和InstructGPT在模型架构和训练策略上具有高度相似性,它们均采用了指令学习和人工反馈强化学习(RLHF)的方法来优化模型的表现。尽管两者在数据收集方式上存在差异,但这并不会影响我们对ChatGPT模型及其训练过程的理解。事实上,借助于InstructGPT的研究成果,我们已可以对ChatGPT的模型结构和训练细节有更深入的认识。
核心技术
指令学习(Instruct learning):其实就是prompt learningRLHF(Reinforcement Learning from Human Feedback):基于人工反馈的强化学习训练步骤
在本篇文章中,我们将深入探讨 InstructGPT/ChatGPT 的训练过程,并将其拆分为三个主要阶段:SFT、RM 和 PPO。接下来,我们将逐一剖析这些阶段的原理及实施方法,以便读者更好地理解这些先进的训练技术。
InstructGPT/ChatGPT模型架构1.SFT
ChatGPT 作为一个对话模型,其工作原理是依赖于一种名为SFT的技术,即Supervised FineTune。这种技术的具体操作是对 GPT-3 进行有监督的微调,旨在优化数据集。换句话说,SFT 的主要目的是通过使用人类喜欢的答案作为训练数据,来提高机器生成的内容与人类喜好程度的匹配度。
GPT原本是使用互联网海量语料库训练的大模型,但互联网上的语料非常杂乱,不一定是人类想要的答案,GPT依靠此数据生成的答案正确性和有用性不能保证。在此基础上,对数据集优化,把人们喜欢的答案喂给已经训练好的GPT再次微调,这样模型可以对齐人的思考模式得到提升。可以理解成升级后的模型只订阅人们喜欢的内容。对话机器人的雏形已经生成,它可以根据问题生成一系列的答案,但是缺陷是它不具备人的判断能力。机器生成了答案A,B,C,D,但哪个是想要的呢的答案呢?由此,引入RM奖励模型。SFT工作流2.RM
强化学习(Reinforcement Learning,简称RM)是一种先进的机器学习方法,其主要目标是通过不断与环境的交互来优化模型的性能。相较于传统的模型训练方式,RM能够为模型提供关于其生成内容质量的反馈,而非仅仅告知如何改进,这为模型提供了更大的探索空间,从而提高了其泛化能力。以下是实施RM的具体步骤:
首先,模型根据问题生成多个答案。人工对给定的答案进行排序和打分。机器通过人工打分的数据训练奖励模型,可以预测用户更喜欢哪个模型输出。RM工作流一个更通俗的例子,讲解SFT和RM的工作方式和区别:
SFT用「人工标注」的问题回答数据,并用监督性学习技术训练的自动回答问题的模型。RM用「人工打分」的问题回答数据,并用强化学习技术训练的自动给回答打分的模型,SFT是通过「人工标注」解决答案「有没有」的问题,RM则通过「人工打分」来解决答案「好不好」的问题。SFT和RM的工作方式和区别3.PPO
在此阶段,我们将之前训练好的SFT与RM两个模型融合,采用PPO(Proximal Policy Optimization)算法对SFT训练出的生成模型进行微调。接着,将生成的答案输入到RM评分模型中,根据RM的损失函数持续优化生成模型。这一过程的具体操作步骤如下:
由第一步fine-tune后的SFT模型来初始化PPO策略模型,由第二部生成的RM模型初始化价值函数。从PPO数据集中随机采样一个prompt,并通过第一步的PPO策略模型生成输出结果answer。对prompt和answer,带入RM模型计算奖励值reward。利用reward来更新PPO策略模型参数。重复2~4步,直至PPO策略模型收敛。强化学习和预训练模型在过去两年里成为AI领域的热点研究方向。尽管一些科研工作者认为强化学习并不适合应用于预训练模型,因为难以通过模型的输出内容建立奖励机制,但InstructGPT/ChatGPT却成功地实现了这一突破。该算法通过融合人工标注,将强化学习引入到预训练语言模型中,这是此方法的最大创新之处。
PPO工作流参考文献
https://arxiv.org/pdf/2203.02155.pdf
https://zhuanlan.zhihu.com/p/590311003
AI时代,拥有个人微信机器人AI助手!AI时代不落人后!
免费ChatGPT问答,办公、写作、生活好得力助手!
搜索微信号aigc666aigc999或上边扫码,即可拥有个人AI助手!