一文彻底搞懂大模型 - GPT和LlaMA的模型架构

news2024/11/14 13:52:28

GPT vs LlaMA

GPT与LlaMA,作为大语言模型的两大巨擘,均基于Transformer架构却各有千秋。GPT系列以强大的生成能力著称,通过不断增大的参数规模引领复杂语言与推理任务的前沿;而Llama则以开源姿态,通过技术创新提升模型性能,预示着多模态扩展的未来,为AI生态的多样性和开放性贡献力量

GPT vs LlaMA

一、GPT

什么是GPT?GPT模型,全称为Generative Pre-trained Transformer,是由OpenAI团队开发的一种基于深度学习的自然语言处理(NLP)模型。该模型通过无监督学习的方式,对大规模文本进行学习和抽象概括,进而通过微调的方式用于各种特定的自然语言处理任务。


GPT

GPT的版本迭代:OpenAI GPT模型自发布以来,已经历了多个版本的迭代升级,每个版本都在前一版本的基础上进行了改进和优化。

GPT的版本迭代

  1. GPT-1:这是GPT系列的第一个版本,发布于2018年。**GPT-1具有1.17亿个参数,使用Transformer的Decoder结构作为基础,并采用了预训练的语言模型。**它在多项自然语言处理任务上取得了很好的表现,如文本生成、机器翻译和阅读理解等。

  2. GPT-2:GPT-2是GPT系列的第二个版本,发布于2019年。相比于GPT-1,GPT-2在模型规模和预训练数据上都有了显著的提升。**GPT-2的参数数量增加到了15亿,并使用了更多的预训练数据。**这些改进使得GPT-2在生成任务上表现出了更强的创造力和语言理解能力,能够生成更长、更连贯的文本。

  3. GPT-3:GPT-3是GPT系列的第三个版本,发布于2020年。**GPT-3具有惊人的1750亿个参数。**这一巨大的模型规模使得GPT-3能够处理更加复杂和多样的自然语言处理任务,包括文本生成、翻译、问答和文本分类等。GPT-3在预训练过程中使用了大量的互联网文本数据,进一步提升了其性能和泛化能力。

  4. GPT-4:GPT-4是GPT系列的第四个版本,发布于2023年3月。**GPT-4是一款具有广泛应用的大型、多模态模型。**与之前的版本不同,GPT-4是第一个能够同时接收文本和图像的多模态模型。它不仅可以接收文本输入,还能接收图像输入,并生成相应的文本输出。GPT-4在各种专业和学术基准测试中表现出色,显示出其强大的自然语言处理能力和多模态理解能力。

GPT的版本迭代

GPT2的架构:GPT-3及以后的版本采取了闭源的策略,模型的具体实现细节、训练数据、超参数配置等关键信息并未对外公开。

GPT-2的架构主要基于Transformer的解码器(Decoder)部分,并通过堆叠多个Decoder层、引入自注意力机制和位置编码、使用残差连接和层归一化等技术手段来构建模型。


GPT-2的架构

1. 堆叠Transformer的Decoder

  • GPT-2沿用了Transformer的解码器部分,通过堆叠多个Decoder层来构建模型。每个Decoder层都包含了自注意力(Self-Attention)机制和位置编码(Position Encoding)等关键组件。

  • GPT-2的堆叠层数可以根据具体需求进行调整,但通常包括多个(如12层)Decoder层,以提供足够的深度来捕捉文本中的复杂依赖关系。

2. 自注意力机制(Self-Attention)

  • 自注意力机制是Transformer和GPT-2中的核心组件,它允许模型在处理文本时同时关注到文本中的其他部分。

  • 在GPT-2中,自注意力机制通过计算输入序列中每个单词与其他单词之间的相关性来实现,从而帮助模型理解文本的全局上下文信息。

3. 位置编码(Position Encoding)

  • 由于Transformer模型本身并不包含任何关于单词位置的信息,GPT-2引入了位置编码来弥补这一缺陷。

  • 位置编码是一种将单词在序列中的位置信息嵌入到模型中的方法,它使得模型能够区分不同位置的单词并理解它们的顺序关系。

