(五万字深入解析,一篇就够)解锁大语言模子LLM的终极奥秘:从架构解析到 ...

打印 上一主题 下一主题

主题 884|帖子 884|积分 2652

LLM的根本概念与技术背景

随着人工智能的发展,**大语言模子(LLM,Large Language Model)**已成为天然语言处置惩罚(NLP)领域的核心技术之一。LLM指拥有亿级甚至百亿级参数的大规模神经网络模子,能够在广泛的语言任务中表现出色。要明确LLM的崛起,须要回顾NLP的演进历程以及Transformer架构的引入。
NLP的历史演进与LLM的发展

早期的NLP紧张依赖规则和统计方法。从20世纪50年代的机器翻译尝试到60年代的ELIZA聊天机器人,研究者尝试让机器明确和天生语言。其中,1960年代MIT的Joseph Weizenbaum开发的ELIZA可以看作首个聊天机器人,开启了NLP的探索 (The history, timeline, and future of LLMs)。以后几十年,模式匹配和统计语言模子渐渐鼓起。例如,1990年代盛行                                   n                              n                  n元语法和隐马尔可夫模子,能够通过统计方法对文本进行概率建模。
神经网络的引入为NLP带来了新阶段。1997年提出的长短期记忆网络(LSTM)提拔了模子对长间隔依赖的处置惩罚能力 (The history, timeline, and future of LLMs)。2013年前后,Google提出Word2Vec算法,将单词映射为麋集向量(embedding),捕获语义关系,实现了分布式词表示的突破。这些词向量是静态的,例如“bank”一词无论表示银行还是河岸,其Word2Vec向量都雷同 (Google’s USER-LLM: User Embeddings for Personalizing LLMs, & Why SEOs Should Care (Maybe) - Ethan Lazuk) (Google’s USER-LLM: User Embeddings for Personalizing LLMs, & Why SEOs Should Care (Maybe) - Ethan Lazuk)。不外这为后续动态上下文敏感的表示(如BERT)奠定了根本。
2017年Transformer的出现是革命性时刻。Vaswani等人在论文《Attention Is All You Need》中提出Transformer,彻底改变了序列建模的方法。Transformer基于自留意力机制(self-attention),抛弃了循环网络,实现了并行盘算。它可以在编码器-解码器架构中高效建模长序列关系,捕获单词之间的深层依赖。这一突破标记NLP进入预训练语言模子时代 (The history, timeline, and future of LLMs) (The history, timeline, and future of LLMs)。
Transformer使越来越大的预训练模子成为可能GPT系列BERT系列几乎同时诞生:2018年6月OpenAI发布了GPT-1(1.17亿参数) (Timeline and Evolution of NLP Large Language Models: From GPT-1 to Claude 2 and Beyond),同年10月Google发布了BERT(3.4亿参数) (Timeline and Evolution of NLP Large Language Models: From GPT-1 to Claude 2 and Beyond)。BERT通过双向编码遮蔽语言模子任务预训练,善于明确上下文语义,被用于问答、分类等明确类任务。GPT则采用单向解码、下一个词猜测的自回归预训练,擅长根据前文天生续写,适用于天生类任务。研究发现,随着参数规模增长,预训练语言模子开始具备零样本和小样本学习能力 ([2005.14165] Language Models are Few-Shot Learners) 。
模子规模的跃升在2019-2020年尤为迅猛:OpenAI在2019年推出GPT-2(15亿参数),比GPT-1大10倍,在天生连贯文本方面首次媲尤物类 (Timeline and Evolution of NLP Large Language Models: From GPT-1 to Claude 2 and Beyond)。2020年GPT-3横空出世,参数到达1750亿,通过提供几个示例即可Few-Shot完成翻译、问答等任务,性能靠近颠末大规模监督微调的模子 。GPT-3的成功表明:通用大模子 + 少量提示可以办理多种任务,人类只需设计提示而无需为每个任务训练专门模子 。由此掀起了构建更大模子的高潮。
进入通用对话时代:2022年底,基于GPT-3.5的ChatGPT面世,引爆公众视野。借助Instruction Tuning和人类反馈强化学习(RLHF),ChatGPT能够更好地遵照用户指令,进行多轮对话。这使得非技术用户也能通过天然语言与LLM互动,从写作助手到代码天生各方面展示了前所未有的实用性 (The history, timeline, and future of LLMs) (The history, timeline, and future of LLMs)。2023年更是大模子竞相发展的年份:OpenAI发布了多模态的GPT-4,据报道参数目达数万亿级别 (Timeline and Evolution of NLP Large Language Models: From GPT-1 to Claude 2 and Beyond)(具体参数未公开),具备图像识别更强推理能力,甚至能够通过律师资格考试等标准化测试 (The history, timeline, and future of LLMs)。Google推出了PaLM 2和多模态对话模子Bard;Anthropic发布了夸大安全性的Claude,支持长上下文;Meta开放了LLaMA系列模子权重,催生出丰富的开源衍生模子。可以说,LLM发展一日千里,模子规模、能力和可用性都在不断革新。
Transformer架构解析

