机器学习进阶书单:4本经典书籍如何选择最适合你?

从入门到进阶:机器学习学习路径的选择困境
在机器学习自学的路上,选对学习资料往往比埋头刷题更关键。近日,一位学习者在 Reddit 上发起了一场讨论:他已有《Grokking Machine Learning》和牛津大学出版社的《Fundamentals of Machine Learning》两本入门书打底,希望再入手一本来补全知识体系——目标非常明确:模型微调(Finetuning)与小型语言模型(SLM),同时希望所选内容具备长期的技术相关性。
背景知识:微调与SLM是什么? 模型微调(Finetuning)是指在大规模预训练模型的基础上,使用特定领域或任务的数据集对模型参数进行进一步训练的技术。随着GPT、BERT等大型预训练模型的兴起,微调已成为NLP和AI应用开发的核心范式——它能以远低于从头训练的成本,将通用模型适配到专业场景。
这一范式的兴起本质上是迁移学习(Transfer Learning)在NLP领域的成熟落地,而迁移学习本身有着更长的发展脉络。早在计算机视觉领域,以ImageNet预训练的CNN模型迁移至下游视觉任务便已验证了这一范式的有效性。NLP领域的迁移学习起步相对较晚,早期的Word2Vec(2013)和GloVe(2014)仅实现了词向量层面的迁移,无法捕捉上下文动态语义。ELMo(2018)首次引入上下文相关词向量,随后BERT和GPT将迁移学习推向整个模型架构层面,彻底改变了NLP工程的工作方式。这一演进背后有深刻的数据经济学逻辑:有标注数据昂贵且稀缺,而互联网上的无标注文本几乎取之不尽——预训练范式正是将这种数据不对称性转化为技术优势的核心机制。在海量无标注文本上训练的模型会在参数中编码丰富的语言知识和世界知识,这些知识可以被「迁移」到下游任务。2018年Google发布BERT、OpenAI发布GPT-1是这一范式的重要里程碑,「预训练-微调」随后逐渐取代针对每个任务从头训练专用模型的旧范式,成为NLP工程的标准工作流。
小型语言模型(Small Language Models, SLM)则通常指参数量在1B至13B区间的模型(如Phi-3、Mistral 7B、Llama 3 8B等),可在消费级GPU甚至CPU上本地部署,推理成本极低,便于个人研究者或中小团队进行定制化微调。SLM的兴起代表了一条有别于单纯堆叠参数量的技术路线:通过知识蒸馏、数据质量优化(如Phi系列模型的「教科书级数据」策略)和更精细的训练方案,在远小于GPT-4的参数规模下实现接近的实用性能。SLM的流行使「普通开发者也能拥有自己的私有大模型」成为现实,因此掌握微调SLM的能力正迅速成为AI工程师的重要竞争力。
他列出了四个候选:
- Hands-On Machine Learning with Scikit-Learn & PyTorch(Aurélien Géron)
- Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow(Aurélien Géron)
- Build a Large Language Model From Scratch(Sebastian Raschka)
- Deep Learning with Python 3rd Edition(François Chollet)
这四本书都是业界公认的经典之作,但侧重点截然不同。本文将结合这位学习者的具体目标,逐一分析每本书的定位与适用场景。
机器学习学习路径的底层逻辑 机器学习的知识体系存在明显的层次依赖关系:数学基础(线性代数、微积分、概率论)→ 传统机器学习算法 → 深度学习基础 → Transformer架构 → 预训练大模型 → 微调与对齐技术。跳跃式学习往往导致「会调参数但不知为何有效」的困境。理解这条依赖链,是选书时判断「当前缺口在哪一层」的关键依据。对于已有两本入门书打底的学习者,核心问题是:深度学习基础是否已经扎实到足以直接进入Transformer和微调的学习?答案将直接决定选书优先级。