4. 残差连接(Residual Connections)和层归一化(Layer Normalization)

  • GPT-2在Decoder层之间使用了残差连接和层归一化技术,以提高模型的训练稳定性和收敛速度。

  • 残差连接允许模型在传递信息时保留前一层的部分输出,从而避免了深层网络中的梯度消失或梯度爆炸问题。

  • 层归一化则通过对每一层的输入进行归一化处理,使得模型的每一层都能够在相似的尺度上工作,进一步提高了模型的稳定性和性能。

5. 输出层

  • GPT-2的输出层通常包括一个线性层(Linear Layer)和一个Softmax层,用于将Decoder层的输出映射到词汇表上的概率分布。

  • 通过这种方式,GPT-2可以根据输入的上文生成对应的下文单词,从而实现文本生成任务。

GPT-2的架构

二、LlaMA

什么是LlaMA? LLaMA的全称是Large Language Model Meta AI,直译为“大语言模型元AI”。由于“Llama”在西班牙语中意为“羊驼”,因此社区也将其昵称为羊驼系模型。

LLaMA于2023年2月由Meta AI发布,是该系列的初代模型。随后,Meta AI又相继推出了LLaMA2和LLaMA3等升级版本。

  1. 训练数据:LLaMA的训练数据来源于公开数据集,无任何定制数据集,确保了其工作的开源兼容性和可复现性。整个训练数据集在token化之后大约包含1.4T的token。随着版本的迭代,训练数据的规模不断增加,LLaMA3甚至基于超过15万亿个token的数据进行预训练。

  2. 模型规模:LLaMA提供了多种规模的版本,包括7B、13B、70B和405B(4050亿)等不同参数量的模型。这些模型可以根据具体的应用场景和计算资源进行选择。

  3. 性能优异:LLaMA在多个基准测试上表现出色,甚至能够媲美或超越一些参数量更大的模型。例如,具有130亿参数的LLaMA模型在大多数基准上可以胜过GPT-3(参数量达1750亿)。

LlaMA

LlaMA的架构:LLaMA模型的整体架构与GPT-2等Transformer模型类似,但针对稳定性和性能进行了多项改进。它采用了前置层归一化(Pre-normalization)、RMSNorm归一化函数、SwiGLU激活函数以及旋转位置嵌入(RoPE)等关键技术。

LlaMA的架构

  1. 前置层归一化(Pre-normalization)
  • 为了提升训练时的稳定性,LLaMA将归一化操作从Transformer子层的输出移到了输入。具体地,第一层归一化被设置在多头注意力层之前,第二层归一化被移动到全连接层之前。同时,残差连接的位置也调整到了多头注意力层与全连接层之后。这种设计有助于减少梯度消失或爆炸的问题,从而提高训练稳定性。
  1. RMSNorm归一化函数
  • LLaMA在归一化过程中使用了RMSNorm(Root Mean Square Layer Normalization),这是一种基于均方根(RMS)的归一化方法。RMSNorm不依赖于均值,而是通过计算特征向量的RMS值来进行归一化。这种方法在计算上更为简洁,且在某些情况下可以提供类似甚至更好的性能。在LLaMA中,RMSNorm还加入了可学习的缩放因子和偏移参数,以进一步提高模型的灵活性。
  1. SwiGLU激活函数
  • LLaMA使用了SwiGLU(Swish-Gated Linear Unit)激活函数,这是Shazeer在文献中提出的一种激活函数,并在PaLM等模型中得到了广泛应用。相较于传统的ReLU函数,SwiGLU在很多评测数据集上表现出了更好的性能。在LLaMA中,全连接层使用了带有SwiGLU激活函数的计算方式,这有助于提升模型的非线性处理能力。
  1. 旋转位置嵌入(RoPE)
  • LLaMA没有使用传统的绝对位置编码(如BERT中的sin/cos位置编码),而是采用了旋转位置嵌入(RoPE)。RoPE借助了复数的思想,通过绝对位置编码的方式实现了相对位置编码的效果。这种方法能够更有效地捕捉序列中的位置信息,从而提升模型在处理序列数据时的性能。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓

👉1.大模型入门学习思维导图👈

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

对于从来没有接触过AI大模型的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。(全套教程文末领取哈)
在这里插入图片描述

👉2.AGI大模型配套视频👈

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,每个章节都是当前板块的精华浓缩。

在这里插入图片描述
在这里插入图片描述

👉3.大模型实际应用报告合集👈

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(全套教程文末领取哈)

在这里插入图片描述

👉4.大模型落地应用案例PPT👈

光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(全套教程文末领取哈)

在这里插入图片描述

👉5.大模型经典学习电子书👈

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

在这里插入图片描述

👉6.大模型面试题&答案👈

截至目前大模型已经超过200个,在大模型纵横的时代,不仅大模型技术越来越卷,就连大模型相关的岗位和面试也开始越来越卷了。为了让大家更容易上车大模型算法赛道,我总结了大模型常考的面试题。

在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓

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

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

相关文章

江协科技stm32————10-5 硬件I2C读写MPU6050

步骤 一、配置I2C外设,对I2C2外设进行初始化(MyI2C_Init) 开启I2C外设和对应的GPIO口的时钟把I2C对应的GPIO口初始化为复用开漏模式使用结构体配置I2CI2C_Cmd,使能I2C I2C_GenerateSTART //生产起始条件 I2C_GenerateSTOP /…

MySQL:复合查询

MySQL:复合查询 聚合统计分组聚合统计group byhaving 多表查询自连接子查询单行子查询多行子查询多列子查询from子查询 合并查询unionunion all 内连接外连接左外连接右外连接全外连接 视图 MySQL 复合查询是数据分析和统计的强大工具,本博客将介绍如何使…

黑马点评——商户查询缓存(P37店铺类型查询业务添加缓存练习题答案)redis缓存、更新、穿透、雪崩、击穿、工具封装

文章目录 什么是缓存?添加Redis缓存店铺类型查询业务添加缓存练习题 缓存更新策略给查询商铺的缓存添加超时剔除和主动更新的策略 缓存穿透缓存空对象布隆过滤 缓存雪崩解决方案 缓存击穿解决方案基于互斥锁方式解决缓存击穿问题基于逻辑过期的方式解决缓存击穿问题…

【教程】实测np.fromiter 和 np.array 的性能

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~ 目录 函数简介 np.fromiter np.array 测试代码 实验结果 结果分析 实验总结 学长想说 函数简介 np.fromiter np.fromiter 是 NumPy 提供的一…

【SuperCraft AI:无限工作流画布】

SuperCraft AI:无限工作流画布 SuperCraft 是一款全新的 AI 工具。它具有将手绘草图转换为不同产品图像的功能,提供了一个无限大的协作画布,让设计师能够在此手绘草图,并利用生成式 AI 技术将草图转化为高质量的 2D 图像和 3D 渲…

NC 二分查找-II

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 描述 请实现有重复…

Unity TreeView扩展

实现效果 这里原来是做的一个检测网络、事件回调耗时的工具。简单改了成了一个演示TreeView的demo。实现了TreeView的基本功能并且实现了对列的排序。TreeView还可以制作点击,双击,右键等事件,但这里暂时不需要用到。 思维导图 工程&#xf…

arcgisjs4.0 内网部署字体不显示问题处理

问题背景问题定位解决方案 问题背景 内网环境,通过压缩包的hash值验证了包是一摸一样的,ningx也读到了index.html,但是网格的字提显示出不来,并且地图上的注记文字均不显示 本地环境地图情况: 内网环境地图情况&…

Bluetooth: att protocol

一篇搞懂 ATT 支持的东西都有什么。 READ_BY_GROUP_TYPE_REQ/RSP 如下是 Spec 内容: The attributes returned shall be the attributes with the lowest handles within the handle range. These are known as the requested attributes.If the attributes with the requeste…

石油设备和相关机械都包涵那些?