Transformer是支撑现代LLM的核心架构,其关键创新在于自留意力机制。与RNN按序处置惩罚差异,Transformer通过自留意力可以并行地建模序列中任意两个位置的依赖。Transformer基本由**编码器(encoder)解码器(decoder)**堆叠组成(如GPT系列只用解码器堆叠,BERT只用编码器堆叠,T5则编码器-解码器都有)。下面我们解析其紧张组件:


  • Embedding层:首先,将输入的词转换为向量表示(词嵌入)。Transformer还通过**位置编码(Positional Encoding)**注入序列位置信息,使模子感知词序。
  • 自留意力层(Self-Attention):这是Transformer的核心。对于输入序列的每个位置,盘算它对序列中其他位置的留意力权重,以捕获关联程度。给定查询矩阵                                             Q                                      Q                        Q、键矩阵                                             K                                      K                        K、值矩阵                                             V                                      V                        V,每个位置的输出是所有值的加权和,权重由查询和键的相似度通过softmax盘算决定。其数学情势为:
                                                       Attention                                  (                                  Q                                  ,                                  K                                  ,                                  V                                  )                                  =                                  softmax            ⁣                       (                                                             Q                                                       K                                           T                                                                                             d                                           k                                                                         )                                  V                                  ,                                          \text{Attention}(Q, K, V) = \text{softmax}\!\Big(\frac{Q K^T}{\sqrt{d_k}}\Big) V,                           Attention(Q,K,V)=softmax(dk​                      ​QKT​)V,
    其中                                                         d                                  k                                                 d_k                        dk​是键向量的维度 ([2201.11903] Chain-of-Thought Prompting Elicits Reasoning in Large Language Models)。留意力机制的含义是:通过点积比较当前词的查询每个词的键,得到相关性分布,从而聚合上下文信息 。Transformer使用多头留意力(Multi-Head Attention),将                                             Q                               ,                               K                               ,                               V                                      Q,K,V                        Q,K,V分成多组头并行盘算留意力,以学习差异关系的信息,然后将各头结果拼接。这提高了模子表达差异语义关系的能力。
  • 前馈网络(Feed-Forward Network):在留意力层之后,每个编码器/解码器层另有一个逐位置的前馈全连接网络,用于进一步非线性变换。典型设置是两层线性层,中心有ReLU激活,将维度先升高再降回原维度。
  • 残差连接和Layer Norm:每个子层(留意力或前馈)都通过残差连接叠加输入,并进行层归一化,确保梯度稳固和训练收敛。
编码器-解码器交互中,解码器还对编码器输出执行跨留意力(Encoder-Decoder Attention),让解码器在天生每个词时“关注”源序列的相关部分。解码时通过掩码机制确保模子只能看见以前的输出,避免信息泄露。Transformer的并行化、自留意力使其在长间隔依赖、上下文建模上远超RNN。其深度堆叠的自留意力层可以捕获句法和语义的各种关系,是LLM强大性能的根本 (The history, timeline, and future of LLMs)。
Transformer架构也催生出许多变体和改进。例如,针对长文档的高效留意力(如稀疏留意力、滑动窗口留意力等)提高了长上下文处置惩罚能力。在最新模子中,一些采用ALiBi、RoPE等位置编码来更好扩展上下文长度。而像GPT-4等还融合了多模态编码模块,使图像等非文本输入能够通过适当的编码器接入Transformer架构,从而实现跨模态任务。
总的来说,Transformer提供了一个高度模块化且可扩展的框架。通过不断增长层数和参数目,以及引入更好的训练策略,Transformer架构支撑的LLM展现了惊人的语言明确与天生能力。正如有研究指出,Transformer使得更大的模子带来更优性能成为常态,这推动了参数规模的指数级增长 (The history, timeline, and future of LLMs)。不外,也有研究尝试在架构和训练方式上优化,以更小规模实现高性能,例如DeepMind的RETRO模子通过引入检索机制,性能超过了大25倍的模子 (The history, timeline, and future of LLMs)。这些探索意味着Transformer架构仍有改进空间,为未来LLM的发展指明确方向。
紧张模子的对比分析 (GPT、BERT、T5、LLaMA等)

