课程0基础Agent开发课 / 深度学习基础 / 深度学习与LLM的关系-你需要懂多少
— 15 min read

深度学习与LLM的关系-你需要懂多少

学完本章,你对神经网络、Transformer、注意力机制有了基本认识。但你可能还有一个问题:这些知识我真的用得上吗?作为 Java 工程师转型做 AI 应用开发,我需要把深度学习钻研到什么程度?

深度学习与LLM的关系:你需要懂多少?

学完本章,你对神经网络、Transformer、注意力机制有了基本认识。但你可能还有一个问题:这些知识我真的用得上吗?作为 Java 工程师转型做 AI 应用开发,我需要把深度学习钻研到什么程度?

这篇文章的目标是回答这个问题,同时做一件更重要的事:把本章学过的概念串联起来,说清楚深度学习如何一步步"构建"出了 LLM,以及 LLM 的种种行为——包括令人惊叹的能力和令人头疼的缺陷——如何从深度学习的本质中得到解释。


1.1 LLM 是深度学习的"顶层":逐层解释

很多人把 LLM 当作一个黑盒,输入文字、输出文字,仅此而已。但 LLM 实际上是深度学习技术积累十余年的产物,每一层都解决了一个特定的问题。理解这个层次结构,才能真正理解 LLM 是什么。

第一层:硬件层(GPU/TPU)

深度学习需要大量并行计算。训练一个中等规模的语言模型,需要对数十亿个参数反复执行矩阵乘法。这种计算模式正好适合 GPU——GPU 内部有数千个小核心,擅长同时处理大量简单运算,而 CPU 核心少但每个核心算力强,适合串行的复杂逻辑。现代 LLM 的出现,在很大程度上是因为 GPU 算力在过去十年大幅提升,使得以前不可能的训练规模变成了可能。

第二层:计算框架层(PyTorch / TensorFlow)

在裸 GPU 上编程需要写 CUDA 代码,极其繁琐。PyTorch、TensorFlow 等深度学习框架提供了更高层的抽象:你可以用接近数学公式的方式描述神经网络的计算图,框架自动完成反向传播(自动计算梯度)和 GPU 调度。这一层让研究人员能专注于模型设计,而不是硬件细节。

第三层:模型架构层(Transformer)

这是整个大模型时代最关键的技术决策。在 Transformer 出现之前,NLP 主要依赖 RNN(循环神经网络),其缺陷是只能顺序处理文本,无法并行计算,训练慢且难以捕捉长距离依赖。Transformer 的核心创新是注意力机制:处理每个词时,不是只看相邻的词,而是直接计算它与输入中所有词之间的关联强度。这让模型能同时捕捉任意距离的依赖,也让训练可以大规模并行。没有 Transformer 架构,就没有现代 LLM。

第四层:预训练层(大规模自监督学习)

有了 Transformer 架构,下一个问题是:怎么让模型学会语言?答案是自监督学习——从互联网抓取数以万亿计的文本,训练模型做一件事:预测下一个词。这个任务不需要人工标注,数据量几乎无限,而且迫使模型学习语法、语义、事实知识、推理模式——因为只有真正"理解"了上下文,才能更准确地预测下一个词。预训练完成后,模型具备了通用的语言理解与生成能力。

第五层:对齐层(RLHF)

预训练后的模型虽然能生成流畅文本,但不一定按人类期望的方式回答问题——它可能生成有害内容,也可能答非所问。RLHF(基于人类反馈的强化学习)解决的就是这个问题:让人类评估员对模型的多个输出打分,训练一个"奖励模型"来预测人类偏好,再用强化学习调整语言模型的输出,使其更符合人类期望。这一层让"能用"的语言模型变成了"好用"的助手。

第六层:你所使用的层(API 调用)

经过以上五层,才有了 GPT-4、Claude、Qwen 这样的 LLM 产品,以及供开发者调用的 API。作为应用开发者,你日常在这一层工作。但了解下面的层,能让你对模型的行为做出准确判断,而不是靠猜测。


1.2 LLM 的局限来自深度学习的本质

LLM 有一些令人费解的缺陷:它会一本正经地捏造事实,它算不清简单的数学题,它在长文档上表现会下降。这些问题不是工程师的疏忽,而是深度学习本质决定的。理解这些根本原因,才能知道如何正确使用 LLM。

1.2.1 幻觉:当"听起来对"替代了"事实上对"

LLM 的训练目标是预测下一个词,更准确地说,是学习一个条件概率分布:给定前面的所有词,下一个词是什么的概率最高?

