大模型(LLM)面试全解:主流架构、训练目标、涌现能力全面解析

系列文章目录

大模型(LLMs)基础面
01-大模型(LLM)面试全解:主流架构、训练目标、涌现能力全面解析

大模型(LLMs)进阶面


文章目录

  • 系列文章目录
  • 大模型(LLMs)基础面
  • 一、目前主流的开源模型体系
    • 1.1 Encoder-Decoder 模型
      • 1.1.1 架构特点
      • 1.1.2 优缺点与适用场景
    • 1.2 Causal Decoder 模型
      • 1.2.1 架构特点
      • 1.2.2 优缺点与适用场景
    • 1.3 Prefix Decoder 模型
      • 1.3.1 架构特点
      • 1.3.2 优缺点与适用场景
  • 二、Prefix Decoder、Causal Decoder 和 Encoder-Decoder 的区别
    • 2.1 核心区别
      • 2.1.1 Encoder-Decoder 架构
      • 2.1.2 Causal Decoder 架构
      • 2.1.3 Prefix Decoder 架构
  • 三、大模型(LLM)的训练目标是什么?
    • 3.1 语言模型目标
    • 3.2 去噪自编码器目标
  • 四、涌现能力是什么?
    • 4.1 涌现能力的定义
      • 4.1.1 原因分析
      • 4.1.2 Decoder-Only 架构的优越性
  • 五、大模型的规模意义
    • 5.1 参数规模的含义
  • 六、大模型的优点和缺点
    • 6.1 大模型的优点
    • 6.2 大模型的缺点
  • 七、总结


大模型(LLMs)基础面

大语言模型(Large Language Models, LLMs)是人工智能技术中的重要组成部分,其广泛应用在自然语言处理(NLP)任务中。本文将系统化地从大模型的核心技术点、架构特点、训练目标到优缺点进行解析,并回答相关技术面试问题,帮助读者全面理解LLMs。


一、目前主流的开源模型体系

目前,大语言模型(LLMs)的开源体系主要分为以下三类架构:Encoder-DecoderCausal DecoderPrefix Decoder。这三种架构在注意力机制设计上各有特色,并适配不同的任务场景。
在这里插入图片描述

从上图可以直观看出三种模型架构的差异性:

  1. Encoder-Decoder:输入采用双向注意力,输出采用单向注意力。
  2. Causal Decoder:输入和输出均采用单向注意力。
  3. Prefix Decoder:输入采用双向注意力,输出采用单向注意力,是一种折中架构。

接下来,我们将深入解析各类模型的架构特点、优缺点及适用场景。

1.1 Encoder-Decoder 模型

1.1.1 架构特点

  • 双向注意力(输入端):Encoder 通过双向注意力机制捕获整个输入序列的全局上下文信息,使得每个词的表示与全局句子结构关联紧密。
  • 单向注意力(输出端):Decoder 的单向注意力机制使得生成当前词时,只能访问前面的已生成词,从而满足文本生成的自回归特性。
  • 代表模型:T5、Flan-T5、BART。

1.1.2 优缺点与适用场景

  • 优点
    • 在偏理解的 NLP 任务(如机器翻译、问答、文本摘要)中表现优异。
    • 能够处理输入输出序列具有明确对应关系的任务。
  • 缺点
    • 在长文本生成任务中效果较差,难以保持生成结果的一致性。
    • 训练和推理效率较低。
  • 适用场景
    • 需要深度理解输入文本的任务,例如:
      • 机器翻译:准确捕捉输入语义并生成高质量翻译文本。
      • 摘要生成:对长文本提炼核心信息。

1.2 Causal Decoder 模型

1.2.1 架构特点

  • 单向注意力:Causal Decoder 使用严格的单向注意力机制(左到右),生成当前词时仅能依赖其前面已生成的词。这种机制适合自回归任务。
  • 自回归训练目标:训练目标与下游任务一致,简化了训练过程。
  • 代表模型:GPT 系列(GPT-2、GPT-3、GPT-4)、LLaMA 系列。

1.2.2 优缺点与适用场景

  • 优点
    • 训练效率高:由于单向注意力的简单性,训练效率更高。
    • 生成能力强:在文本生成任务(如对话生成、写作辅助)中表现更佳。
    • 涌现能力:随着模型参数规模的增加,表现出强大的 zero-shot 和 few-shot 学习能力。
  • 缺点
    • 对输入文本的深度理解能力不如 Encoder-Decoder 架构。
  • 适用场景
    • 偏生成任务,例如:
      • 对话生成:如 ChatGPT 的对话功能。
      • 长文本生成:如文章创作和自动写作辅助。

