编者按: 生成式人工智能技术的发展日新月异,这一领域涉及到了越来越多的专业术语和概念。对于刚接触这一领域的新手来说,理解这些术语算是一个门槛。我们有必要整理和解释这些术语,帮助更多人快速入门,投身 AI 事业。
文章首先将这些生成式 AI 术语分为11大类,包括Types of Models、Common LLM Terms、LLM Lifecycle Stages等。然后对每一类术语进行了详细的解释和举例说明。
这篇文章系统全面地总结了当前生成式人工智能领域的主流术语和概念,涵盖了理论、架构、评估、优化等多个方面,对于想要了解和掌握这一领域的读者极具参考价值。
作者 | Abhinav Kimothi
编译 | 岳扬
🚢🚢🚢欢迎小伙伴们加入AI技术软件及技术交流群,追踪前沿热点,共探技术难题~
初涉生成式人工智能领域,人们可能会对这些专业术语感到不知所措。我曾多次被问及这一领域的常用术语。
为了帮助减轻初学者的这种心理负担,有许多人列出了这些术语。我又整理了一份,将它们分为11组。这些术语并非特别专业,对机器学习有基本了解的人应该很容易理解。
这 11 组术语如下:
- 模式类型(Types of Models)
- LLM领域常用的术语和概念(Common LLM Terms)
- LLM 生命周期相关术语(LLM Lifecycle Stages)
- LLM 评估方法和指标等相关术语(LLM Evaluations)
- LLM 架构相关术语(LLM Architecture)
- 检索增强生成(RAG)
- LLM Agent
- LMM 架构相关术语(LMM Architecture)
- 开发、训练和部署过程中成本和效率的考量(Cost & Efficiency)
- LLM 安全相关的问题和解决方案(LLM Security)
- 部署与推理相关术语(Deployment & Inference)
与生成式人工智能领域日新月异一样,这个分类法也在不断发展。我在博客中发布了这份清单,同时也在维护一份"实时"清单,该清单内容详尽,并将不断更新。您可以通过以下链接访问:
https://abhinavkimothi.gumroad.com/l/GenAITaxonomy
01 模式类型 (Types of Models)
1.1 基础模型 (Foundation Models)
- 大型人工智能模型,拥有数百万/数十亿个参数,并在数 TB 的通用和无标签数据基础上进行训练。
- 设计为通用型模型,为各种人工智能应用提供基础。
- 例如 GPT 3.5、GPT4、Stable Diffusion、Llama、BERT、Gemini
1.2 大语言模型 (LLM)
- 基于“Transformer Architecture”进行训练的基础模型,能够执行各种自然语言处理(NLP)任务,如文本生成、分类、摘要等。
- LLM 因其生成连贯文本的能力而被认为是世界游戏规则的改变者。
- 所有LLMs都是下一个“token”预测模型。它们仅在给定一系列词的输入时生成下一个单词。
- “大型”一词指的是模型中训练参数的数量(数十亿个参数)。
- 例如 GPT 3.5、Llama2、Mistral、Falcon
1.3 小型语言模型 (SLM)
- SLM 类似于 LLM,但训练参数的数量较少(因此称为 “小型”)。
- 它们速度更快,需要的内存和计算资源更少,但不如LLM灵活和可扩展。因此用于非常特定的任务。
- 例如 TinyLlama、Pythia
1.4 大型多模态模型(LMM)
- 多模态是指模型不仅能处理和生成文本,还能处理和生成图像、视频、语音、音频等其他数据模态。
- 例如 LLaVA、LLaMA-Adapter V2、LAVIN
1.5 视觉语言模型 (VLM)
- VLMs和LMMs通常可以互换使用。主要区别在于,视觉模型专注于图像和视频等模态,而多模态模型则涵盖所有数据模态。因此,视觉模型是多模态模型的子集。
- 例如 GPT4、Gemini、Mixtral、Flamingo、BLIP、Macaw LLM
1.6 图像生成模型
- 与 LLM 只生成文本一样,图像生成模型生成图像。
- Text-to-Image 功能根据文本输入(prompt)生成图像,而 Image-to-Image 功能可用于生成输入图像的变化形式。
- 这些模型的一种典型底层架构是 Diffusion 模型。
- 例如 Dall E3、Midjourney、Stable Diffusion
1.7 文本转语音模型(TTS)
- 顾名思义,TTS 模型将一段文本作为输入,然后合成语音输出。
1.8 语音转文本模型(STT)
- STT 模型将语音内容输入,并生成文本输出。
02 LLM领域常用的术语和概念(Common LLM Terms)
2.1 提示词(Prompt)
- 我们向人工智能提供的指令或问题,可以获取特定类型的模型回答。
- 与传统编程范式不同,与LLMs的交互不是基于正式的代码语法,而是向模型提供自然语言输入。这种输入称为提示词。
2.2 文本补全(Completion)
- LLM针对给定提示词生成的输出称为文本补全。
2.3 推理(Inference)
- 模型根据给定提示词进行文本补全的过程称为推理。
Source : Image by Author
2.4 词元(Tokens)
- 词元是 LLM 处理文本(单词或字符)的单位。它是 LLM 处理输入和输出的构件。
2.5 参数(Parameters)
- 参数是语言模型中所设置变量的数量,模型在训练过程中从数据中学习这些变量。LLM 的语言能力归功于训练的大量参数。
2.6 上下文窗口(Context Window)
- LLM 的结构特性决定了它可以处理一定数量的词元(提示词和补全本文)。
- 这个最大 tokens 数量被称为模型的上下文窗口。
2.7 Temperature
- Temperature 是控制 LLM 输出内容随机性的参数。
- Temperature 越高,输出就越多样,越有创造性;Temperature 越低,输出就越集中,越有确定性。
Source : Image by Author
2.8 Top N/P Sampling
- LLMs 是 next-token 生成模型。其方法是根据概率分布选择 token 来补全文本。
- Top N sampling 从概率最高的 ‘N’ 个 tokens 中选择一个 token 。
- Top P sampling 从概率总和为 ‘P’ 的最高概率 tokens 中选择一个 token 。
Source : Image by Author
2.9 幻觉问题(Hallucinations)
- 由模型生成的不正确或捏造的信息。
- 重要的是要记住,LLMs 通过不断从概率分布中选择 token 生成文本,它并没有声称能再现准确的信息。
2.10 偏见和毒性(Bias and Toxicity)
- LLMs 是在大量的非结构化数据上进行训练的。这些数据拥有各种来源(主要是开放的互联网)。基于这些训练数据,模型可能产生偏见或生成有害内容。
03 LLM 生命周期相关术语(LLM Lifecycle Stages)
3.1 预训练(Pre-training)
- 在大型数据集上对语言模型进行训练,以学习通用语言模式。
- 需要大量数据。
- 训练需要很长一段时间。
- 模型被设计用来根据先前的上下文来生成文本中下一个可能的单词或字符。
- 成本高、专业性强
Source : Image by Author
3.2 提示工程(Prompt Engineering)
- 简而言之,提示工程就是指定有效提示词以实现所需模型行为的过程。
3.3 有监督微调(Supervised Fine Tuning)
- 微调是一种有监督的学习过程,我们可以利用提示词-文本补全内容对(prompt-completion pairs)的标注数据集来调整 LLM 的权重。
- 指令微调(Instruction Fine Tuning)是一种策略,即根据指令示例以及LLM应如何对这些指令做出响应来对 LLM 进行训练。指令微调可提高指令任务的性能。
- 全参数微调(Full Fine Tuning)是指更新 LLM 的所有参数。这需要足够的内存来存储和处理所有梯度和其他组件。
Source : Image by Author
3.4 灾难性遗忘(Catastrophic Forgetting)
- 对单一任务进行微调可以显著提高模型在该任务上的性能。
- 然而,由于模型权重会被更新,指令模型在其他任务上(指令模型表现良好的任务)的性能可能会降低。这被称为灾难性遗忘。
3.5 基于人类反馈的强化学习(Reinforcement Learning from Human Feedback)
- 强化学习是机器学习的一种类型,在这种方法中,Agent 通过在环境中采取行动,学习与特定目标相关的决策,其目标是最大化某种形式的累积奖励。
- 在 RLHF 中,Agent(我们微调的指令 LLM)在其环境(上下文窗口)中,从行动空间(action space,LLM中的所有tokens/单词)中的所有可用行动中选择一项行动(生成文本)。
- 该行动的结果(生成的文本)由人类评估,并在结果(生成的文本)与目标一致时给予奖励。如果结果与目标不一致,则给予负奖励或不给予奖励。这是一个迭代过程,每一步都称为“rollout”。模型权重的调整方式是在流程结束时使总奖励最大化。
- RLHF的主要目标之一是与“帮助性”、“诚实性”和“无害性”的人类价值观保持一致。
Source : Image by Author
3.6 奖励模型(Reward Model)
- 在 RLHF 中,不是由人类持续提供反馈,而是在人类生成的训练示例上训练一个名为奖励模型的分类模型。
3.7 从人工智能反馈中进行强化学习
- 对于 RLHF 来说,扩展人类反馈的规模可能具有挑战性,因为需要大量的人力成本来生成训练好的奖励模型。随着模型数量和使用场景的增加,人力将成为一种有限的资源,需要采取方法来扩展人类反馈的规模。
- Anthropic 的研究人员在 2022 年首次提出了 Constitutional AI 概念,这是用于扩展监督规模并解决 RLHF 所存在问题的一种方法。Constitutional AI 涉及使用一系列规则和原则(也就是所谓的宪法(constitution))来训练模型,以规范模型的行为。
- Constitutional AI 的训练过程包括两个阶段:有监督学习和强化学习。
- 在有监督学习阶段,模型会接收带有有害情景的提示词,并被要求根据宪法原则(constitution)批判其自身的模型响应。修改后的符合规则的模型响应被用于微调模型。
- 强化学习阶段,称为从人工智能反馈中进行强化学习(RLAIF),使用微调后的模型基于宪法原则(constitution)生成模型响应。
Source: Image by Author
3.8 In Context Learning
- 上下文学习(In Context Learning)是指大语言模型在没有任何其他建模干预的情况下,按照指令生成模型响应。
3.9 Few Shot Learning
- 少样本学习(Few Shot Learning)是指只仅在提示词内提供少数示例,教授 LLM 执行特定任务的过程。
Source : Image by Author
有关 LLM 生命周期相关术语(LLM Lifecycle Stages)的更多详细说明,请参阅下面的文章:
https://abhinavkimothi.gumroad.com/l/GenAILLM
04 LLM 评估方法和指标等相关术语(LLM Evaluations)
4.1 Perplexity
Perplexity 这个指标用于衡量语言模型对样本进行预测的好坏程度。同时也能够衡量模型对新数据的惊讶程度。
4.2 BLEU
一种评估机器生成文本质量的指标。衡量生成文本与参考文本的匹配程度。
4.3 ROUGE
一套用于评估自动摘要和机器翻译任务场景性能的指标。评估生成文本与参考文本之间的重叠程度。
Source : Image by Author
4.4 BIG-bench (Google)
The Beyond the Imitation Game benchmark(BIG-bench)是一项特定测试,旨在挑战和评估大模型的能力。
4.5 ARC
Abstraction and Reasoning Corpus(ARC)基准用于评估语言模型的推理能力。重点关注模型对不同场景的理解和推理能力。
4.6 HellaSwag
HellaSwag 是一个具有挑战性的用于评估常识性自然语言推理的数据集,回答里面的问题对最先进的模型来说也尤其困难,尽管这些问题对人类来说基本都属于常识(准确率>95%)。
4.7 MMLU
Massive Multitask Language Understanding 专注于零样本和少样本评估,与人工评估方法如出一辙。
4.8 TruthfulQA
用于评估语言模型回答真实性的基准。测试模型所提供的“真实”信息的准确性和可靠性。
4.9 GLUE
The General Language Understanding Evaluation(GLUE)基准是一套用于训练、评估和分析自然语言理解系统的资源集合。
4.10 SuperGLUE
SuperGLUE 是评估语言模型性能的基准,专门设计用于评估传统 NLP 任务之外的综合语言理解能力。该评估基准包括更具挑战性的任务(more challenging tasks)、多样化的任务格式(diverse task formats)和人类表现水平的基准(comprehensive human baselines),使其成为评估语言模型能力的一个比较复杂且广为被大众接受的基准。
4.11 HELM
HELM(Holistic Evaluation of Language Models)通过对使用场景和衡量标准进行分类,提高了理解语言模型的透明度。HELM的目标是成为一个有生命力的基准,不断覆盖新的场景、衡量标准和模型。
05 LLM 架构相关术语(LLM Architecture)
5.1 分词(Tokenization)
- 将文本分解为较小单元(token)进行处理。
5.2 Recurrent Neural Network (RNN)
- 一种专为顺序数据处理而设计的神经网络类型。允许模型保持对过去输入的记忆,这对于理解语境(context)至关重要。
5.3 Transformer
- 一种专为并行处理顺序数据而设计的神经网络架构。这是模型理解和生成序列数据的一种更有效的方法。
Source : Image by Author
5.4 Encoder
- 模型的一部分,负责处理输入数据。它将输入信息“编码”或转换为模型可以处理的格式。
5.5 Decoder
- 模型的一部分,负责基于编码的输入生成输出。它“解码”信息,将模型的理解转化为有意义的模型响应。
5.6 注意力机制(Attention)
- 神经网络中的一种机制,允许模型集中注意力于输入数据的特定部分。
Source : Image by Author
5.7 自注意力机制(Self-Attention)
- 一种注意力机制,模型关注其自身输入的不同部分。有助于模型权衡同一输入中不同词语的重要性。
5.8 多头自注意力机制(Multi-Headed Self-Attention)
- 同时使用多个自注意力机制。增强模型同时捕捉输入信息不同方面的能力。
5.9 Attention Map
- 直观显示模型的注意力焦点。该地图显示输入信息的哪些部分对模型生成输出更为重要。
5.10 仅使用编码器的模型(Encoder Only Models)
- 只具有编码部分而不直接生成输出的模型。当重点是理解和表示输入信息而不是生成模型响应时使用。
Source : Image by Author
5.11 因果语言建模(Causal Language Modeling)
- 因果语言建模涉及根据前文来预测句子中下一个单词或单词序列,强调语言中的时间顺序和因果关系。
5.12 仅使用解码器的模型 Decoder Only Models
- 只根据预先编码的信息生成输出的模型。在重点是生成响应而无需理解新输入时很有用。
Source : Image by Author
5.13 MLM (Masked Language Modeling)
- MLM 是自然语言处理中的一种技术,在这种技术中,序列中的某些 token 被有意屏蔽,而模型经过训练后可根据周围的语境预测这些被屏蔽的token。
5.14 序列到序列模型(Sequence-to-Sequence Models)
- 序列到序列模型是设计用来将输入序列转换为输出序列的模型。是语言翻译、总结和对话等任务的理想选择。
Source : Image by Author
5.15 嵌入(Embeddings)
- 自然语言处理中的嵌入是指将单词、短语或句子映射为连续向量空间中的数字向量。这些嵌入是通过表征学习技术学习到的,可以捕捉语义关系和上下文信息。
06 检索增强生成(RAG)
6.1 检索增强生成 (RAG)
- RAG 通过检索与问题或任务相关的数据和文档,并将其作为上下文提供给 LLM ,从而提高 LLM App的效率。
Source : Image by Author
6.2 向量数据库(Vector Databases)
- 向量数据库以向量形式储数据,从而实现高效的相似性搜索。
6.3 检索器(Retrievers)
- RAG系统中的组件,从向量数据库中检索相关信息。
6.4 Naive RAG
- 没有额外的复杂组件或优化的 RAG 基本实现形式。
- Retrieve → Read(检索 → 读取)
Source : Image by Author
6.5 高级 RAG系统(Advanced RAG)
- 一种更复杂的检索增强生成方法。
- Rewrite → Retrieve → Rerank → Read(重写 → 检索 → 重排 → 阅读)
Source : Image by Author
6.6 模块化 RAG 系统(Modular RAG)
- 模块化的检索增强生成系统,具有单独且可互换的组件。
- 包括memory, search, routing, fusion等模块。
Source : Image by Author
6.7 Chunking
- 将较长的文本分割成易管理的大小,以便加快搜索速度和管理上下文窗口。
6.8 评估 RAG 系统
-
上下文相关性(Context Relevance)
-
检索到的上下文与查询相关吗?
-
答案相关性(Answer Relevance)
-
模型响应是否与查询相关?
-
上下文召回率(Context Recall)
-
检索到的上下文是否与基本事实一致?
-
上下文精度(Context Precision)
-
检索到的上下文是否排序正确?
-
准确性和可靠性(Groundedness/Faithfulness)
-
生成的输出结果在多大程度上以检索到的信息为基础。
-
准确性(Accuracy)
-
输出结果的正确性。
Source : Image by Author
有关 RAG 的更详细介绍,请下载这本 75 页的电子书,其中包含 RAG 系统示例和代码片段:
https://abhinavkimothi.gumroad.com/l/RAG
07 LLM Agent
7.1 Agent
利用语言模型执行任务的实体或系统。
7.2 Memory
Agent或模型保留先前交互信息的能力。
7.3 Planning
如何在 LLM Agent 中组织行为来实现特定目标。
7.4 Tools
Agent 使用的额外组件或资源,能够增强性能。
7.5 ReAct
Reason and Act(推理与行动),确定模型如何归因信息来生成响应。
7.6 Chain-of-thought
Agent 遵循的逻辑思维或推理的连续序列。
7.7 Tree-of-thought
由相互关联的想法或信息组成的层次结构。
7.8 Task-Question Decomposition
将任务或问题分解为较小、可管理的组件。
7.9 Reflection
LLM Agent思考和分析自己的思维过程的能力。
08 LMM 架构相关术语(LMM Architecture)
8.1 生成对抗网络(GAN)
一种带有生成器和判别器的神经网络框架。生成器创建内容,判别器评估其质量,促进内容改进。
8.2 变分自编码器(VAE)
一种用于生成新数据点的神经网络。其重点是对数据进行编码和解码,以便生成有意义的内容。
8.3 模态(Modalities)
不同形式或类型的数据,例如文本、图像或音频。
8.4 多模态嵌入空间(Multimodal Embedding Space)
在一个共享的空间中,不同类型的表征(Representations)被进行了对齐(Aligned)(译者注:不同模态的数据被关联、匹配或整合在一起))。
8.5 Contrastive Language-Image Pretraining(CLIP)
CLIP(Contrastive Language-Image Pretraining)由 OpenAI** 提供,是一种在各种图像-文本对((image, text) pairs)上进行训练的神经网络。
Source : Image by Author
8.6 对比学习(Contrastive Learning)
通过对比正反两方面的例子来让模型学习的一种训练方法。
8.7 视觉编码器(Vision Encoder)
模型中负责处理视觉信息的部分。处理视觉数据的编码,使整个模型能够理解这些数据。
09 开发、训练和部署过程中成本和效率的考量(Cost & Efficiency)
9.1 Graphics Processing Unit (GPU)
图形处理单元(GPU)是一种专用硬件,可用于加速神经网络的训练和推理过程。
9.2 Parameter Efficient Fine Tuning (PEFT)
- 参数高效微调(PEFT)是一种微调方法,类似于预训练,需要内存来存储模型以及优化器、梯度等其他参数。
- 参数高效微调(PEFT)只对模型参数的一个子集进行微调,在某些情况下,完全不涉及原始权重。
- 由于PEFT只重新训练一部分参数,可以避免灾难性遗忘。
Source : Image by Author
9.3 模型量化(Quantisation)
量化是一种降低模型中数值表示精度的技术,可以实现更高效的计算。
Source : Image by Author
9.4 Low Rank Adaptation (LoRA)
低秩适配器(LoRA)涉及将模型的参数调整为较低秩,从而在保持性能的同时降低计算复杂度。
Source : Image by Author
9.5 Soft Prompting
Soft Prompting 是一种在内容生成过程中为模型提供温和指导的技术,允许模型灵活做出响应。
9.6 Fully Sharded Data Parallel (FSDP)
FSDP是一种并行化策略,它将模型的参数完全分片到多个设备上,从而提高了分布式训练的效率。
Source : Image by Author
9.7 Distributed Data Parallel (DDP)
分布式数据并行(DDP)也是一种并行化策略,将模型参数分布在多个设备上进行并行训练。
Source : Image by Author
10 LLM 安全相关的问题和解决方案(LLM Security)
10.1 Prompt Injection
Prompt Injection 通过恶意设计的提示词对 LLM 进行操纵,使其忽略过滤器(filters)或执行不需要的命令。攻击者可以覆盖 system prompt,从而访问 LLM 可访问的功能和数据。
10.2 Data Leakage(数据泄露)
LLM可能会通过模型响应意外泄露诸如 PII 之类的敏感数据。
10.3 Training Data Poisoning(训练数据污染)
在预训练或微调阶段,可能会在训练集中引入不正确、有偏见或危险的数据。
11 部署与推理相关术语(Deployment & Inference)
- 延迟(Latency)
延迟是发送请求到模型并接收相应响应之间的时间延迟,对于实时应用至关重要。
- 吞吐量(Throughput)
吞吐量是指模型在给定时间内处理的请求数量,表明其处理速度。
- 模型剪枝(Pruning)
模型剪枝是指在神经网络中移除不必要或不重要的连接,以减小网络规模并提高效率。
- 模型蒸馏(Distillation)
模型蒸馏是训练一个较小的模型来模仿一个较大、更复杂的模型的行为的过程,传递知识并提高效率。
- Flash Attention
Flash attention是一种针对高效计算设计优化的注意力机制,特别适用于资源有限的部署场景。
- KV Cache
KV Cache是一种存储预先计算的键-值对的机制,有助于快速检索并减少推理过程中的计算量。
- 位置编码(Positional Encoding)
位置编码(Positional Encoding)是一种在序列模型中使用的技术,用于注入输入序列中 token 的位置信息,帮助模型理解数据的顺序。
- 投机采样(Speculative Decoding)
投机采样针对给定输入预测多种可能的结果,使模型能够考虑不同的潜在模型响应。
Thanks for reading!
END
本文经原作者授权,由Baihai IDP编译。如需转载译文,请联系获取授权。
原文链接:
https://pub.towardsai.net/generative-ai-terminology-an-evolving-taxonomy-to-get-you-started-4ca487bfe2d8