大白话chatGPT GPT的发展区别

news2024/12/24 10:24:34

大白话chatGPT & GPT的发展区别

  • 从GPT名字理解chatGPT
  • chatGPT三步曲
  • GPT-1到GPT-4
    • GPT-1~GPT-4的相同点
    • GPT-1~GPT-4的区别
      • GPT-1——pre-training + fine-tune,自监督学习=无监督预训练+有监督微调
      • GPT-2——zero-shot,无监督学习,多任务学习
      • GPT-3——zero-shot+few-shot,海量参数
      • GPT-4——多模态模型,海量参数
  • 相关参考文献积推荐阅读的文献

chatGPT今年年初的时候是非常火爆的,现在也有很多相关的应用和插件。当然现在也有很多新的技术出现,比如autoGPT,它实际上就是嵌套chatGPT。所以这里笔者我希望通过通俗易懂的语言描述一下chatGPT的原理。当然这里笔者是根据自己看的知识进行快速的印象中的总结,如果有不对的地方,非常欢迎指正,也欢迎大家互相学习与交流。

从GPT名字理解chatGPT

chatGPT它是基于GPT3的。GPT也就是Generative Pre-training Transformer模型。从名字上来看,其实也可以知道GPT模型其实有三个核心点:
在这里插入图片描述

  • 一个是Generative生成式,也就是说GPT它其实是一个生成模型,而且这个生成模型它是基于NLP领域的,所以chatGPT就可以看成一个文字接龙的生成式模型(从外观上看,像前端的流式输出)。
  • 第二个是Pre-train预训练,也就是说GPT是一个基于预训练微调的模型,而且GPT是基于大语言模型(LLM)的,因为需要有足够多的数据才能保证更好的语义理解和上文理解。
  • 第三个是Trasformer,也就是说GPT模型都使用了Transformer的架构,这就意味着它们都有编码器和解码器来处理输入输出并且都基于多头自注意力机制来实现的,这样子可以使模型关注会话中的不同部分,从而来推断出会话本身的含义和上下文。因为句子中不同词的重要性是不一样的。除此之外,GPT的解码器利用了掩码来进一步构建训练的数据集,这样子其实就像挖词填空,更加有利于模型学习文字跟文字的关系,更有利于文字接龙的准确性。
    如果对Transformer不是很理解,可以看我的另外一篇博客《从前端角度快速理解Transformer》。

chatGPT三步曲

因为chatGPT是基于GPT的嘛,所以它的原理其实跟GPT是有些类似的,但它引入评分反馈的训练机制来进行强化学习【人类反馈强化学习RLHF】。主要实现的流程也一样是三部曲:

  • 第 1 步:监督微调 (SFT) 模型,利用海量的问答式样本数据集对GPT模型的输出方向进行监督训练,引导GPT采用问答对话的形式进行内容输出。通过微调策略得到GPT-3.5模型。
  • 第 2 步:训练一个奖励模型(RM)。训练一个奖励模型对GPT-3.5模型的输出进行一个排序评分,就相当于一个老师,当给出一个问题和四个答案,老师负责按照人类的偏好给这些答案进行打分,将答案进行排序。所以这里的设计跟以往的模型不太一样,因为这里是对输出结果进行排序而不是取值或者取分布。【这里也是有监督数据集的】,基于对比的数据训练建立模型。
  • 第 3 步:利用强化学习最大化奖励。基于上面的两步,就可以拥有一个具备对话的GPT和一个能够按照人类偏好进行打分的奖励模型,因此到这里我们就可以利用强化学习来进行一步的自我训练,从而最大化第二步里面的评分。
    在这里插入图片描述
    通过上面的训练就可以得到最后的chatGPT模型。

GPT-1到GPT-4

GPT-1~GPT-4的相同点

GPT-1到GPT-4,包括chatGPT的结构其实都是大语言模型,都是基于Transformer的Decoder层,都秉承着不断堆叠Trasnformer的思想,通过不断替身训练的预料规模和质量,提升网络的参数量来完成进一步的迭代更新和性能优化,所以我们也可以看到GPT发展到现在它的参数量从以前GPT-1的1点多个亿的参数量到现在GPT-4的100万亿的参数量,增长速度我认为是堪比指数的😂。迭代速度也非常快。它们之间的区别主要在于它们的核心改进要点的不同(为什么是改进要点,因为它是继承发展的)。
在这里插入图片描述

GPT-1~GPT-4的区别

GPT-1——pre-training + fine-tune,自监督学习=无监督预训练+有监督微调