1.3 Prefix Decoder 模型

1.3.1 架构特点

  • 折中型架构:Prefix Decoder 的输入序列采用双向注意力机制,从而保留 Encoder 的全局理解能力;而输出序列则采用单向注意力,以满足生成任务的需求。
  • 代表模型:GLM-130B、ChatGLM、ChatGLM2。

1.3.2 优缺点与适用场景

  • 优点
    • 综合了 Encoder-Decoder 和 Causal Decoder 的特点,在理解能力与生成能力之间取得平衡。
    • 适用于需要理解输入文本并生成合理输出的任务。
  • 缺点
    • 由于架构折中的复杂性,训练效率低于 Causal Decoder 模型。
  • 适用场景
    • 平衡理解与生成的任务,例如:
      • 对话生成与文本摘要的结合
      • 复杂问答任务:需要理解问题背景并生成准确答案。

二、Prefix Decoder、Causal Decoder 和 Encoder-Decoder 的区别

2.1 核心区别

三种架构的关键区别在于注意力机制(Attention Mechanism)的实现方式及其mask规则:
在这里插入图片描述

2.1.1 Encoder-Decoder 架构

  • 输入:采用双向注意力,能够捕捉整个输入序列的全局上下文关系。
  • 输出:采用单向注意力,仅关注输出序列中已生成的部分。
  • 应用场景:适合输入输出文本具有明确对应关系的任务,例如翻译、问答。

2.1.2 Causal Decoder 架构

  • 采用严格的单向注意力规则:生成当前单词时仅能访问前面的单词。
  • 应用场景:适合文本生成任务,尤其是长文本生成。

2.1.3 Prefix Decoder 架构

  • 输入序列采用双向注意力,输出序列采用单向注意力。
  • 应用场景:兼顾理解与生成的场景。

三、大模型(LLM)的训练目标是什么?

3.1 语言模型目标

基于语言模型的训练目标是预测序列中每个单词的条件概率,优化目标函数如下:

L L M ( x ) = ∑ i = 1 n log ⁡ P ( x i ∣ x < i ) \ \mathcal{L}_{LM}(x) = \sum_{i=1}^{n} \log P(x_i | x_{<i})  LLM(x)=i=1nlogP(xix<i)

  • 特点:通过最大似然估计(Maximum Likelihood Estimation, MLE)来训练模型。
  • 效率比较:Causal Decoder > Prefix Decoder。

3.2 去噪自编码器目标

通过对文本进行随机扰动或遮掩,训练模型恢复原始文本。目标函数如下:

L D A E ( x ) = log ⁡ P ( x ~ ∣ x / x ~ ) \ \mathcal{L}_{DAE}(x) = \log P(\tilde{x}|x_{/\tilde{x}})  LDAE(x)=logP(x~x/x~)

  • 代表模型:GLM-130B、T5。
  • 实现难度:相比语言模型更高,但适合于一些特殊任务。

四、涌现能力是什么?

4.1 涌现能力的定义

涌现能力(Emergent Capabilities)指模型在参数规模增加后,表现出一些原本无法完成或难以完成的任务能力。

4.1.1 原因分析

  1. 评价指标不平滑:任务指标的非线性变化导致宏观上呈现出“突变”现象。
  2. 复杂任务分解:复杂任务通常由多个子任务组成,子任务的性能平滑提升,但整体任务表现出显著改进。

4.1.2 Decoder-Only 架构的优越性

  • 在无标注数据上,通过自监督学习发挥出zero-shot性能。
  • Decoder-Only 架构能更高效地利用无标注数据,具备理论和工程优势。

五、大模型的规模意义

5.1 参数规模的含义

如175B、60B、540B等,指模型的参数数量:

  • B:Billion(十亿)。
  • 例如,ChatGPT 使用约1750亿参数。

六、大模型的优点和缺点

6.1 大模型的优点

  1. 高效利用无标注数据
    • 通过预训练+微调的方式,减少数据标注成本。
    • 提高模型的泛化能力。
  2. 生成能力强
    • 能够在创意、教育等领域生成新颖有价值的内容(如文本、图像、代码)。
  3. 涌现能力
    • 可以完成符号推理、常识推理等复杂任务。

6.2 大模型的缺点

  1. 资源消耗高
    • 训练成本昂贵。例如,GPT-3 训练消耗约30万美元,产生约284吨二氧化碳。
  2. 数据问题
    • 数据偏见、数据安全性和隐私问题可能导致输出不准确或不道德。
  3. 模型可解释性差
    • 难以理解模型内部的决策逻辑,需要进一步研究和改进。

