LLaMA:开放高效的基础语言模型
论文发表时间:2023-02-27
原文地址:https://arxiv.org/pdf/2302.13971
-
Abstract(摘要)
-
Introduction(引言)
-
Approach(方法)
-
Pre-training(预训练)
-
Architecture(架构)
-
Optimizer(优化器)
-
Efficient implementation(高效训练)
-
Main results(性能表现)
-
Instruction Finetuning(指令微调)
-
Bias, Toxicity and Misinformation(偏见、毒性和错误信息)
-
RealToxicityPrompts(真实毒性)
-
CrowS-Pairs(社会偏见)
-
WinoGender(性别偏见)
-
TruthfulQA(识别真实陈述)
-
Carbon footprint(碳排影响)
-
Related work(相关工作)
-
Conclusion(总结)
Abstract(摘要)
本文引入 LLaMA:一个从 7B 到 65B 参数的基础语言模型集合。我们在数万亿个 token 上训练我们的模型,并表明完全使用公开可用的数据集训练最先进的模型是可行的,而不需要使用专有的和不可访问的数据集。其中,**LLaMA-13B 在多数基准上优于 GPT-3(175B),LLaMA-65B 与最优模型 Chinchilla-70B 和 PaLM-540B 具有竞争力。**我们将所有的模型发布到研究社区.
Introduction(引言)
在论文的"Introduction"部分,作者介绍了大型语言模型(LLMs)的重要性,并阐述了他们开发 LLaMA 系列模型的动机和目标。以下是该部分内容的详细概括:
大型语言模型(LLMs)在处理基于文本的任务方面展现出了卓越的能力,特别是在接受少量示例或文本指令后执行新任务的能力。这种"少样本"学习特性通常在模型扩展到足够大的规模时显现出来。过去的研究工作集中在进一步扩展这些模型的规模,基于一个普遍的假设:更多的参数将带来更好的性能。
然而,Hoffmann 等人(2022)的研究表明,在给定的计算预算下,最佳性能并不是由最大的模型实现的,而是通过在更多数据上训练较小的模型实现的。
LLaMA 项目的目标是训练一系列在不同推理预算下都能实现最佳性能的语言模型。作者们特别关注在给定目标性能水平时,选择最快的推理模型,而不是最快的训练模型。 例如,尽管 Hoffmann 等人(2022)推荐在 200B 个 token 上训练一个 10B 的模型,但作者们发现即使是 7B 的模型,在训练超过 1T 个 token 后性能仍在提升。
**LLaMA 模型系列从 7B 到 65B 参数不等,展现出与现有最佳大型语言模型(如 Chinchilla-70B 和 PaLM-540B)相媲美的竞争力。**特别是,LLaMA-13B 在大多数基准测试中超过了 GPT-3(175B),尽管规模小了 10 倍。作者们相信,这种模型将有助于民主化 LLMs 的访问和研究,因为它可以在单个 GPU 上运行。
与 Chinchilla、PaLM 或 GPT-3 不同,LLaMA 项目完全使用公开可用的数据,这使得工作与开源兼容,而大多数现有模型依赖于不公开或未记录的数据。 作者们还提到,尽管存在一些例外,如 OPT、GPT-NeoX、BLOOM 和 GLM 等开源模型,但它们在性能上并不与 PaLM-62B 或 Chinchilla 竞争。
作者概述了论文的其余部分,包括对变换器架构的修改、训练方法、模型性能的评估,以及使用负责任 AI 社区的最新基准测试来识别模型中可能存在的偏见和毒性。
作者希望将这些模型发布给研究社区,以促进大型语言模型的发展,并帮助改进它们的健壮性,减少已知问题,如毒性和偏见。
Approach(方法)
详细描述了 LLaMA 模型的训练过程,包括数据的选择和处理、模型架构的设计、优化策略以及实现效率的优化。作者们展示了如何在不使用专有数据集的情况下,通过公开数据集训练出具有竞争性能的语言模型。
Pre-training(预训练)
LLaMA 的训练数据集由多个不同来源的数据混合而成,形成了一个多样化的领域覆盖。作者们特别强调,**所有使用的数据都是公开可用的,并且与开源兼容。**数据集主要包括以下几个部分:
-
CommonCrawl:占训练集的
67%
,包括 2017 至 2020 年的五个 CommonCrawl 数据转储。使用 CCNet 管道进行预处理,包括去重、语言识别和低质量内容过滤。 -
C4 数据集:占
15%
,包含公开可用的 C4 数据集,通过预处理提高性能,包括去重和语言识别。 -
GitHub 数据:占
4.5%
,使用 Google BigQuery 上的公共 GitHub 数据集,保留 Apache、BSD 和 MIT 许可的项目,并过滤低质量文件。 -
Wikipedia:占
4.5%
,包括 2022 年 6 月至 8 月的 Wikipedia 转储,涵盖使用拉丁或西里尔字母的 20 种语言。 -
书籍和学术文献:包括 Gutenberg 项目和 Books3 部分,去除超过 90%内容重叠的书籍。
-
ArXiv:占
2.5%
,处理 arXiv 的 Latex 文件,增加科学数据。 -
Stack Exchange:占
2%
,包括 Stack Exchange 的转储,涵盖从计算机科学到化学的多个领域。
用于预训练的数据混合及其采样比例🔢
通过这种多样化的数据混合,LLaMA 模型能够在各种语言理解和生成任务上展现出卓越的性能。
Architecture(架构)
作者们介绍了LLaMA模型所采用的架构设计,这些设计基于变换器(transformer)架构并结合了后续提出的改进。以下是该部分内容的简洁概括:
LLaMA模型的架构基于变换器架构,即Transformer,这是当前语言模型中的主流设计。作者们采用了几项关键的改进来提升模型性能:
-
预归一化:受到GPT-3的启发,模型在每个变换器子层的输入进行归一化,而不是输出,以提高训练稳定性。
-
SwiGLU激活函数:用
SwiGLU
替代了传统的ReLU
非线性激活函数,以增强模型的表现力。 -
旋转嵌入(Rotary Embeddings):去除了绝对位置嵌入,采用旋转位置嵌入来为每个网络层提供位置信息。
这些改动结合了来自不同模型的创新点,包括GPT-3、PaLM和GPT-NeoX,旨在优化LLaMA的训练效率和最终性能。
Optimizer(优化器)
LLaMA模型采用AdamW优化器进行训练,设置 =0.9 和 =0.95 。使用余弦学习率调度,最终学习率是最大学习率的10%,并应用权重衰减0.1和梯度裁剪1.0。模型还实施了2000步预热,并根据模型大小调整学习率和批量大小。
Efficient implementation(高效训练)
作者们介绍了提高LLaMA模型训练效率的几种关键技术:
-
因果多头注意力的高效实现:通过避免存储注意力权重和不计算因任务因果性被掩码的键/查询分数,减少了内存使用和运行时间。
-
检查点技术:在反向传播过程中,仅重新计算昂贵的激活,如线性层输出,以节省资源。
-
模型和序列并行性:降低模型内存使用,通过并行化提高效率。
-
计算与通信重叠:在训练过程中,尽可能重叠激活计算和GPU间的通信,以提升训练速度。
这些优化使得大规模模型如65B参数的LLaMA能够在有限的硬件资源上高效训练,显著减少了训练时间和环境影响。
Main results(性能表现)
作者们展示了LLaMA模型在多个基准测试上的性能表现,并与其他领先的语言模型进行了比较:
-
零样本和少样本任务:LLaMA在零样本和少样本任务上进行了评估,包括自由形式生成任务和多项选择任务。
-
常识推理:在八个标准的常识推理基准上,LLaMA-65B在大多数基准上超越了Chinchilla-70B和PaLM-540B,而LLaMA-13B尽管规模小得多,也显示出与GPT-3相当的竞争力。
- 闭卷问答:在Natural Questions和TriviaQA两个闭卷问答基准上,LLaMA-65B在零样本和少样本设置中均达到了最先进的性能。
- 阅读理解:在RACE阅读理解基准上,LLaMA-65B与PaLM-540B竞争,而LLaMA-13B在性能上略高于GPT-3。
- 数学推理:在MATH和GSM8k数学推理基准上,即使没有在数学数据上进行微调,LLaMA-65B也展现了出色的性能。
- 代码生成:在HumanEval和MBPP代码生成基准上,LLaMA在没有针对代码进行微调的情况下,与其他通用模型相比,展现出了优越的性能。
- 大规模多任务语言理解:Hendrycks等人提出的MMLU基准测试显示,尽管LLaMA-65B在多个领域表现良好,但与在更大数据集上训练的Chinchilla-70B和PaLM-540B相比,平均性能仍落后几个百分点,这可能与其预训练数据中书籍和学术论文的数量较少有关。
- 训练过程中成绩的演变:在训练过程中,LLaMA模型在多数基准测试集上表现出稳步提升的性能并与训练困惑度相关联,但在SIQA和WinoGrande基准上观察到性能波动和不一致性,暗示这些基准可能存在可靠性问题或性能与训练困惑度不完全相关。
这些结果表明,LLaMA模型在各种语言理解任务上都能提供强大的性能,即使在较小的模型规模上也能与更大的模型竞争。
Instruction Finetuning(指令微调)
探讨了对LLaMA-65B模型进行指令微调的效果,发现即使是少量的指令微调也能显著提升模型在MMLU(Massive Multitask Language Understanding)基准测试上的性能。尽管未经微调的LLaMA-65B已经能够遵循基本指令,但微调后,模型在理解和执行指令方面的能力得到了进一步增强。 然而,尽管取得了进步,LLaMA-I的性能仍低于MMLU上最先进的模型,即GPT code-davinci-002,后者的准确率达到了77.4%。这表明,尽管LLaMA-I在指令微调后性能有所提升,但仍有改进空间。
Bias, Toxicity and Misinformation(偏见、毒性和错误信息)
大型语言模型已经被证明可以再现和放大训练数据中存在的偏差,并生成有毒或令人反感的内容。
由于训练数据集中包含了大量来自Web的数据,确定模型生成此类内容的潜力是至关重要的。为了了解LLaMA-65B的潜在危害,作者对衡量有毒物质生产和刻板印象检测的不同基准进行了评估。虽然本文选择了语言模型社区使用的一些标准基准来表明这些模型的一些问题,但是这些评估不足以充分理解与这些模型相关的风险。
RealToxicityPrompts(真实毒性)
作者们评估了LLaMA模型生成有毒语言的潜力,如侮辱、仇恨言论或威胁:
-
评估方法:使用了RealToxicityPrompts基准,包含约10万个提示,模型需要完成这些提示,并通过PerspectiveAPI自动评估生成内容的毒性得分。
-
毒性得分:得分范围从0(非有毒)到1(有毒),作者们报告了在"基本"和"尊重"两类提示下的平均得分,并发现模型的毒性随着模型大小的增加而增加,尤其是在"尊重"类别中。
- 结果比较:LLaMA的得分与文献中观察到的其他模型(如Chinchilla)的得分相当,但由于评估方法的不同,直接比较存在困难。
这部分内容强调了在开发和部署大型语言模型时,需要对其可能产生的有害内容进行仔细评估和监控。
CrowS-Pairs(社会偏见)
作者们使用CrowSPairs数据集来评估LLaMA模型在不同社会偏见类别中的表现:
-
偏见评估:CrowSPairs数据集包含性别、宗教、种族等9个类别的偏见测试,通过比较模型对刻板印象和反刻板印象句子的困惑度来衡量偏见。
-
评分方法:使用零样本设置,模型对成对句子的困惑度越高,表明对刻板印象的偏好越强,即偏见越大。
- 结果分析:LLaMA-65B与GPT-3和OPT-175B相比,在平均偏见得分上略低,但在宗教类别中表现出较高的偏见,暗示模型可能从网络数据中吸收了社会偏见。
这部分内容揭示了即使是大型语言模型也可能在训练过程中学习并再现社会偏见,强调了对模型偏见进行评估和减少的重要性。
WinoGender(性别偏见)
作者们深入探讨了LLaMA模型在性别偏见方面的表现:
-
WinoGender简介:WinoGender是一个共指消歧数据集,由Winograd模式构成,用于评估模型在性别代词共指消歧任务中是否受到性别偏见的影响。
-
评估方法:数据集中的句子包含三个提及:一个“职业”、一个“参与者”和一个代词,代词可能指向职业或参与者。模型需要判断代词的正确共指对象。
-
性别代词的使用:评估了模型对三种代词(“her/her/she”、“his/him/he”和“their/them/someone”)的共指消歧能力,观察到模型在使用中性代词时表现更好。
-
偏见分析:在所谓的“gotcha”案例中,即代词与职业的多数性别不符时,LLaMA模型在性别特定的代词上表现较差,显示出模型捕捉到了与性别和职业相关的社会偏见。
- 结果意义:这一发现表明,尽管LLaMA在某些方面表现出较低的偏见,但在性别偏见方面仍存在问题,这可能源于训练数据中的社会结构和刻板印象。
这部分内容强调了大型语言模型在性别偏见方面的潜在问题,并指出了需要进一步研究和改进的方向。
TruthfulQA(识别真实陈述)
作者们评估了LLaMA模型在识别真实陈述方面的能力:
-
TruthfulQA目的:TruthfulQA基准旨在衡量模型识别真实陈述的能力,即区分真实与虚假信息。
-
评估方法:使用由Lin等人(2021)设计的TruthfulQA,包含多种风格的问题,覆盖38个类别,设计具有对抗性以测试模型的辨别能力。
-
性能指标:报告了模型在两种情况下的表现:回答真实问题的比例(Truthful)和回答既真实又提供信息的问题的比例(Truthful*Inf)。
-
结果分析:与GPT-3相比,LLaMA在两个类别中的得分都更高,但正确答案的比率仍然较低,表明模型可能倾向于生成错误的陈述。
-
意义和局限:尽管LLaMA在TruthfulQA上的表现优于GPT-3,但仍存在生成错误信息的风险,这强调了在开发大型语言模型时需要考虑其可能产生的误导性陈述。
这部分内容揭示了大型语言模型在处理真实性和信息准确性方面的挑战,指出了在模型设计和训练中需要进一步关注的问题。
Carbon footprint(碳排影响)
作者们评估了训练LLaMA系列模型对环境的影响,特别是能源消耗和碳排放。他们使用了一个标准公式来计算不同模型训练所需的瓦时(Wh)和相应的碳排放量(吨CO2eq),考虑了GPU功耗、电源使用效率(PUE)和美国国家平均的碳强度因子。
通过比较,发现尽管LLaMA模型的规模不同,但其碳足迹相对较低,特别是与175B参数的GPT-3相比。作者们希望通过公开这些模型,促进研究社区的发展,同时减少未来模型训练的环境成本,因为他们意识到大型模型训练对气候的影响,并提倡使用更小、更高效的模型来降低碳排放。
Related work(相关工作)
在这部分,作者们回顾了语言模型的历史和发展,以及它们在自然语言处理(NLP)中的重要性:
-
语言模型的基础:语言模型最初基于
n-gram
统计计数,随着时间的发展,研究者们提出了各种平滑技术来改善对罕见事件的估计。 -
神经网络的应用:在过去二十年中,神经网络被成功应用于语言建模任务,包括前馈模型、循环神经网络(RNN)和长短期记忆网络(LSTM)。
-
Transformer
网络的突破:最近,基于自注意力机制的Transformer
网络在捕捉长距离依赖性方面取得了显著进步。 -
模型和数据集的扩展:历史上,语言模型和数据集的扩展一直是一个研究重点,从Brants等人展示的基于2万亿token的语言模型的好处,到Heafield等人展示的如何将Kneser-Ney平滑扩展到Web规模数据。
-
大型语言模型的发展:随着BERT、GPT-2、MegatronLM和T5等模型的出现,NLP领域取得了显著的进展。GPT-3的出现标志着大型语言模型时代的开始,随后出现了Jurassic-1、Megatron-Turing NLG、Gopher、Chinchilla、PaLM、OPT和GLM等模型。
-
扩展对性能的影响:Hestness等人和Rosenfeld等人研究了扩展对深度学习模型性能的影响,发现了模型和数据集大小与系统性能之间的幂律关系。Kaplan等人和Hoffmann等人进一步为基于变换器的语言模型推导出了特定的扩展法则。
-
大型语言模型的能力:Wei等人研究了扩展对大型语言模型能力的影响,探索了模型规模对模型能力的影响。
这部分内容为读者提供了语言模型发展的宏观视角,展示了从传统统计方法到现代深度学习技术的演变,以及大型模型如何推动NLP领域的边界。
Conclusion(总结)
作者们总结了他们的工作和贡献:
-
开放性贡献:作者们介绍了一系列公开发布的语言模型LLaMA,这些模型在性能上与现有的最先进基础模型相媲美,特别是LLaMA-13B在规模上比GPT-3小10倍以上,但性能更优。
-
数据使用的创新:与以往的研究不同,作者们展示了完全使用公开可用的数据集进行训练,而不是依赖专有数据集,就能达到最先进的性能。
-
研究社区的推动:作者们希望通过公开这些模型,加速大型语言模型的发展,并帮助研究社区改进模型的鲁棒性,减少毒性和偏见等问题。
-
未来工作:他们还观察到对模型进行指令微调可以迅速提高性能,并计划在未来的工作中进一步探索这一方向。
-
模型规模的扩展:作者们计划在未来发布更大规模的模型,并在更大的预训练语料库上进行训练,因为他们发现随着模型规模的增加,性能持续提升。
-
环境影响:作者们也考虑了模型训练对环境的影响,希望发布的较小模型能够在单个GPU上运行,从而减少未来的碳排放。
这部分内容强调了作者们对推动大型语言模型研究和应用的承诺,以及他们对未来工作方向的展望。
那么,如何系统的去学习大模型LLM?
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
作为一名热心肠的互联网老兵,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。
但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
所有资料 ⚡️ ,朋友们如果有需要全套 《LLM大模型入门+进阶学习资源包》,扫码获取~
篇幅有限,部分资料如下:
👉LLM大模型学习指南+路线汇总👈
💥大模型入门要点,扫盲必看!
💥既然要系统的学习大模型,那么学习路线是必不可少的,这份路线能帮助你快速梳理知识,形成自己的体系。
👉大模型入门实战训练👈
💥光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
👉国内企业大模型落地应用案例👈
💥《中国大模型落地应用案例集》 收录了52个优秀的大模型落地应用案例,这些案例覆盖了金融、医疗、教育、交通、制造等众多领域,无论是对于大模型技术的研究者,还是对于希望了解大模型技术在实际业务中如何应用的业内人士,都具有很高的参考价值。 (文末领取)
💥《2024大模型行业应用十大典范案例集》 汇集了文化、医药、IT、钢铁、航空、企业服务等行业在大模型应用领域的典范案例。
👉LLM大模型学习视频👈
💥观看零基础学习书籍和视频,看书籍和视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。 (文末领取)
👉640份大模型行业报告👈
💥包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
👉获取方式:
这份完整版的大模型 LLM 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】
😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