📎 论文:https://cdn.openai.com/research-covers/language-unsupervised/language_understanding_paper.pdf
📎 代码:GitHub - karpathy/minGPT: A minimal PyTorch re-implementation of the OpenAI GPT (Generative Pretrained Transformer) training

首先,GPT-1出现的背景原因有两个:一个是大量且高质量的标注数据是难以获取的,而且标签label并不一定唯一,存在界限模糊的现象;另外一个是以往的NLP模型大多是领域专家,也就是说它很难泛化到其他任务中,这也是它基于固定任务有监督学习所导致的。
在这里插入图片描述

所以GPT-1为了改善上面所说的两个局限性,提出了一种半监督(后面也普遍称之为自监督)的方法,也就是现在没有标注的数据上无监督地训练一个预训练模型,再在特定的任务上利用少量标注数据上有监督地训练一个分辨的微调模型。通过无监督预训练和有监督微调的结合的生成预训练模式来提高语言模型的泛化性同时也解决无大量标注数据的情况。
在这里插入图片描述

  • 与BERT的比较:是否带有Mask的Attention(GPT只看上问),在同等参数条件下 效果不如Bert-Base
  • GPT-1中:Decoder部分采用Masked-Attention(有遮盖的注意力机制,每个词只能看到它的上文)Encoder部分采用的是普通Attention(每个词可以同时看到上下文)为什么只看到上文,其实也可以理解,因为GPT是一个文字接龙的模型。而且长远来看,Masked-Attention是push模型更好理解文字的重要手段,毕竟在现实中,我们更希望培养模型知上文补下文,而不是单纯地做完形填空。
    在这里插入图片描述

GPT-2——zero-shot,无监督学习,多任务学习

📎 论文:https://cdn.openai.com/better-language-models/language_models_are_unsupervised_multitask_learners.pdf
📎 代码:GitHub - openai/gpt-2: Code for the paper "Language Models are Unsupervised Multitask Learners"

与GPT-1相比,GPT-2主要面向的是多任务的场景。GPT-2去掉了GPT-1中有监督的微调fine-tune阶段,也就是去掉根据特定任务微调的策略,使模型成为完全的无监督模型,能更多的去执行多样性的任务。所以,GPT-2也就相当于无监督的预训练阶段+zero-shot的下游任务。

🤔 什么是zero-shot?
这个概念其实来源于元学习,而且一般提到zero-shot,我们都会跟one-shot,few-shot进行对比。
Zero-shot:只给出任务描述(description)和任务提示(prompt)
One-shot:给出任务描述,给出一个例子(example),给出任务提示
Few-shot:给出任务描述,给出若干个例子,给出任务提示

因此,GPT-2希望利用Zero-shot这种类型的数据,让模型自己去学习怎么做,做什么,从而训练一个通用的模型。从上面样本的构建也可以看出来,利用zero-shot构建的样本模板更加符合人的一个输入输出(日常表达)。但如果后期还是不做微调的话,很难有较高的精度。

GPT-2的局限性:
在这里插入图片描述

GPT-3——zero-shot+few-shot,海量参数

📎 论文:[2005.14165] Language Models are Few-Shot Learners
📎 代码:GitHub - openai/gpt-3: GPT-3: Language Models are Few-Shot Learners

与GPT-2相比,GPT-3同样沿用去除微调的策略,继续沿用zero-shot来训练一个通用模型的思路。同时,为了解决zero-shot带来的问题,GPT-3引入了few-shot,用少量的文本来提升模型的有效性。
在这里插入图片描述

GPT-4——多模态模型,海量参数

GPT-4的重点可以其实就是工程化的一个过程——模块化(充分利用小模型),安全化(做了相关的安全保护措施),通用化(多模态模型使其可以接收多样化的数据,在更多的领域得以应用)。

GPT-4 的重点是提供更强大的功能和更有效的资源使用。它不是依赖大型模型,而是经过优化以充分利用较小的模型。通过足够的优化,小模型可以跟上甚至超越最大模型。此外,较小模型的实施允许创建更具成本效益和环境友好的解决方案。

而且因为GPT-3的泄漏问题,GPT-4其实也做了相应的措施。在内部评估中,与GPT-3.5相比,GPT-4对不允许内容做出回应的可能性降低82%,给出事实性回应的可能性高40%。

在这里插入图片描述