七、总结

通过本文的内容,对以下问题进行了系统性的总结和梳理:

  1. 主流的开源模型体系:当前大模型主要分为三大类架构——Encoder-Decoder、Causal Decoder、Prefix Decoder,各自具有针对性强的特点和适用场景。例如,Encoder-Decoder更适合文本理解任务,而Causal Decoder在文本生成任务中更为强大。

  2. 不同架构的区别:三种架构的核心差异体现在注意力机制的设计上,Prefix Decoder兼具输入理解和生成能力,Causal Decoder更适用于自回归任务,而Encoder-Decoder则强调输入的全局理解。

  3. 训练目标:语言模型主要基于最大似然估计,而去噪自编码器则通过恢复被扰乱的文本进行训练,二者在应用场景和效率上各有侧重。

  4. 涌现能力的原因:大模型的涌现能力来自于非线性评价指标的影响,以及复杂任务在模型参数规模扩大时逐步解决子任务的能力。

  5. Decoder-Only架构为何流行:由于其zero-shot能力和对无标注数据的高效利用,Decoder-Only架构成为了当前大模型的主流选择。

  6. 参数规模的含义:如175B、60B等数字代表了模型参数量,参数规模越大,模型越可能具备更强的泛化和生成能力。

  7. 优缺点分析:大模型的主要优势包括高效利用无标注数据、强大的生成能力和涌现能力,但也存在资源消耗高、数据安全性差和模型可解释性不足等问题。

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

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

相关文章

若依框架--数据字典设计使用和前后端代码分析

RY的数据字典管理: 字典管理是用来维护数据类型的数据&#xff0c;如下拉框、单选按钮、复选框、树选择的数据&#xff0c;方便系统管理员维护。减少对后端的访问&#xff0c;原来的下拉菜单点击一下就需要对后端进行访问&#xff0c;现在通过数据字典减少了对后端的访问。 如…

Unity打包+摄像机组件

转换场景 使用程序集&#xff1a;using UnityEngine.SceneManagement; 切换场景相关代码&#xff1a;SceneManager.LoadScene(1);//括号内可放入场景名称&#xff0c;场景索引等 //Application.LoadLevel(""); 老版本Unity加载场景方法 打包相关 Bundle Identi…

蓝桥与力扣刷题(66 加一)

题目&#xff1a; 给定一个由 整数 组成的 非空 数组所表示的非负整数&#xff0c;在该数的基础上加一。 最高位数字存放在数组的首位&#xff0c; 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外&#xff0c;这个整数不会以零开头。 示例 1&#xff1a; 输入…

stable diffusion 量化学习笔记

文章目录 一、一些tensorRT背景及使用介绍1&#xff09;深度学习介绍2&#xff09;TensorRT优化策略介绍3&#xff09;TensorRT基础使用流程4&#xff09;dynamic shape 模式5&#xff09;TensorRT模型转换 二、实操1&#xff09;编译tensorRT开源代码运行SampleMNIST 一、一些…

省森林防火应急指挥系统

森林防火形势严峻 我国森林防火形势十分严峻&#xff0c;森林火灾具有季节性强、发现难、成灾迅速等特点&#xff0c;且扑救难度大、影响范围广、造成的损失重。因此&#xff0c;构建森林防火应急指挥系统显得尤为重要。 系统建设模式与架构 森林防火应急指挥系统采用大智慧…

drawDB docker部属

docker pull xinsodev/drawdb docker run --name some-drawdb -p 3000:80 -d xinsodev/drawdb浏览器访问&#xff1a;http://192.168.31.135:3000/

C++ STL map和set的使用

序列式容器和关联式容器 想必大家已经接触过一些容器如&#xff1a;list&#xff0c;vector&#xff0c;deque&#xff0c;array&#xff0c;forward_list&#xff0c;string等&#xff0c;这些容器统称为系列容器。因为逻辑结构为线性的&#xff0c;两个位置的存储的值一般是…

26、【OS】【Nuttx】用cmake构建工程

背景 之前wiki 14、【OS】【Nuttx】Nsh中运行第一个程序 都是用 make 构建&#xff0c;准备切换 cmake 进行构建&#xff0c;方便后续扩展开发 Nuttx cmake 适配 nuttx项目路径下输入 make distclean&#xff0c;清除之前工程配置 adminpcadminpc:~/nuttx_pdt/nuttx$ make …

spring boot解决swagger中的v2/api-docs泄露漏洞