这个目标决定了模型学到的是语言的统计规律,而不是现实世界的事实。模型在数以万亿计的文本中看到了无数知识,确实记住了大量事实——但记住事实和理解"什么是真实"是两回事。当模型遇到训练数据中没有充分覆盖的问题时,它不会说"我不知道",而是继续做它最擅长的事:生成一段在语言上连贯、在统计上合理的文本。这就产生了幻觉——内容听起来很专业,却是凭空捏造的。

更深层的问题在于:预测下一个词这个目标,天然地奖励流畅性而不是真实性。在大多数训练文本中,逻辑通顺的句子恰好也是真实的,所以模型可以通过追求流畅性间接学到很多真实知识。但两者并不完全等价。当训练数据中存在错误信息、或者模型对某个领域了解不足时,它会优先选择"听起来像这个领域该有的答案"的词,而不是"真正正确的答案"。

这就是为什么对 LLM 的输出,尤其是涉及具体事实、数字、引用的输出,必须验证。这不是因为 LLM 质量差,而是因为它的本质决定了它是一个语言预测系统,不是一个事实检索系统。

1.2.2 无法精确计算:数字被当作文字

人类在心算时,大脑处理的是数学概念——7 乘以 8 等于 56,这是一个精确的逻辑运算。LLM 处理数字的方式完全不同。

LLM 的输入是 token——文本被切分成的最小单元。数字"12345"在大多数分词器中会被切分成若干个 token,例如"123"和"45",或者更细碎的片段,具体取决于分词策略。关键是:这些数字 token 对模型来说,和"苹果"、"running"这些词语 token 没有本质区别,都是向量空间中的一个点。

模型没有内置的"算术电路",它处理数学问题的方式是:从训练数据中学习数学运算的模式,然后通过模式匹配生成答案。对于简单的、训练数据中大量出现过的计算(如个位数乘法),这种方式基本有效。但对于大数乘法、复杂的多步计算,模型只能靠不稳定的模式匹配来"猜"答案,错误率会急剧上升。

这是根本性的限制,不是通过更大的模型或更多训练数据能完全解决的——因为问题出在处理数字的方式上。正确的解法是给 LLM 配备工具:当遇到需要精确计算的问题时,让模型调用计算器或代码执行器,而不是自己去算。这也是工具调用(Function Calling)最重要的应用场景之一。

1.2.3 上下文限制:注意力机制的计算代价

Transformer 的强大来自注意力机制:处理每个词时,模型会计算它与序列中所有其他词之间的关联权重。这让模型能直接捕捉任意位置的依赖关系,不受距离限制。

但这个机制有一个内在的代价:计算复杂度是 O(n²)。假设输入序列有 n 个 token,注意力机制需要计算 n 个 token 与另外 n 个 token 之间的关联,也就是 n×n 次点积运算。输入长度翻倍,计算量变为四倍;输入长度扩大十倍,计算量扩大一百倍。

这不只是速度问题,还是内存问题。注意力矩阵的大小是 n×n,随着序列长度增长,所需的显存也平方级增长。这就是为什么早期的 GPT 模型上下文窗口只有 4096 个 token,而把上下文窗口扩展到 128K 甚至更长,需要大量的工程投入(包括 Flash Attention、滑动窗口注意力等专门的优化技术)。

更值得注意的是:即使上下文窗口很大,模型对不同位置内容的"注意力"也是不均匀的。大量研究发现,模型对上下文开头和结尾的信息更敏感,对中间段落的信息处理相对较弱。这被称为"中间迷失"现象。所以,上下文窗口的限制不只是数量上的,还有质量上的——把文档全部塞进上下文,不等于模型都能有效利用。

1.2.4 无法真正"理解":它学到的是什么

有一个更深层的问题值得思考:LLM 真的理解语言吗?

从技术角度看,LLM 学到的是词语在高维向量空间中的分布关系——语义相近的词,在向量空间中的距离更近;可以类比替换的词,在向量空间中有相似的方向关系。模型还学到了语法规则、推理模式、写作风格……这些都体现在数十亿个参数的数值中。

但"理解"通常意味着一种更深层的东西:把语言符号与现实世界的概念对应起来,知道"苹果"不只是一串字符,而是一种可以吃的水果,有重量、味道、生长在树上。LLM 学习的方式——在封闭的文本语料中做统计推断——能学到词语之间的关系,但这种关系是语言内部的,不是直接建立在对现实世界的感知上的。

这并不是说 LLM 的能力是虚假的。事实上,大量的语言内部关系恰好反映了真实世界的逻辑,所以 LLM 在很多推理任务上表现惊人。但理解这个本质,能让你对 LLM 的适用边界有更清醒的认识:它在语言上很强,在需要真实世界基础(精确感知、物理常识、持续记忆)的任务上有结构性限制。


1.3 深度学习知识如何帮助你用好 LLM

掌握深度学习的基本原理,不只是让你"懂原理",更重要的是让你在使用 LLM 时做出更好的决策。