当前LLM大家族中,有几类具有代表性的模子架构,各有侧重和上风:


  • GPT系列(Generative Pre-trained Transformer):代表为GPT-2、GPT-3、GPT-4等,采用仅解码器的Transformer架构,使用自回归语言建模(根据前文猜测下一个词)进行预训练。GPT系列重在文本天生,能够根据提示产生连贯的续写或对话。在微调或强化学习引导下,GPT还可执行摘要、翻译、代码天生等任务。其特点是单向上下文:每个词只能留意之前的词,恰当天生场景,但可能在明确全局上下文时略逊。不外GPT-3通过超大规模和机动的提示设计,展现了惊人的Few-Shot学习能力,在无需梯度更新情况下办理了多种NLP任务 。GPT-4进一步引入了图像输入(多模态)并提高了推理能力,例如它能通过多项专业考试 (The history, timeline, and future of LLMs)。GPT系列是典型的天生型LLM,也是现今对话AI的核心。
  • BERT系列(Bidirectional Encoder Representations from Transformers):代表为BERT-base/large、RoBERTa、ALBERT等,采用仅编码器的Transformer架构,预训练任务为掩蔽语言模子(Mask部分词猜测)和下一句猜测等。BERT是双向上下文模子,可以同时使用句子左侧和右侧的上下文来猜测被遮蔽的词,从而学习到高质量的语义表示 (The history, timeline, and future of LLMs) (The history, timeline, and future of LLMs)。BERT非常擅长明确类任务,如句子分类、阅读明确和命名实体识别。现实上在BERT提出后,它敏捷成为各种NLP基准的顶尖模子,并被Google用于搜索引擎明确查询意图 (The history, timeline, and future of LLMs)。BERT的缺点是不能直接用于文本天生(因为没有解码器),须要通过其他策略(如将BERT表示送入单独的天生模块)才能天生文本。总体而言,BERT类模子表现了预训练-微调范式在明确任务上的成功。
  • T5(Text-to-Text Transfer Transformer):由Google在2019年提出,采用编码器-解码器布局,将所有任务统一表示为文本到文本的转换。T5在预训练时使用了填空式语言建模(Span Corruption,即随机遮蔽一个文本片段,由模子天生弥补) 。这种策略结合了BERT的双向编码能力和GPT的文本天生能力。T5的设计理念是**“文本到文本”统一框架**:无论翻译、摘要还是分类,都转换为给定输入文本让模子输出目标文本。例如,对于分类任务,可让模子输出标签对应的单词。这一统一使T5能够多任务训练,并方便地适配新任务。T5在GLUE等多个基准上取得SOTA效果,同时保存了天生的机动性,是通用性很强的LLM。
  • LLaMA系列:这是Meta(Facebook)在2023年开放的模子系列(LLaMA 1和LLaMA 2)。LLaMA采用与GPT雷同的解码器Transformer架构,但通过优化训练策略和数据,在较小参数目下到达了靠近更大型号的性能。例如LLaMA 2提供7亿到70亿规模的模子,开放研究社区可以获取权重进行微调。LLaMA的一个庞大影响在于开源生态:研究者基于LLaMA开发了许多微调版本,如Alpaca、Vicuna等,用于聊天、编程等特定领域。这极大地推动了LLM民主化。有报告显示,LLaMA 2 13B的性能与GPT-3 175B相当,而最新的开源模子Mistral 7B更是在多数基准上明显逾越了LLaMA 2的13B模子 (Mistral 7B | Mistral AI) (Mistral 7B | Mistral AI)。这分析通过精心的训练,纵然中等规模的参数也能有卓越表现。LLaMA系列夸大开放、可定制,恰当企业和开发者在自己数据上二次训练,是商用私有部署的热门选择。
除了以上,另有其他类型值得一提:例如Megatron-Turing NLG(5300亿参数,曾是参数最多的模子)等超大模子,UL2这种支持多种预训练任务模式的通用模子,以及各类领域专家模子(如医药领域的BioGPT等)。总体来说,GPT、BERT、T5三类分别代表了天生、明确、以及通用序列到序列三种范式,而开源的LLaMA等模子展示了在资源受限情况下的服从突破。在现实应用中,工程师会根据任务需求选择符合的模子架构:须要自由生发展文本时多选GPT类,须要精确明确文本或提取信息时多用BERT类,而涉及复杂转换(如总结文章)往往T5这类encoder-decoder会更恰当。此外,通过微调,上述模子都能定制到特定任务域中,这也是下节将讨论的重点。
大语言模子的微调与优化方法