在配置文件中添加以下配置 #解决/v2/api-docs泄露漏洞 springfox:documentation:swagger-ui:enabled: falseauto-startup: false 处理前&#xff1a; 处理后&#xff1a;

LayaAir3.2来了:性能大幅提升、一键发布安装包、支持WebGPU、3D导航寻路、升级为真正的全平台引擎

前言 LayaAir3的每一个分支版本都是一次较大的提升&#xff0c;在3.1彻底完善了引擎生态结构之后&#xff0c;本次的3.2会重点完善全平台发布相关的种种能力&#xff0c;例如&#xff0c;除原有的安卓与iOS系统外&#xff0c;还支持Windows系统、Linux系统、鸿蒙Next系统&#…

AI多模态技术介绍:视觉语言模型(VLMs)指南

本文作者&#xff1a;AIGCmagic社区 刘一手 AI多模态全栈学习路线 在本文中&#xff0c;我们将探讨用于开发视觉语言模型&#xff08;Vision Language Models&#xff0c;以下简称VLMs&#xff09;的架构、评估策略和主流数据集&#xff0c;以及该领域的关键挑战和未来趋势。通…

uniapp区域滚动——上划进行分页加载数据(详细教程)

##标题 用来总结和学习&#xff0c;便于自己查找 文章目录 一、为什么scroll-view?          1.1 区域滚动页面滚动&#xff1f;          1.2 代码&#xff1f; 二、分页功能&#xff1f;          2.1 如何实现&#xff…

【大数据】Apache Superset:可视化开源架构

Apache Superset是什么 Apache Superset 是一个开源的现代化数据可视化和数据探索平台&#xff0c;主要用于帮助用户以交互式的方式分析和展示数据。有不少丰富的可视化组件&#xff0c;可以将数据从多种数据源&#xff08;如 SQL 数据库、数据仓库、NoSQL 数据库等&#xff0…

反射的底层实现原理?

Java 反射机制详解 目录 什么是反射&#xff1f;反射的应用反射的实现反射的底层实现原理反射的优缺点分析 一、什么是反射&#xff1f; 反射是 Java 编程语言中的一个强大特性&#xff0c;它允许程序在运行期间动态获取类和操纵类。通过反射机制&#xff0c;可以在运行时动…

【技术支持】安卓无线adb调试连接方式

Android 10 及更低版本&#xff0c;需要借助 USB 手机和电脑需连接在同一 WiFi 下&#xff1b;手机开启开发者选项和 USB 调试模式&#xff0c;并通过 USB 连接电脑&#xff08;即adb devices可以查看到手机&#xff09;&#xff1b;设置手机的监听adb tcpip 5555;拔掉 USB 线…

《框架程序设计》期末复习

目录 Maven 简介 工作机制&#xff08;★&#xff09; 依赖配置&#xff08;★&#xff09; Maven命令 MyBatis 入门 单参数查询&#xff08;★&#xff09; 多参数查询&#xff08;★★★&#xff09; 自定义映射关系&#xff08;★★★&#xff09; 基本增删改查操…

于交错的路径间:分支结构与逻辑判断的思维协奏

大家好啊&#xff0c;我是小象٩(๑ω๑)۶ 我的博客&#xff1a;Xiao Xiangζั͡ޓއއ 很高兴见到大家&#xff0c;希望能够和大家一起交流学习&#xff0c;共同进步。* 这一节内容很多&#xff0c;文章字数达到了史无前例的一万一&#xff0c;我们要来学习分支与循环结构中…

计算机图形学【绘制立方体和正六边形】

工具介绍 OpenGL&#xff1a;一个跨语言的图形API&#xff0c;用于渲染2D和3D图形。它提供了绘制图形所需的底层功能。 GLUT&#xff1a;OpenGL的一个工具库&#xff0c;简化了窗口创建、输入处理和其他与图形环境相关的任务。 使用的函数 1. glClear(GL_COLOR_BUFFER_BIT |…

探秘block原理

01 概述 在iOS开发中&#xff0c;block大家用的都很熟悉了&#xff0c;是iOS开发中闭包的一种实现方式&#xff0c;可以对一段代码逻辑进行封装&#xff0c;使其可以像数据一样被传递、存储、调用&#xff0c;并且可以保存相关的上下文状态。 很多block原理性的文章都比较老&am…

vue3+ts+element-plus 对话框el-dialog设置圆角

对话框el-dialog设置圆角&#xff0c;实现的需求效果&#xff1a; 目前只能通过行内样式&#xff08;style"border-radius: 20px"&#xff09;来实现圆角效果&#xff1a;