1.3.1 知道自回归生成,如何设计更好的 Prompt

LLM 是自回归的:每次生成一个 token,然后把这个 token 追加到输入后面,再预测下一个 token,如此循环直到生成完毕。这意味着每一步的输出都依赖于之前所有输出的累积。

这个机制有一个重要含义:前面生成的内容会影响后面生成的内容。如果你让模型直接给出答案,它可能会先"猜"一个方向,然后剩余的生成都受到这个初始方向的牵引。而如果你让模型先"思考"——逐步分析问题,拆解子步骤——这些中间过程的 token 会作为上下文影响最终答案的生成,往往能得到更准确的结果。

这就是思维链(Chain of Thought)为什么有效的机制层面的解释:不是魔法,而是因为自回归生成的特性决定了,写出推理过程的 token 会改变后续 token 的概率分布,使答案更可能朝正确方向走。对你的实际启发是:对于复杂问题,在 Prompt 中要求模型"一步步思考"或"先分析再回答",通常能显著提升输出质量。

1.3.2 知道 Temperature 的含义,如何选择采样参数

模型生成每个 token 时,实际上是从一个概率分布中采样——每个可能的下一个词都有一个概率值,模型按照这个分布随机选取。Temperature 参数控制的是这个分布的"尖锐程度"。

从数学上说,模型输出的是一组 logit 值(原始分数),再经过 softmax 函数转化为概率。Temperature 参数 T 出现在 softmax 的指数中:每个 logit 除以 T 再做 softmax。当 T 趋近于 0 时,最高分的 token 的概率趋近于 1,模型每次都选最可能的词,输出确定、保守,但缺乏多样性。当 T 大于 1 时,概率分布变得更平坦,低概率词被选中的机会增加,输出更有创意,但也更容易出现错误。

这给你的实际指导是:写代码、做数学、提取信息等需要精确性的任务,应该把 Temperature 设低(接近 0);头脑风暴、写作、创意生成等需要多样性的任务,可以把 Temperature 设高(0.7 到 1.0 甚至更高)。盲目使用默认参数是次优选择——理解 Temperature 的本质,才能根据任务性质做出正确的参数决策。

1.3.3 知道 Embedding 的原理,如何理解语义搜索

传统的关键词搜索是字面匹配:查询词必须在文档中出现,才能被检索到。语义搜索的工作方式完全不同,它依赖于 Embedding——把文本映射到高维向量空间的过程。

Embedding 的核心特性是:语义相近的文本,在向量空间中的距离更近。"苹果手机"和"iPhone"在向量空间中很近,"如何减肥"和"体重管理方法"很近——即使字面上完全不同。语义搜索就是把查询文本和文档都转化为向量,然后计算向量之间的距离(通常用余弦相似度),返回距离最近的文档。

理解这个原理,对于 RAG(检索增强生成)的应用开发至关重要。你会理解:为什么检索质量是 RAG 系统的瓶颈,为什么查询的表述方式会影响检索结果,为什么对检索结果做二次排序(Reranking)往往能提升效果。Embedding 不是一个黑盒技巧,而是一个有清晰原理的机制——理解它,才能在 RAG 系统出现问题时做出正确的诊断。

1.3.4 知道注意力机制,如何使用上下文窗口

前面说了,注意力机制的计算是 O(n²) 的,而且模型对上下文不同位置的注意力是不均匀的。这对你的应用开发有直接的指导意义。

首先,不要把"能放进去"等同于"会被有效利用"。即使你有 128K 的上下文窗口,把大量不相关的背景信息全部塞入,不一定能提升效果,有时反而会稀释重要信息,降低模型对关键内容的注意力。

其次,最关键的信息应该放在上下文的显眼位置——通常是开头(System Prompt 或指令部分)或结尾(最近的用户输入)。如果你有重要的约束条件或背景信息,放在中间深处是风险最高的选择。

第三,对于超长文档的处理,RAG(检索增强生成)通常比直接塞入上下文更有效——因为 RAG 只把最相关的片段放进去,而不是全文,既节省计算资源,也让模型的注意力更集中在关键内容上。


1.4 不同角色需要的深度学习知识

不同角色需要掌握的深度学习深度
三类角色的深度学习知识深度对比——从应用开发者到 AI 研究员的递进要求

明确了深度学习和LLM的关系,再来看不同角色的学习建议:

1.4.1 分级表格:你需要懂多少