关键字:钻杆测径仪,泵管测径仪,固井管道直线度测量仪,输送管测径仪,输送管检测设备, 石油设备是指在石油和天然气的勘探、开发、生产、储存和运输等过程中使用的各种机械和装置。这些设备通常包括但不限于…

黄力医生科普:如何有效预防冠心病,这几个保健措施不可少!

冠心病,作为心血管系统的一种常见病,主要因冠状动脉粥样硬化导致管腔狭窄或闭塞,进而引发心肌缺血缺氧。此病多发于中老年群体,且具有一定遗传性。然而,无论发病因素如何,我们都可以通过一系列有效的预防措…

C++类和对象(6)——初始化列表

一般的初始化 class A { public:A(int a){ //一般的初始化&#xff0c;在{}括号里面给成员变量赋值_a a;cout << _a << endl;}~A() {}private:int _a; }; 用 初始化列表 初始化 当成员变量是以下两种情况时&#xff0c; 必须使用初始化列表&#xff01; cons…

单自由度无阻尼系统振动分析

特别感谢&#xff1a;https://www.bilibili.com/video/BV114411y7ab/?p6&spm_id_frompageDriver&vd_sourceebe07816bf845358030fc92d23830b29 本文图片该系列视频 tips&#xff1a;关于特征方程与振动方程&#xff1a; 特征方程有助于我们理解和确定系统的固有频率和模…

【算法】贪心算法解析:基本概念、策略证明与代码例题演示

文章目录 1. 什么是贪心算法&#xff1f;2. 贪心算法的特点3. 例题&#xff08;贪心策略&#xff09;① 找零问题② 最小路径和③ 背包问题 4. 贪心策略证明 1. 什么是贪心算法&#xff1f; 在学习贪心算法之前&#xff0c;一定要理解的是贪心策略&#xff1a; 贪心策略是一种…

Ubuntu中qt类与类信号槽的创建及使用

今天学习到了新的一个小玩意&#xff0c;我们在QT中创建一个大项目的时候一般会创建多个类&#xff0c;那我们就来学习一下如何在自定义的类中声名和使用信号与槽函数。 首先我们CTRLn来创建我们新的类&#xff1a; 我们创建新的C的类&#xff0c;一个School&#xff0c;一个S…

举办知识竞赛是线上好还是线下好

举办知识竞赛线上和线下各有优势&#xff0c;选择哪种方式取决于具体的需求和条件。 线上举办知识竞赛的优缺点&#xff1a; 优点&#xff1a; 便捷性&#xff1a;线上竞赛不受地域限制&#xff0c;参与者可以在任何有网络的地方参与。 选手数&#xff1a;可以同时满足人数较…

单门店共享自习室小程序系统源码搭建对接门禁和空开api

共享自习室小程序&#xff0c;单门店共享自习室小程序&#xff0c;有源码&#xff0c;对接门禁和电控api接口&#xff0c;php开发语言&#xff0c;前端是uniapp。可以源码搭建&#xff0c;也可以二开或定制。 一 用户端 在线选择预约时间&#xff0c;选择座位&#xff0c;选择…

macOS搭建Python3.11+Django4.2.15的平台框架使用Poetry管理

最近想使用Python开发&#xff0c;使用Django框架搭建平台&#xff0c;之前没有使用过Python&#xff0c;所以记录下整个过程&#xff1a; 1、Python版本的选择&#xff0c;直接去官网【Download Python | Python.org】看最新稳定版是哪个版本&#xff0c;选择安装&#xff0c…

Ascend C算子开发(入门)—— 什么是算子?

文章目录 Ascend C算子开发&#xff08;入门&#xff09;—— 什么是算子&#xff1f;一、从人工智能到算子1.1 人工智能的四个层面1.2 人工智能之三大流派1.3 算子、神经元、神经网络 二、算子的基本概念2.1 算子在数学中的定义&#xff1a;2.2 算子基本概念 —— 总览2.3 算子…

利用clip模型实现text2draw

参考论文 实践 有数据增强的代码 import math import collections import CLIP_.clip as clip import torch import torch.nn as nn from torchvision import models, transforms import numpy as np import webp from PIL import Image import skimage import torchvision …