相关参考文献积推荐阅读的文献

  • 从GPT-1到GPT-4,再到未来的GPT-5,一文带你了解GPT的前世今生和未来! -腾讯云开发者社区-腾讯云

  • Chatgpt 里面gpt 代表什么? - 知乎

  • GPT系列:GPT, GPT-2, GPT-3精简总结(模型结构+训练范式+实验)gpt3模型结构#苦行僧的博客-CSDN博客

  • GPT/GPT2/GPT3/ChatGPT梳理

  • GPT-1,GPT-2和GPT-3发展历程及核心思想,GTP-4展望-CSDN博客

  • GPT系列学习笔记:GPT、GPT2、GPT3GPT系列学习笔记:GPT、GPT2、GPT3_格日乐图~璇的博客-CSDN博客

  • 聊聊Chat GPT-1到GPT-4的发展历程-36氪

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

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

相关文章

机器学习快速入门1(机器学习概念与数据预处理)

文章目录 1.机器学习介绍2 机器学习7大步骤3.数据预处理八大策略4 缺省值、异常值、重复值处理**rand、randn、randint区别**normal与randn缺失值处理判断缺失值删除缺失行填充缺失值 重复值处理异常值处理 5 抽样VS全量数据为什么需要抽样简单随机抽样等距抽样分层抽样整群抽样…

【PR 基础】轨道遮罩键、交叉溶解的简单使用

在上篇博客(【PR 基础】裁剪工具的简单使用)介绍了裁剪效果的使用,本篇博客在上篇的基础上继续添加 轨道遮罩键、交叉溶解的效果。 效果 步骤 1.可以先将恢复裁剪区域的关键帧删除 2. 接下来添加字幕,点击 新建-》旧版标题 点击…

Ceph入门到精通-Ceph 编排器简介

第 1 章 Ceph 编排器简介 作为存储管理员,您可以将 Ceph 编排器与 Cephadm 实用程序搭配使用,能够发现设备并在 Red Hat Ceph Storage 集群中创建服务。 1.1. 使用 Ceph Orchestrator Red Hat Ceph Storage Orchestrators 是经理模块,主要…

深入JVM了解Java对象实例化过程

文章目录 一、对象创建方式二、对象产生步骤1、判断对象是否已经加载、链接、初始化2、为对象分配内存空间3、处理并发问题3.1 TLAB 4、初始化零值5、完善对象内存布局的信息6、调用对象的实例化方法 <init>7、总结 三、对象的内存布局1、对象头1.1 运行时元数据&#xf…

大学生创业项目-校园外卖的创业优势在哪里?

在当今的外卖行业中&#xff0c;校园外卖已成为外卖行业的垂直分类领域。 与我们通常使用的美团、饿了么平台不同&#xff0c;校园外卖平台需要招聘校园学生和校园内外人员兼职作为校园骑手&#xff0c;完成“最后一公里”的外卖送餐方式。 对于平台运营商来说&#xff0c;配…

生成树协议三姐妹:STP、RSTP 和 MSTP,附思科和华为双厂商命令示例

在计算机网络中&#xff0c;为了保证网络拓扑结构的稳定性和可靠性&#xff0c;需要采用一些协议进行网络的管理和控制。其中&#xff0c;STP、RSTP 和 MSTP 是三种常用的网络管理协议。本文将分别介绍这三种协议&#xff0c;并且使用华为、思科两家厂商作为案例给出相应的命令…

( “树” 之 Trie) 677. 键值映射 ——【Leetcode每日一题】

知识点回顾 &#xff1a; Trie&#xff0c;又称前缀树或字典树&#xff0c;用于判断字符串是否存在或者是否具有某种字符串前缀。 ❓677. 键值映射 难度&#xff1a;中等 设计一个 map &#xff0c;满足以下几点: 字符串表示键&#xff0c;整数表示值返回具有前缀等于给定字…

Scrapy框架 -- 深度爬取并持久化保存图片

一、新建一个Scrapy项目daimg scrapy startproject daimg 二、进入该项目并创建爬虫文件daimgpc cd daimg scrapy genspider daimgpc www.xxx.com 三、修改配置文件settings.py ROBOTSTXT_OBEY False LOG_LEVEL ERROR USER_AGENT "Mozilla/5.0 (Windows NT 10.0; …

Git快速入门

Git快速入门 版本控制什么是版本控制常见的版本控制工具版本控制分类Git与SVN的主要区别 聊聊Git的历史Git环境配置软件下载启动GitGit配置 Git基本理论&#xff08;重要&#xff09;三个区域工作流程 Git项目搭建创建工作目录与常用指令本地仓库搭建克隆远程仓库 Git文件操作文…

Springsecurity课程笔记06-13章基于数据库的方法授权

