ChatGPT技术原理

article/2025/4/22 3:32:37

ChatGPT技术原理

    • ChatGPT技术原理概要
        • 第一阶段:冷启动阶段的监督策略模型
        • 第二阶段:训练回报模型,reward model
        • 第三阶段:强化学习增强预训练模型的能力
    • ChatGPT技术相关简介
        • L2R(learning to rank)
    • 相关引用

ChatGPT技术原理概要

第一阶段:冷启动阶段的监督策略模型

  • GPT3.5 + 用户提供的prompt + 专业标注人员提供的对应prompt高质量答案,<prompt,answer>fine-tune GPT3.5,初步理解人类prompt中蕴含的意图;并根据意图给出相对高质量的回答的能力。

第二阶段:训练回报模型,reward model

  • 新采样用户提供的prompt,使用第一阶段fine-tune的冷启动模型,对于每个prompt,由冷启动模型生成K个不同答案:<prompt,answer1>,<prompt,answer2>…<prompt,answerK>数据;
  • 标注人员对K个结果按特定标准(如相关性,信息熵,有害信息等)进行排序,给出K个结果的排名;
  • 使用上述标注数据按照pair-wise L2R(learning to rank)训练回报模型,K个排序结果,两两组合,形成 K! / [(K-2)! * 2!]个训练数据;
    • 回报模型接收一个输入<prompt,answer>,输出评价回答质量高低的回报分数score;
    • 对于任一训练数据<answer1,answer2>,如果answer1>>answer2,回报模型的Score(<prompt,answer1>) > Score(<prompt,answer2>),或者说Loss(<prompt,answer1>) < Loss(<prompt,answer2>)。

第三阶段:强化学习增强预训练模型的能力

  • 新采样prompt,冷启动模型来初始化PPO模型参数;
  • 对于新采样的prompt指令,使用PPO模型生成答案answer,并使用第二阶段训练好的RM模型给出answer质量评估的回报分数score,该score等价于RM模型赋予answer的整体reward(answer是有单词序列构成);
  • answer的整体reward相当于单词序列的最终回报,基于此,即可把每个单词看做一个时间步,将reward由后向前依次传递,进而产生的策略梯度更新PPO模型参数。

ChatGPT技术相关简介

L2R(learning to rank)

详见 Learning to Rank简介

简单介绍下pair-wise: pair-wise用于给定查询下,衡量两个文档间的相对相关度

  • 相对相关度:给定查询 q i q_{i} qi 的一个真实文档序列,只需考虑任意两个相关度不同的文档之间的相对相关度: d i > d j d_{i}>d_{j} di>dj,或 d i < d j d_{i}<d_{j} di<dj
    pair-wise
  • 如上图中二分类模型,输入为文档序列中的文档两两组合(一对,pair命名由来),标签为+1和-1:如果两两组合的文档对中的第一个文档得分比第二个高,标签为+1,反之为-1。

简单归纳下,pair-wise中排序模型 h θ h_{θ} hθ能够让正确候选文档的得分高于错误候选文档。给定一个查询,pair-wise L2R学习候选答案对,并预测哪个句子是目标查询的最佳文档。

若训练样例是 ( q i , c i + , c i − ) (q_{i}, c_{i}^+, c_{i}^-) (qi,ci+,ci),其中 q i q_{i} qi为给定查询, c i + c_{i}^+ ci+是正确候选文档, c i − c_{i}^- ci是错误候选文档中的一个。

  • 损失函数为 T r i p l e L o s s Triple Loss TripleLoss:
    L = m a x { 0 , m − h θ ( q i , c i + ) + h θ ( q i , c i − ) } L = max\left\{0, m- h_{θ}(q_{i}, c_{i}^+)+ h_{θ}(q_{i}, c_{i}^-)\right\} L=max{0,mhθ(qi,ci+)+hθ(qi,ci)}

  • m m m为边界的阈值:如果 m − h θ ( q i , c i + ) + h θ ( q i , c i − ) > 0 m- h_{θ}(q_{i}, c_{i}^+)+ h_{θ}(q_{i}, c_{i}^-) > 0 mhθ(qi,ci+)+hθ(qi,ci)>0,也就是 h θ ( q i , c i + ) − h θ ( q i , c i − ) < m h_{θ}(q_{i}, c_{i}^+)- h_{θ}(q_{i}, c_{i}^-) < m hθ(qi,ci+)hθ(qi,ci)<m,则损失函数 L > 0 L>0 L>0,这时模型把非正确的文档排在正确文档之上;如果 m − h θ ( q i , c i + ) + h θ ( q i , c i − ) = 0 m- h_{θ}(q_{i}, c_{i}^+)+ h_{θ}(q_{i}, c_{i}^-) = 0 mhθ(qi,ci+)+hθ(qi,ci)=0,也就是 h θ ( q i , c i + ) − h θ ( q i , c i − ) > = m h_{θ}(q_{i}, c_{i}^+)- h_{θ}(q_{i}, c_{i}^-) >= m hθ(qi,ci+)hθ(qi,ci)>=m,模型把正确的文档排在非正确文档之上。

  • 损失函数的目的就是让正确文档的得分-错误文档的得分大于m,这样预测阶段时,得分最高的候选文档会被当做正确的文档。