预训练的大语言模子具有通用语言能力,但要在特定任务或领域上到达最佳性能,往往须要进行**微调(fine-tuning)或其他参数高效的调整方法。随着模子规模变得极其庞大,传统的完全微调(调治所有参数)变得本钱高昂,业界提出了许多参数高效微调(PEFT)**技术。下面我们具体介绍常见的微调与优化方法,包括LoRA、P-Tuning、Adapter等,并讨论任务定制策略、数据增强和数据清洗等实践。
常见微调技术综述

1. 全参数微调(Full Fine-Tuning):这是经典做法,即在预训练模子根本上,用少量任务数据对所有模子参数继续训练,使模子适应新任务。这种方法在模子较小(如几千万参数)时可行,但对数十亿参数的LLM来说,每个任务都调治全部参数既耗时又须要巨大的内存和算力 ([2106.09685] LoRA: Low-Rank Adaptation of Large Language Models)。例如微调一个1750亿参数的GPT-3,不仅GPU显存消耗巨大,部署每个任务专属模子也非常昂贵 。因此,全参数微调虽能取得较好效果,但在LLM时代已不太现实,取而代之的是各种参数高效微调手段。
2. Adapter 模块:由Houlsby等人在2019年提出 ([1902.00751] Parameter-Efficient Transfer Learning for NLP)。Adapter是在模子每一层添加一个小型的瓶颈层(通常是先降维再升维的两层MLP),预训练模子的原有权重被冻结不变,仅训练这些新增模块的参数 。这样,每个任务只需存储少量Adapter参数,差异任务各自的Adapter模块可以在须要时插入模子。研究表明,Adapter微调在GLUE等基准上几乎不损失性能(仅比全微调差0.4%),却只须要训练增长约3.6%的参数 。Adapter的优点是高效且模块化:每个任务的Adapter独立存在,不会干扰根本模子或其他任务。这非常恰当须要支持多任务的场景,因为我们无需为每个任务维护一个完备模子,只需保存任务相关的小模块。Adapter的缺点是引入了推理时的额外前向盘算(虽然模块小,但仍有轻微延迟)。不外相比训练开销的巨大节流,这点开销往往可以接受。
3. LoRA(Low-Rank Adaptation):这是2021年提出的一种更高效的微调方法 。LoRA的思想是:冻结预训练模子权重不变,在每层的权重矩阵中引入低秩的可训练矩阵分解。具体来说,假设原权重矩阵                                   W                              W                  W尺寸为                                   d                         ×                         k                              d \times k                  d×k,LoRA会引入两个小矩阵                                   A                              A                  A(尺寸                                   d                         ×                         r                              d \times r                  d×r)和                                   B                              B                  B(尺寸                                   r                         ×                         k                              r \times k                  r×k),使得现实权重为                                   W                         +                         Δ                         W                              W + \Delta W                  W+ΔW,其中                                   Δ                         W                         =                         A                         ×                         B                              \Delta W = A \times B                  ΔW=A×B。这里                                   r                              r                  r是远小于                                   d                         ,                         k                              d,k                  d,k的秩,使得                                   A                         ,                         B                              A,B                  A,B的参数总数远小于                                   W                              W                  W。训练时只更新                                   A                         ,                         B                              A,B                  A,B(以及可能的偏置项),其余参数不变 。LoRA的效果非常明显:论文中以GPT-3 175B为例,LoRA将须要训练的参数数目减少了10,000倍,GPU显存占用降低3倍,但性能几乎无损,甚至在某些任务上优于全参数微调 。紧张的是,相较于Adapter须要在推理时通过新增层盘算,LoRA通过低秩矩阵分解并将                                   Δ                         W                              \Delta W                  ΔW直接加回权重,对推理几乎没有额外延迟 (因为可将                                   W                         +                         Δ                         W                              W+\Delta W                  W+ΔW归并)。LoRA已在各类LLM任务中广泛应用,使得在消费级GPU上微调百亿模子成为可能。例如,通过LoRA,人们成功在单张GPU上微调出了功能强大的对话模子(如Alpaca等)。LoRA的实现也很简单,闻名的
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

钜形不锈钢水箱

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表