动力节点Springsecurity视频课程 6 密码处理 6.1 为什么要加密&#xff1f; csdn 密码泄露事件 泄露事件经过&#xff1a;https://www.williamlong.info/archives/2933.html 泄露数据分析&#xff1a;https://blog.csdn.net/crazyhacking/article/details/10443849 6.2加密…

平均薪资28K,测试开发的涨薪史,给我看哭了...

金三银四的涨薪季要来了&#xff0c;看着身边的同事有的晋升&#xff0c;有的收获30%的涨薪&#xff0c;他们都拥有哪些影响涨薪的硬核技能呢&#xff1f;互联网行业的高薪是众所周知的&#xff0c;而测试作为互联网公司越来越重视的技术开发模块&#xff0c;薪资收入同样一路走…

Tomcat部署与优化

前言 Tomcat是一款免费、开放源代码的Web应用服务器&#xff0c;是Apache软件基金会的一个核心开源项目&#xff0c;属于轻量级应用服务器&#xff0c;通常意义上的 Web 服务器接受请求后&#xff0c;只是单纯地响应静态资源&#xff0c;如 HTML 文件&#xff0c;图片文件等&a…

深入探究C++中的仿函数和迭代器——提升你的STL技能

&#x1f4d6;作者介绍&#xff1a;22级树莓人&#xff08;计算机专业&#xff09;&#xff0c;热爱编程&#xff1c;目前在c&#xff0b;&#xff0b;阶段>——目标Windows&#xff0c;MySQL&#xff0c;Qt&#xff0c;数据结构与算法&#xff0c;Linux&#xff0c;多线程&…

若依/RuoYi-Vue,若依管理系统-启动步骤

若依RuoYi-Vue前后端项目启动流程_若依前端怎么启动_primary taste_mm的博客-CSDN博客若依官网&#xff1a;RuoYi 若依官方网站 |后台管理系统|权限管理系统|快速开发框架|企业管理系统|开源框架|微服务框架|前后端分离框架|开源后台系统|RuoYi|RuoYi-Vue|RuoYi-Cloud|RuoYi框架…

进驻Lidl利多超市利器—— EDI

Lidl利多超市是源自德国的跨国零售企业&#xff0c;成立于1973年&#xff0c;发展迅速&#xff0c;目前在欧洲拥有10,800多家门店&#xff0c;覆盖29个国家。Lidl的业务范围包括食品、饮料、家庭用品、家具、电器等多个品类。Lidl一直致力于提供高性价比的商品&#xff0c;以满…

FIT2CLOUD飞致云发布开源轻量级云管平台CloudExplorer Lite

2023年4月21日&#xff0c;中国领先的开源软件公司FIT2CLOUD飞致云正式发布开源轻量级云管平台项目CloudExplorer Lite。CloudExplorer Lite&#xff08;https://github.com/CloudExplorer-Dev&#xff09;脱胎于飞致云创始软件产品CloudExplorer多云管理平台&#xff0c;支持对…

图表示学习算法学习

struc2vec: Learning Node Representations from Structural Identity learning latent representations for the structural identity of nodes. &#xff1a; 从结构特征中学习节点潜在表示 node representation : 节点表示 structural identity : 结构特征 struct2Vec是一个…

《UVM实战》学习笔记——第七章 UVM中的寄存器模型1——寄存器模型介绍、前门/后门访问

文章目录 前言一、寄存器模型简介1.1 带寄存器配置总线的DUT1.2 参考模型如何读取寄存器的值1.3 寄存器模型的基本概念 二、简单的寄存器模型2.1 只有一个寄存器的寄存器模型2.2 将寄存器模型集成到验证平台2.3 在验证平台中使用寄存器模型 三、前门访问和后门访问3.1 前门访问…

2023年淮阴工学院五年一贯制专转本应用文写作考试大纲

2023年淮阴工学院五年一贯制专转本应用文写作考试大纲 一、考核对象 本课程的考核对象是五年一贯制高职专转本秘书学专业普通在校生考生。 二、考核目的 通过课堂教学&#xff0c;学生应当能够识记、理解和应用有关应用文写作的基本理论和基本技能。其中&#xff0c;识记指…

TortoiseSVN使用-TortoiseSVN更换或重置登录用户

文章目录 3.4.9 TortoiseSVN更换或重置登录用户 本人其他相关文章链接 3.4.9 TortoiseSVN更换或重置登录用户 1&#xff0c;打开SVN的settings 2&#xff0c;找到Saved Data栏&#xff0c;右侧Authentication data项点击清除按钮clear 3&#xff0c;再次打开SVN&#xff0c;会要…