相关引用

  1. Learning to Rank: pointwise 、 pairwise 、 listwise
  2. Learning to Rank简介

http://chatgpt.dhexx.cn/article/XwDFPW8v.shtml

相关文章

基于DeepSpeed训练ChatGPT

基于DeepSpeed训练ChatGPT 最少只需一张32G GPU&#xff0c;自己也可以训练一个ChatGPT&#xff01; 最近微软发布了一个基于DeepSpeed的训练优化框架来完成ChatGPT类模型的训练&#xff0c;博主对其进行了研究并通过此博文分享相关技术细节。 一、配置预览 1、开源仓库&…

语言模型 ChatGPT MOSS 使用体验分享

今早起床听闻复旦大学自然语言处理实验室团队发布了国内首个类ChatGPT对话语言模型MOSS。在好奇心的驱使下&#xff0c;我向贵实验室的小伙伴要来内测邀请码试玩了一番&#xff0c;顺便把MOSS与ChatGPT的试玩结果进行了对比&#xff0c;以下是部分对话历史记录&#xff1a; 目录…

简评ChatGPT

朋友发来两幅图片&#xff0c;内容是让ChatGPT介绍我&#xff08;庄晓立/LIIGO&#xff09;&#xff0c;结果闹了大笑话。 这第一幅图&#xff0c;它介绍的内容完全与我无关&#xff0c;我无从知道是否真的有这个与我同名同姓的人&#xff0c;也无从知道其事迹是否真实&#x…

ChatGPT的评估指标有哪些?微调与上下文学习是否存在相似性?

NLP 分很多的任务&#xff0c;不同的任务有不同的指标来度量模型质量&#xff0c;比如AUC&#xff0c;Precision/Recall是分类模型的度量指标。 ChatGPT可以看作一个生成式语言模型&#xff0c;简单说就是给它输入一段文字&#xff0c;它会输出另一段文字&#xff0c;当然输出和…

如何评价一个新技术——以 ChatGPT 为例

开源社KAIYUANSHE 近期微信公众号订阅功能做调整啦&#xff01; 没有被星标的账号在信息流里可能不显示大图了&#xff01; 快星标⭐我们&#xff0c;就可以及时看到发布的文章啦&#xff01; STEP01 点击右上角标志 STEP02 点击【设为星标】 缘起 2015 年的时候&#xff0c;我…

对于chatGPT的评价-ChatGPT的内容生成

chatGPT的优缺点 ChatGPT是一种基于深度学习技术的自然语言处理算法&#xff0c;其相比传统的自然语言处理算法具有很多优势。下面是ChatGPT的优点和缺点&#xff1a; 优点&#xff1a; 可适应多种任务&#xff1a;ChatGPT是一个通用的自然语言处理算法&#xff0c;可以适应多…

建立自己的ChatGPT:LLama私有化部署及测试

大语言模型&#xff08;LLM&#xff09;现在非常流行&#xff0c;可惜ChatGPT等都不开源。大家没法搭建一个自己的环境来感受以下。幸好Meta开源了LLama&#xff0c;这是LLama的介绍&#xff1a; https://ai.facebook.com/blog/large-language-model-llama-meta-ai/ 具体技术…

windows下免费本地部署类ChatGpt的国产ChatGLM-6B

ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型&#xff0c;基于 General Language Model (GLM) 架构&#xff0c;具有 62 亿参数。结合模型量化技术&#xff0c;用户可以在消费级的显卡上进行本地部署&#xff08;INT4 量化级别下最低只需 6GB 显存&#xff09;。 Chat…

ChatGPT是怎么实现的?为什么它这么有效?

ChatGPT 能够自动生成类似于人类写作的文本&#xff0c;这一点非常引人注目&#xff0c;也令人意外。但它是如何实现的&#xff1f;为什么它能够如此出色地生成我们认为有意义的文本&#xff1f;我的目的是在这里概述ChatGPT内部的运行情况&#xff0c;并探讨它能够如此出色地产…

ChatGPT这么强大吗