概念 Agent应用开发者 AI工程师(微调/部署) AI研究员
Transformer架构原理 需要(理解大意) 需要(深入理解) 需要(能实现)
注意力机制 需要(理解直觉) 需要(理解计算细节) 需要(能改进)
自回归生成 需要(理解Prompt工程基础) 需要 需要
Embedding原理 需要(RAG开发基础) 需要 需要
Temperature参数 需要(会用) 需要 需要
训练循环细节 不需要 需要 需要
反向传播细节 不需要 需要(了解) 需要(精通)
CNN/RNN 不需要 了解即可 需要
PyTorch代码 不需要 需要 需要
模型量化/推理优化 不需要 需要 需要

1.4.2 Agent开发者最需要理解的3个概念

1. 自回归生成(Autoregressive Generation)

LLM是逐token生成的:每次生成一个词,把这个词加入上下文,再生成下一个词,如此循环。

关键含义:前文影响后文。如果你让模型直接给出答案,它可能先"猜"一个方向,然后剩余生成都受到这个方向的牵引。但如果你先让模型"思考"(写出推理过程),这些中间token会作为上下文影响最终答案,往往能得到更准确的结果。

这就是**思维链(Chain of Thought)**为什么有效的机制层面解释。

2. Embedding向量化

文本被转换成高维向量,语义相近的文本在向量空间中距离更近。这是RAG(检索增强生成)的技术基础。

关键含义:RAG的检索质量取决于向量的质量,查询的表述方式会影响检索结果——理解这个,你才能诊断RAG系统效果差的根本原因。

3. 注意力机制的O(n²)代价

模型处理序列时,每个位置都要关注所有其他位置,计算量是序列长度的平方。

关键含义:上下文窗口的大小是有代价的,而且模型对不同位置的注意力是不均匀的("中间迷失"现象)。最重要的信息应该放在上下文的开头或结尾,而不是中间。

1.4.3 Agent应用开发者

需要理解的核心概念(详见上方3个概念):

  • Transformer架构的大意(知道它是LLM基础)
  • 自回归生成(Prompt工程的基础)
  • Embedding(RAG开发的基础)
  • Temperature等采样参数(根据任务类型选择合适参数)
  • 上下文窗口的限制和特性(更好地管理上下文)

不需要(作为应用开发者)
自己实现Transformer、编写训练循环、调整网络架构、处理梯度消失/爆炸问题。这些是AI工程师和研究员的工作。

本章内容对应用开发者的价值排序
第5篇(Transformer)最重要,第6篇(本篇)次之,其余内容了解概念即可。

1.4.4 AI工程师(模型微调/部署方向)

在应用开发者的基础上,还需要掌握训练循环的细节(损失函数、优化器、梯度更新)、迁移学习和微调的机制、模型量化和推理优化的基本原理,以及PyTorch的实际操作能力。这些内容在第2篇和第3篇有所涉及,第16章(模型微调)和第17章(MLOps)会做深入展开。

1.4.5 AI研究员

需要深入理解本章所有内容,能阅读并复现论文,能在已有架构基础上创新。这是一个更长期的学习路径,本课程不以此为目标。


1.5 推荐的学习路径

Agent 开发者路线(本课程主线):

本章了解核心概念 → 第6章 LLM 基础(理解预训练、RLHF 等) → 第7章 API 入门(开始写代码) → 第8章 Prompt 工程 → 第9章工具调用 → 第11章 RAG → 第12章 Agent 基础

AI 工程师路线(深度方向):

本章认真学习 → 系统学习 PyTorch 实践 → 第16章模型微调 → 第17章 MLOps

推荐参考资源:

资源 适合人群 特点
fast.ai(英文) 想快速上手深度学习实战 自顶向下,先跑通再理解原理
李沐《动手学深度学习》 中文读者,理论实践并重 严谨,覆盖全面
Andrej Karpathy 的 YouTube 想深入理解 GPT 原理 从零实现 GPT,讲解清晰
HuggingFace 课程 NLP 和 LLM 工程方向 与实际工具链结合紧密

小结

深度学习不是 LLM 的背景知识,而是 LLM 的构成基础。LLM 的每一种能力,都来自深度学习的某个机制;LLM 的每一个局限,也都有深度学习的根本原因。

作为 Java 工程师,你不需要成为深度学习专家。但当你理解了"预测下一个词"是什么意思,你就明白了幻觉的来源;当你理解了注意力机制的 O(n²) 代价,你就知道了为什么要谨慎地管理上下文;当你理解了 Temperature 是 softmax 的参数,你就能在代码和创意之间做出正确的采样策略选择。

这些知识不会出现在你的日常代码里,但它们会出现在你的每一个决策中。


后续应用

本章建立了深度学习的基础认知,尤其是 Transformer 和自注意力机制。进入第6章后,我们将直接进入 LLM 的核心原理——预训练、涌现能力、模型规模与能力的关系,以及 GPT 系列和 Claude 等主流模型的架构特点。第6章是从"理解深度学习"到"真正理解 LLM"的关键一跳,建议不要跳过。

本页目录