【大语言模型学习笔记】第一篇:LLM大规模语言模型介绍
1. LLM概述
LLM,Large Language Model,即大规模语言模型,是深度学习技术在自然语言处理领域的应用典范。它通过在海量文本数据上进行预训练,学习语言的内在规律和模式,从而具备出色的文本生成和理解能力。LLM的应用场景广泛,包括但不限于智能对话、文本创作、机器翻译等。
2. LLM的构建流程
2.1 预训练
利用大量未标注的文本数据训练模型,使其学习语言的基本结构和统计特性。获取对语言的广泛理解,建立强大的语言基础模型。通常使用自回归或自编码的方式训练,如Transformer模型。
2.2 有监督微调
在预训练的基础上,使用带有标签的数据对模型进行进一步训练,使其适应特定任务的需求。提升模型在特定任务上的性能,比如情感分析、命名实体识别等。 使用传统的监督学习方法,针对特定任务的标注数据进行训练。
2.3 奖励模型
训练一个模型来评估输出的质量,即为模型产生的输出分配一个分数。为后续的强化学习提供反馈信号,指导模型产生更高质量的输出。使用带有偏好排序的标注数据训练一个二分类器,学习如何区分高质量输出和低质量输出。
2.4 强化学习
利用奖励模型提供的反馈,通过试错学习优化模型的行为,以最大化长期奖励。 使模型能够根据环境反馈自主改进,尤其是在没有明确标注数据的情况下。应用强化学习算法,如策略梯度方法,让模型学习如何生成更符合期望的结果。
3. LLM的特点
- 庞大的数据基础:LLM的训练数据量巨大,例如BERT使用了总计33亿个单词的训练数据,GLM-130B则高达4000亿个单词数据,下表列举出了常见大模型的参数量和训练所使用的语料库大小信息。
- 复杂的模型结构:LLM拥有庞大的参数量,例如GPT-3拥有1750亿个参数,PaLM-E则达到了5620亿个参数。
- 卓越的语言处理能力:LLM能够生成高质量的文本,并理解复杂的语言结构和语义。
- 涌现能力和泛化能力:当一个语言模型变得足够大并且经过充分训练后,它可能会自发地学会某些高级任务,如自动纠错、语言翻译或是生成连贯的故事,即使在训练过程中并没有专门针对这些任务进行优化。这种能力的出现是由于模型内部复杂的相互作用导致的结果,而非直接的设计意图。
大语言模型 | 发布时间 | 开发者 | 参数量(billion) | 训练语料库大小 |
GPT-1 | 2018/6 | OpenAI | 0.117 | |
BERT | 2018/10 | 0.34 | 3.3 billion words | |
GPT-2 | 2019/2 | OpenAI | 1.5 | 40GB |
XLNet | 2019/6 | 0.34 | 33 billion words | |
T5 | 2019/10 | 11 | 34 billion tokens | |
GPT-3 | 2020/5 | OpenAI | 175 | 300 billion tokens |
GPT-Neo | 2021/3 | EleutherAI | 2.7 | 825 GiB |
GPT-J | 2021/6 | EleutherAI | 6 | 825 GiB |
Megatron-Turing NLG | 2021/10 | Microsoft and Nvidia | 530 | 338.6 billion tokens |
Gopher | 2021/12 | DeepMind | 280 | 300 billion tokens |
GLaM | 2021/12 | 1200 | 1.6 trillion tokens | |
Ernie 3.0 Titan | 2021/12 | Baidu | 260 | 4Tb |
Claude | 2021/12 | Anthropic | 52 | 400 billion tokens |
LaMDA | 2022/1 | 137 | 1.56T words | |
GPT-NeoX | 2022/2 | EleutherAI | 20 | 825 GiB |
Chinchilla | 2022/3 | DeepMind | 70 | 1.4 trillion tokens |
PaLM | 2022/4 | 540 | 768 billion tokens | |
OPT | 2022/5 | Meta | 175 | 180 billion tokens |
YaLM 100B | 2022/6 | Yandex | 100 | 1.7TB |
Minerva | 2022/6 | 540 | 38.5B tokens | |
BLOOM | 2022/7 | Hugging Face | 175 | 350 billion tokens |
Galactica | 2022/11 | Meta | 120 | 106 billion tokens |
AlexaTM | 2022/11 | Amazon | 20 | 1.3 trillion |
Neuro-sama | 2022/12 | Independent | Unknown | Unknown |
LLaMA | 2023/2 | Meta AI | 65 | 1.4 trillion |
PanGu-Σ | 2023/3 | Huawei | 1085 | 329 billion tokens |
OpenAssistant | 2023/3 | LAION | 17 | 1.5 trillion tokens |
Jurassic-2 | 2023/3 | AI21 Labs | Unknown | Unknown |
GPT-4 | 2023/3 | OpenAI | Unknown | Unknown |
Falcon | 2023/3 | Technology Innovation Institute | 40 | 1 trillion tokens, |
Cerebras-GPT | 2023/3 | Cerebras | 13 | |
BloombergGPT | 2023/3 | Bloomberg L.P. | 50 | 363 billion token |
PaLM 2 | 2023/5 | 340 | 3.6 trillion tokens | |
Llama 2 | 2023/7 | Meta AI | 70 | 2 trillion tokens |
Granite 13b | 2023/7 | IBM | Unknown | Unknown |
Claude 2 | 2023/7 | Anthropic | Unknown | Unknown |
Mistral 7B | 2023/9 | Mistral AI | 7.3 | Unknown |
Grok-1 | 2023/11 | x.AI | 314 | Unknown |
Claude 2.1 | 2023/11 | Anthropic | Unknown | Unknown |
Phi-2 | 2023/12 | Microsoft | 2.7 | 1.4T tokens |
Mixtral 8x7B | 2023/12 | Mistral AI | 46.7 | Unknown |
Gemini 1.0 | 2023/12 | Google DeepMind | Unknown | Unknown |
Gemma | 2024/2 | Google DeepMind | 7 | 6T tokens |
Gemini Ultra | 2024/2 | Google DeepMind | Unknown | Unknown |
Gemini 1.5 | 2024/2 | Google DeepMind | Unknown | Unknown |
Phi-3 | 2024/4 | Microsoft | 14 | 4.8T Tokens |
Mixtral 8x22B | 2024/4 | Mistral AI | 141 | Unknown |
Granite Code Models | 2024/5 | IBM | Unknown | Unknown |
Qwen2 | 2024/6 | Alibaba Cloud | 72 | 3T Tokens |
Chameleon | 2024/6 | Meta AI | 34 | 4.4 trillion |
Llama 3.1 | 2024/7 | Meta AI | 405 | 15.6T tokens |
Nemotron-4 | 2024/6 | Nvidia | 340 | 9T Tokens |
DBRX | 2024/3 | Databricks and Mosaic ML | 136 | 12T Tokens |
Claude 3 | 2024/3 | Anthropic | Unknown | Unknown |
Fugaku-LLM | 2024/5 | Fujitsu, Tokyo Institute of Technology, etc. | 13 | 380B Tokens |
Nova | 2024/10 | Rubik's AI | Unknown | Unknown |
4. LLM的分类
根据部署方式,LLM可以分为云侧大模型和端侧大模型。云侧大模型部署在云端,拥有更大的规模和算力;端侧大模型则部署在终端设备上,更加注重隐私保护和本地化运行。
4.1 云侧大模型的优势:
- 可扩展性方面:云平台在提供可扩展资源方面表现出色,这对于训练和部署计算密集型的大型语言模型(LLMs)至关重要。它们可以轻松应对高性能GPU和大量数据存储的需求,并根据需要调整资源。
- 易用性:云服务通过大量的API、工具和框架简化了开发过程,使机器学习模型的构建、训练和部署更加流畅。
- 成本效益:对于那些无法获得先进硬件的人来说,云服务提供了一种具有成本效益的选择。只需支付实际使用的资源费用,通常比维护内部的高性能GPU和CPU的成本低得多。
4.2 端侧大模型的优势:
- 控制:本地部署让用户对其硬件、数据及大型语言模型本身拥有完全的控制权,可以根据特定需求和规定进行定制和优化。
- 延迟:由于模型是在本地运行,本地LLM可以显著减少延迟。
- 隐私:本地运行大型语言模型增强了数据隐私和安全,因为敏感信息处于用户控制之下并在本地设备上处理,不会与云供应商共享。
5. LLM的发展历程
5.1 统计语言模型(Statistical Language Models, SLM):
- 这是最传统的语言模型形式,基于统计学原理构建。统计语言模型通过计算给定上下文条件下各个可能的下一个词出现的概率,来对自然语言进行建模。这类模型通常使用N-gram模型来表示上下文,即假设下一个词的出现只与前面N个词有关。尽管简单,但在早期的自然语言处理任务中,如语音识别、机器翻译等方面发挥了重要作用。
5.2 神经网络语言模型(Neural Network Language Models, NLM):
- 随着深度学习技术的发展,基于神经网络的语言模型开始取代传统的统计模型。神经网络语言模型能够通过将自然语言转化为向量表示,利用神经网络建模词汇之间的关系来预测下一个词。与统计模型相比,神经网络模型能够捕捉更复杂的语言特征,但同时也需要更多的数据和计算资源。
5.3 预训练语言模型(Pre-trained Language Models, PLM):
- 这一阶段见证了语言模型的重大突破,即预训练-微调范式的兴起。预训练语言模型首先在大规模未标注数据上进行无监督学习,学习到丰富的语言表示后,再在特定任务的小规模标注数据上进行微调,以优化模型在具体任务上的表现。这一阶段的代表模型包括BERT、GPT等,它们在各种NLP任务上取得了显著的成绩。
5.4 大语言模型(Large Language Models, LLM):
- 随着计算能力和数据量的增长,研究人员开始探索更大规模的语言模型,即大语言模型。这些模型拥有数十亿乃至更多的参数,能够学习更加复杂的语言模式和结构,展现出超越早期模型的能力。大语言模型不仅在传统NLP任务上表现出色,还能执行一些之前认为需要特定算法的任务,如代码生成、多模态任务等。代表性的大语言模型包括GPT-3、T5、PaLM等。
6. LLM的知识无损压缩
LLM的目标是对有效信息进行最大限度的无损压缩。通过学习,LLM能够将复杂的语言知识压缩成高效的模型参数,从而在处理各种任务时更加得心应手。
LLM对知识的“无损压缩”是指模型通过训练过程学习并内化语言数据中的丰富信息,同时保持这些信息的有效性和完整性。这个过程不是传统意义上的数据压缩,而是通过深度学习的方法,将大量文本数据中的模式、规则和关联性转化为模型参数,从而实现信息的高效表示。
比如对于下面这一串数字:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181...
LLM可以通过学习其特征总结出来:这就是斐波那契数列,通过学习和总结保持信息的无损压缩。
7. LLM的重要性
LLM的应用对多个领域产生了深远的影响,包括:
- 提升自然语言处理能力:LLM显著提高了机器理解和生成自然语言的能力。
- 自动化和效率提升:LLM能够自动化许多文本处理任务,提高工作效率。
- 增强人机交互体验:LLM使得智能客服和虚拟助手等应用更加自然和流畅。
- 推动创新和创意:LLM为内容创作提供了新的工具和灵感。
- 跨语言和跨文化交流:LLM促进了不同语言和文化之间的交流。
- 辅助专业领域:LLM在医疗、法律、教育等领域发挥着重要作用。
- 大数据分析和洞察:LLM能够从大规模文本数据中挖掘出有价值的洞察。
- 普惠科技:LLM的应用降低了技术门槛,推动了科技的普及。
- 促进人工智能发展:LLM的成功应用推动了人工智能技术的进步。