ChatGPT和它带来的AI时代是一次新的科技革命&#xff0c;AI时代就此拉开序幕&#xff0c;我们必须紧跟时代&#xff0c;否则就会被时代抛弃。本星球分享chatgpt的最前沿应用和实战案例&#xff0c;同时会定期邀请业内大佬做分享。 为什么AI时代很恐怖&#xff0c;现在我们看到的…

< 每日闲谈:你真的了解 “ ChatGPT ” 嘛 ? >

< 每日闲谈&#xff1a;你真的了解 “ ChatGPT ” 嘛 &#xff1f; > &#x1f449; 前言&#x1f449; OpenAI的创立&#x1f449; ChatGPT有何过人之处&#xff1f;> 效果演示 &#x1f449; OpenAI看家之作 — GPT自然语言模型> GPT发展史> 里程碑-GPT3> …

我面试了 ChatGPT 的 PM (产品经理)岗位,它几乎得到了这份工作!!!

如何检测人工智能自信但肤浅的答案? How to detect the AI’s confident but shallow answers? 我面试过很多产品经理候选人,其中一种常规面试形式(在 PM 面试循环中非常标准)是产品Sense面试。受到最近推出的 ChatGPT 和 Jackie Bavaro 的以下推文的启发,我决定面试 Cha…

如何让ChatGPT成为你最佳的模拟面试官

正在上传…重新上传取消 ChatGPT云炬学长 1 人赞同了该文章 如何让ChatGPT成为你最佳的模拟面试官随着技术的不断发展&#xff0c;越来越多的企业开始使用人工智能面试官来帮助筛选候选人&#xff0c;ChatGPT作为其中的一种代表&#xff0c;正在受到越来越多的关注。那么如何…

chatGPT整理的前端面试题目(一)

1.HTML 部分 ​ 1.1HTML基础知识点 Html5 与 html4的区别&#xff1a; html5新增语义化标签&#xff0c;如<header> <nav>等 Html5新增表单控件&#xff0c;如<input type"date"> <input type"color">等 Html5新增多媒体标签&…

ChatGPT 当我面试官的一天

你想过ChatGPT作为面试官会是什么样吗&#xff1f; 各种题库刷了又刷&#xff0c;但是无法进行面试实战&#xff1b;这下终于可以通过ChatGPT来模拟面试了&#xff0c;简直不要太爽了~ 这里只是基础问题&#xff0c;你可以给他输入你的工作经验&#xff0c;所学技能来让他给你…

当我把chatGPT作为Java面试官,它问了我这些问题

向chatGPT提问 面试官&#xff1a;你好&#xff0c;欢迎参加我们的Java面试。请先自我介绍一下。 面试者&#xff1a;非常感谢&#xff0c;我是一名资深Java开发工程师&#xff0c;具有丰富的Java开发经验。我在过去的五年里&#xff0c;主要从事了企业级Java应用的设计、开发…

2023ChatGPT整理回答的Java高级工程师面试题

本文整理了一些 ChatGPT 回答的 java 面试题,希望能够帮助到更多的人! 死锁与活锁的区别,死锁与饥饿的区别? 死锁和活锁都是多线程并发编程中的问题,它们的区别主要在于线程是否能够继续执行。 死锁指的是两个或以上进程因竞争资源而造成的一种互相等待的现象。当多个线…

使用ChatGPT面向岗位制作简历、扮演面试官

探索ChatGPT&#xff0c;协助工作学习创作。公众号「阿杰与AI」回复AI&#xff0c;加入社群&#xff0c;一同探讨&#xff0c;一同成长&#xff0c;比他人更进一步。 我们一起维护一个完全免费开源知识库。 1.AI、OpenAI、MidJourney发展史2.ChatGPT们对今后社会生活的影响3.目…

当我用ChatGPT面试项目经理,真有趣

早上好&#xff0c;我是老原。 上周chatGPT4正式发布&#xff0c;又掀起了一股热潮。 百度也不甘落后&#xff0c;文心一言紧随其后&#xff0c;虽然并没有激起太大的浪花&#xff0c;但不妨碍打工人们的“饭碗焦虑“也变得越来越大。 尤其是当越来越多的人亲自体验了GPT后&…

【闲聊】我用ChatGPT参加了大数据面试

用Chat GPT试了试面试题&#xff0c;回答得比较简单。 问&#xff1a;你可以以应聘者的身份参加一场大数据程序员面试吗 答&#xff1a;可以 &#xff0c;如果您符合面试要求&#xff0c;可以参加大数据程序员面试。 问&#xff1a;那么为什么你要投递大数据开发这个岗位 答&am…