四本经典书籍逐一拆解
Géron 的两本《Hands-On Machine Learning》
Aurélien Géron 的《Hands-On Machine Learning》系列堪称机器学习实践领域的「圣经」级教材。它以极强的工程实践导向著称,从传统机器学习(分类、回归、集成学习)一路讲到深度学习,几乎覆盖了从业者所需的完整技能树。
你可能没注意到,提问者列出的两个版本存在明显差异。经典版本是 Scikit-Learn, Keras, and TensorFlow,目前最为广泛流传,深度学习部分以 TensorFlow/Keras 为主。而 Scikit-Learn & PyTorch 版本相对少见——这里需要理解一个重要的行业背景:
PyTorch vs TensorFlow/Keras:LLM时代的技术栈分野 PyTorch(Meta开源,2016年)以「动态计算图」和更接近Python原生风格的设计,迅速赢得学术研究圈的青睐。理解这一技术选择背后的工程哲学差异有助于做出更明智的技术栈决策:PyTorch采用的「动态计算图」(Define-by-Run)与TensorFlow早期的「静态计算图」(Define-and-Run)代表了两种截然不同的工程哲学。静态图在运行前完整定义计算流程,便于编译器优化和跨平台部署,但调试困难;动态图则在每次前向传播时即时构建计算图,天然支持Python的条件分支和循环结构,调试体验与普通Python程序几乎无异——这对需要快速迭代实验不同模型架构的研究者来说极为友好。这种「研究友好性」是PyTorch在学术界快速占领份额的根本原因,而学术界的代码随后流入工业界,进一步强化了PyTorch在LLM开发生态中的主导地位。TensorFlow 2.x虽已引入Eager Execution以弥补这一差距,但先发优势已然形成。
进入LLM时代,这一格局更加明朗:绝大多数NLP顶会论文的代码实现均以PyTorch为基础;Hugging Face的Transformers库以PyTorch为核心,几乎所有主流开源大模型(LLaMA、Mistral、Qwen、Gemma等)的官方实现均优先支持PyTorch;LoRA、QLoRA等主流微调技术的工具链(如PEFT库)也以PyTorch生态为基础。值得一提的是,Hugging Face已从最初的聊天机器人公司成长为AI领域最重要的开源基础设施提供者——其Transformers库托管了超过50万个预训练模型,配套的PEFT库、TRL库(强化学习微调)和Accelerate库(分布式训练加速)共同构成了完整的LLM开发工具链,熟悉这一生态几乎是进入工业界LLM开发岗位的必要条件。TensorFlow虽在工业部署(TFLite、TF Serving)上仍有优势,但在LLM研究与开发领域,PyTorch已成为事实上的行业标准。
PyTorch 当前在研究界和 LLM 生态中占据主导地位,若该版本内容成熟,对想做微调和 SLM 的人而言会更贴合实际技术栈。
对于本例的学习者,Géron 的书更适合充当打牢基础的工具书。但需要指出,这套书对 LLM 和微调的覆盖相对有限,强项在于传统 ML 与深度学习基础,而非大模型专精方向。
Chollet 的《Deep Learning with Python 3rd Edition》
François Chollet 是 Keras 框架的创始人,他的《Deep Learning with Python》以概念清晰、代码优雅著称。第三版进行了大幅更新,加入了 Transformer 和生成式模型的相关内容。
这本书最大的特点是「深入浅出」——它不以大量数学公式吓退读者,而是通过直觉与代码帮助理解深度学习的本质逻辑。对于有一定基础、想真正理解神经网络运作原理的学习者来说,是极佳选择。不过它仍以 Keras 生态为核心,与当前 LLM 微调常用的 PyTorch + Hugging Face 技术栈存在一定距离。对于目标明确指向微调和SLM的学习者,Chollet的书更适合作为「概念补充」而非主攻方向。
Raschka 的《Build a Large Language Model From Scratch》
如果单纯从**「微调与 SLM」这个目标**出发,Sebastian Raschka 的《Build a Large Language Model From Scratch》无疑是四本书中最对口的选择。
Raschka 是威斯康星大学麦迪逊分校的统计学助理教授,同时在 Lightning AI 担任研究员职位。他在机器学习教育领域拥有超过十年的开源贡献积累:他的GitHub仓库「rasbt/python-machine-learning-book」曾是GitHub上星标数最高的机器学习教程之一,配套书籍《Python Machine Learning》三个版本累计销量超过10万册。Lightning AI(即PyTorch Lightning的母公司)的研究员身份赋予他接触前沿LLM训练基础设施的实践视角——PyTorch Lightning是对原生PyTorch训练循环的高层次封装,被广泛用于简化大规模模型训练的工程复杂度。这本书延续了他一贯将学术严谨性与工程实用性结合的写作风格,以严谨的代码注释和逐步推导见长,专门针对「想真正理解底层机制并亲手实现」的工程师成长路径设计——既不是停留在调用API层面的应用指南,也不是令人望而生畏的理论专著,与当前大量以调用API为主的LLM教程形成鲜明区分。
这本书带领读者用 PyTorch 从零实现一个 GPT 类模型,涵盖分词、注意力机制、Transformer 架构、预训练到微调的完整流程。在深入这本书之前,理解Transformer的核心设计思想大有裨益:
Transformer架构:现代大语言模型的基石 Transformer由Vaswani等人于2017年在论文《Attention Is All You Need》中提出,彻底改变了自然语言处理领域的技术范式。其核心创新在于「自注意力机制」(Self-Attention):不同于RNN/LSTM需要逐步处理序列,Transformer允许模型在处理每个词时同时关注序列中所有位置的信息,从而有效捕捉长距离依赖关系,并支持大规模并行计算。
然而这一强大能力伴随着显著的计算代价:自注意力机制的复杂度随序列长度呈二次方增长(O(n²)),将上下文窗口从2048扩展到8192会导致注意力计算量增加16倍。这一瓶颈催生了稀疏注意力、线性注意力、滑动窗口注意力(如Mistral采用)等大量改进变体。与此同时,2020年提出的「神经网络规模定律」(Scaling Laws)揭示了模型性能与参数量、数据量、计算量之间的幂律关系,为超大规模模型的研发提供了理论依据。
模型的关键组件包括:多头注意力(Multi-Head Attention,允许模型从多个「视角」同时捕捉不同类型的依赖关系)、位置编码(Positional Encoding,向本身不含序列顺序信息的注意力机制注入位置信息)、以及每层的前馈网络(Feed-Forward Network,负责对注意力输出进行非线性变换)。GPT系列(包括ChatGPT的底层模型)采用的是Transformer的「解码器」(Decoder-only)变体,专门针对自回归文本生成任务优化——即每次预测下一个词时只能看到之前的上下文。BERT则采用「编码器」(Encoder-only)变体,通过双向注意力适合文本理解类任务。理解多头注意力、位置编码、前馈网络层等组件的工作原理,是深入掌握LLM微调技术的前提——而这正是Raschka书籍的核心教学内容。
这本书不停留在调用 API 的层面,而是让你真正看清大语言模型「引擎盖下」发生了什么。对想做 Finetuning 和小型语言模型的人而言,这种自底向上的理解至关重要。
针对具体目标的推荐建议
明确目标决定选书顺序
回到提问者的核心诉求——微调 + SLM + 面向未来的技术相关性。基于此,优先级建议如下:
首选:Raschka 的《Build a LLM From Scratch》。这是四本书中唯一直接命中「大模型 + 微调」目标的作品,且采用 PyTorch 技术栈,与 Hugging Face、LoRA 微调等主流工具链一脉相承。对于希望在 LLM 时代保持竞争力的学习者,它是「未来相关性」最强的选择。
次选:Géron 的《Hands-On ML》(PyTorch 版优先)。若基础尚不扎实,先用它补齐深度学习和 PyTorch 的工程实践能力,会让后续学习 Raschka 的内容事半功倍。这一顺序也符合前文提到的知识层次依赖关系——Géron处于「深度学习基础」层,Raschka处于「预训练大模型→微调」层,先夯实基础层再向上攀登,是效率最高的路径。
关于书籍之外的思考
值得提醒的是,提问者已有两本入门书,或许正陷入「囤书焦虑」的误区。在机器学习领域,读透一本书 + 大量动手实践,远胜于收集多本书浅尝辄止。
对于微调和 SLM 这类实操性极强的方向,建议在阅读 Raschka 书籍的同时,直接上手 Hugging Face Transformers 库,尝试用 LoRA/QLoRA 微调开源小模型(如 Llama 3 8B、Qwen 等)。
LoRA与QLoRA:高效微调的行业标准工具 LoRA(Low-Rank Adaptation,由微软研究院于2021年提出)的核心思想是:预训练模型的参数更新矩阵具有「低内在秩」特性——微调时真正需要调整的信息维度远低于参数矩阵的表面维度。基于这一洞察,LoRA在不修改原始预训练权重的前提下,为模型的关键线性层注入低秩矩阵分解的「适配器」:将原本的权重更新ΔW分解为两个低秩矩阵A和B的乘积(ΔW = BA),仅训练这些新增的少量参数(通常只占总参数量的0.1%~1%),即可在特定任务上实现接近全量微调的效果。这使得在单张消费级GPU(如RTX 3090/4090)上微调7B甚至13B参数模型成为可能。
QLoRA在此基础上更进一步。要理解其原理,需先了解模型量化的基本逻辑:标准的PyTorch模型默认使用float16存储参数,一个7B参数模型约需14GB显存。量化技术通过将参数从高精度浮点数映射到低位整数(如int4)来压缩存储需求,理论上可将显存占用压缩至float16的25%。QLoRA使用的「4-bit NormalFloat」(NF4)格式是专门针对神经网络权重分布特性优化的量化方案——神经网络权重通常呈正态分布,NF4通过非均匀量化区间使每个量化级别对应相近数量的权重值,从而在相同位宽下保留更多精度信息。关键在于,量化后的基础模型权重在训练过程中保持冻结,而LoRA引入的低秩适配器仍以bfloat16精度存储和训练——这种「量化基础模型+全精度适配器」的混合精度策略,是QLoRA实现显存效率与训练精度之间精妙平衡的核心所在,使7B模型的微调显存需求降至约5GB,进入主流消费级GPU的可达范围。Hugging Face的PEFT库提供了LoRA和QLoRA的开箱即用实现,结合TRL库(支持SFT监督微调和RLHF强化学习微调),构成了目前SLM微调工程实践的标准工具链。
理论与实践交替推进,才能真正内化所学。
总结:没有最好的书,只有最适合目标的书
四本书各有千秋,关键在于与自身目标的匹配度。对于以微调和小型语言模型为目标的学习者,可以参考以下简明指引:
- 想深入理解 LLM 底层原理并亲手实现微调 → Raschka
- 想补齐深度学习工程实践基础 → Géron(PyTorch 版)
- 想系统掌握深度学习核心概念 → Chollet
选好书之后,更重要的是持续动手实践。在快速演进的 AI 领域,真正能从零构建、理解并微调模型的能力,才是经得起时间检验的核心竞争力。书籍提供地图,但真正的领悟只在行走中发生——用 Raschka 的书理解 GPT 的内部机制,再用 Hugging Face 的工具链将 LoRA 微调应用于真实项目,这条「理论→工具→实战」的路径,是当前进入 LLM 开发领域最高效的通道。
核心要点
核心要点
核心要点
相关推荐

Seed7语言内存安全机制解析:值语义与确定性回收的独特路径
深入解析Seed7编程语言的内存安全实现机制,包括边界检查、值语义、空指针消除及确定性内存回收策略,对比Rust所有权模型,探讨不同于GC的自动内存管理新思路。

脉冲神经网络能在边缘设备上真正提效吗
深入分析脉冲神经网络(SNN)在ESP32等边缘设备上的实际能效表现,探讨神经形态芯片落地困境、通用MCU架构错配问题,以及当前边缘AI开发者的务实选择。

代码可视化工具优化指南:降低理解门槛的关键设计思路
探讨代码可视化工具的优化策略,分析良好的可视化设计如何降低认知负担、缩短学习曲线,以及开发者工具从功能优先转向体验优先的行业趋势。