news 2026/10/1 8:54:02

deep-learning-with-python-notebooks 第二版配套 Notebooks 指南:基于 tf.keras 与 TensorFlow 2.16 的完整章节导览与运行说明

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
deep-learning-with-python-notebooks 第二版配套 Notebooks 指南:基于 tf.keras 与 TensorFlow 2.16 的完整章节导览与运行说明
  • 示例工程
  • 教程
  • 人工智能
  • 深度学习

【免费下载链接】deep-learning-with-python-notebooks

Jupyter notebooks for the code samples of the book "Deep Learning with Python"

项目地址:https://gitcode.com/gh_mirrors/de/deep-learning-with-python-notebooks
点击查看免费下载

导读

本篇文章聚焦开源仓库 deep-learning-with-python-notebooks 中second_edition/目录下的第二版(2021 年出版)配套 Jupyter Notebooks。这批笔记本以tf.keras与 TensorFlow 2.16 为基础,覆盖从张量数学基础到 Transformer、生成模型在内的 13 个章节共 19 个 notebook 文件。读完本文,你将掌握这批 notebooks 的章节组织结构、每个 notebook 的核心技术内容、代码中实际使用的 Keras API 形态,以及在本仓库中定位与运行它们的完整方法。

第二版 Notebooks 概览:技术与版本定位

second_edition/README.md是一份简短而明确的索引文档,核心声明如下:这些 notebook 对应《Deep Learning with Python》第二版(2021 年出版),全部使用tf.keras,运行在 TensorFlow 2.16 之上。

这句话定义了整批 notebook 的技术基线:与仓库根目录下面向第三版(2025 年出版)、采用 Keras 3 多后端(JAX/TensorFlow/PyTorch)的笔记本不同,第二版代码统一走from tensorflow import keras/from tensorflow.keras import layers这一经典 tf.keras 导入路径。这一点在仓库各 notebook 的源码单元格中可以得到印证,例如:

  • second_edition/chapter03_introduction-to-keras-and-tf.ipynb 中import tensorflow as tf、from tensorflow import keras、from tensorflow.keras import layers;
  • second_edition/chapter04_getting-started-with-neural-networks.ipynb 中from tensorflow.keras.datasets import imdb、from tensorflow.keras.datasets import reuters、from tensorflow.keras.datasets import boston_housing;
  • second_edition/chapter13_best-practices-for-the-real-world.ipynb 中keras.mixed_precision.set_global_policy("mixed_float16")与keras.callbacks.EarlyStopping。

如果你希望复现第三版(Keras 3、可选后端)或第一版(2017)的对应内容,可分别查看仓库根目录下的 chapterXX 系列与 first_edition 目录。本文只围绕第二版展开。

第二版章节目录全景

second_edition/README.md以目录(Table of contents)形式列出了全部章节对应的 notebook 文件名。下表为完整继承并转为仓库相对路径后的目录结构:

章节主题仓库中的 Notebook
Chapter 2神经网络背后的数学构建块chapter02_mathematical-building-blocks.ipynb
Chapter 3Keras 与 TensorFlow 入门chapter03_introduction-to-keras-and-tf.ipynb
Chapter 4神经网络入门:分类与回归chapter04_getting-started-with-neural-networks.ipynb
Chapter 5机器学习基础chapter05_fundamentals-of-ml.ipynb
Chapter 7深入使用 Keraschapter07_working-with-keras.ipynb
Chapter 8深度学习用于计算机视觉入门chapter08_intro-to-dl-for-computer-vision.ipynb
Chapter 9深度学习用于计算机视觉进阶(三部分)chapter09_part01_image-segmentation.ipynb(图像分割)
chapter09_part02_modern-convnet-architecture-patterns.ipynb(现代卷积网络架构模式)
chapter09_part03_interpreting-what-convnets-learn.ipynb(理解卷积网络学习的内容)
Chapter 10深度学习用于时间序列chapter10_dl-for-timeseries.ipynb
Chapter 11深度学习用于文本(四部分)chapter11_part01_introduction.ipynb(引言)
chapter11_part02_sequence-models.ipynb(序列模型)
chapter11_part03_transformer.ipynb(Transformer)
chapter11_part04_sequence-to-sequence-learning.ipynb(序列到序列学习)
Chapter 12生成式深度学习(五部分)chapter12_part01_text-generation.ipynb(文本生成)
chapter12_part02_deep-dream.ipynb(Deep Dream)
chapter12_part03_neural-style-transfer.ipynb(神经风格迁移)
chapter12_part04_variational-autoencoders.ipynb(变分自编码器)
chapter12_part05_gans.ipynb(生成对抗网络)
Chapter 13真实世界中的最佳实践chapter13_best-practices-for-the-real-world.ipynb
Chapter 14结论chapter14_conclusions.ipynb

从内容覆盖看,第二版 notebooks 是一个完整的深度学习学习链路:基础数学 → 框架入门 → 分类/回归实战 → 机器学习原理 → Keras 深度使用 → 计算机视觉(CNN 入门、分割、架构模式、可解释性)→ 时间序列 → 文本(RNN、Transformer、Seq2Seq)→ 生成模型(文本生成、Deep Dream、风格迁移、VAE、GAN)→ 工程实践 → 总结。

章节内容纵深解析:从源码看每个 Notebook 的技术要点

第二版 README 只提供了章节标题与链接,其技术实质落在各个 notebook 的代码单元格中。以下结合仓库源码逐章展开,便于读者按图索骥。

Chapter 2:神经网络的数学构建块

chapter02_mathematical-building-blocks.ipynb 内部的小节标题给出了清晰的知识脉络:

  • A first look at a neural network(第一次看神经网络):以 MNIST 手写数字分类为第一个完整示例,演示数据加载、模型构建、编译与训练的完整最小闭环;
  • Data representations for neural networks(数据的表示):讲解标量、向量、矩阵、张量的概念与张量形状对模型的影响;
  • The gears of neural networks: tensor operations(神经网络的核心:张量运算):涵盖逐元素运算、广播、点积、张量重塑等基础算子;
  • The engine of neural networks: gradient-based optimization(神经网络的引擎:基于梯度的优化):介绍梯度、反向传播与优化器的配合方式;
  • Looking back at our first example与Summary(回看首个示例与小结)。

这一章是全书的"地基",建议与书第 2 章正文配合阅读,重点理解张量运算如何构成网络前向传播。

Chapter 3:Keras 与 TensorFlow 入门

chapter03_introduction-to-keras-and-tf.ipynb 的核心是框架层。源码中出现了import tensorflow as tf、from tensorflow import keras与from tensorflow.keras import layers三行标准导入,是第二版所有 notebook 共用的导入模式。本章会介绍 TensorFlow 的基本张量操作、tf.Variable与自动微分机制,以及 Keras 高层 API 如何把底层运算封装成可复用的层与模型。

Chapter 4:神经网络入门——分类与回归

chapter04_getting-started-with-neural-networks.ipynb 是实操密度最高的一章,源码中包含了三个经典数据集的完整示例:

  • IMDB 影评情感分类(二分类):from tensorflow.keras.datasets import imdb加载数据,构建keras.Sequential模型,通过model.compile(optimizer="rmsprop", loss="binary_crossentropy", metrics=["accuracy"])配置训练,再用model.fit(partial_x_train, ...)分段训练并预留验证集;
  • Reuters 新闻主题分类(多分类):from tensorflow.keras.datasets import reuters加载数据,同样使用Sequential与 rmsprop 优化器,损失函数切换为多分类交叉熵,验证集划分方式一致;
  • Boston 房价回归(回归任务):from tensorflow.keras.datasets import boston_housing,model.compile(optimizer="rmsprop", loss="mse", metrics=["mae"])使用均方误差与平均绝对误差,训练流程包含 K 折交叉验证(多个model.fit(partial_train_data, partial_train_targets, ...)调用)。

三个示例共同演示了二分类、多分类、回归三种任务在 tf.keras 中的统一工作流:加载数据 → 构建Sequential→compile指定优化器/损失/指标 →fit训练。

Chapter 5:机器学习基础

chapter05_fundamentals-of-ml.ipynb 聚焦泛化、过拟合、欠拟合、正则化等概念,与 Chapter 4 的实操形成理论与实践的呼应。阅读时建议重点对照书中第 5 章的插图与概念表格。

Chapter 7:深入使用 Keras

chapter07_working-with-keras.ipynb 深入 Keras 建模 API。源码中可以看到两种构建Sequential模型的方式:

from tensorflow import keras from tensorflow.keras import layers # 方式一:构造时一次性传入层列表 model = keras.Sequential([ layers.Dense(64, activation="relu"), layers.Dense(10, activation="softmax") ]) # 方式二:先建空模型再逐层 add model = keras.Sequential() model.add(layers.Dense(64, activation="relu")) model.add(layers.Dense(10, activation="softmax"))

layers.Dense(units, activation=...)中units为神经元数、activation可选"relu"、"softmax"、"sigmoid"等。本章还会涉及函数式 API(keras.Input与层调用链)、Model子类化、自定义训练循环、回调函数(Callbacks)等进阶主题,是理解 tf.keras 全貌的关键章节。

Chapter 8:计算机视觉入门

chapter08_intro-to-dl-for-computer-vision.ipynb 从零开始搭建卷积神经网络,覆盖卷积层、池化层、Dropout 与数据增强等视觉任务核心组件,为 Chapter 9 的进阶内容铺路。

Chapter 9:计算机视觉进阶(三部分)

Chapter 9 被拆分为三个独立 notebook,主题各有侧重:

  • Part 1 图像分割:chapter09_part01_image-segmentation.ipynb,讲解语义分割任务与对应模型结构;
  • Part 2 现代卷积网络架构模式:chapter09_part02_modern-convnet-architecture-patterns.ipynb,覆盖残差连接、批归一化、深度可分离卷积、Xception 等现代架构设计模式;
  • Part 3 理解卷积网络学习的内容:chapter09_part03_interpreting-what-convnets-learn.ipynb,通过可视化卷积核、类激活热力图等手段解释 CNN 的决策依据。

Chapter 10:时间序列

chapter10_dl-for-timeseries.ipynb 处理序列数据的又一分支——时间序列预测,涵盖窗口化数据集构造、简单线性模型、RNN 与 CNN 在时间序列上的应用对比。

Chapter 11:文本深度学习(四部分)

Chapter 11 是文本处理专题,分四个 notebook:

  • Part 1 引言:chapter11_part01_introduction.ipynb,文本表示的入门与数据集准备;
  • Part 2 序列模型:chapter11_part02_sequence-models.ipynb,RNN、LSTM、GRU 等序列模型的原理与实现(源码中出现from tensorflow import keras与from tensorflow.keras import layers的标准导入);
  • Part 3 Transformer:chapter11_part03_transformer.ipynb,自注意力机制与 Transformer 架构的完整实现(同样使用keras.layers构建多头注意力与位置编码);
  • Part 4 序列到序列学习:chapter11_part04_sequence-to-sequence-learning.ipynb,Seq2Seq 模型与机器翻译等应用场景。

Chapter 12:生成式深度学习(五部分)

Chapter 12 是全书最具观赏性的部分,包含五个 notebook:

  • Part 1 文本生成:chapter12_part01_text-generation.ipynb,基于字符级或词级语言模型生成文本;
  • Part 2 Deep Dream:chapter12_part02_deep-dream.ipynb,通过梯度上升在图像中放大网络已学到的模式;
  • Part 3 神经风格迁移:chapter12_part03_neural-style-transfer.ipynb,把一张图像的内容与另一张图像的风格融合;
  • Part 4 变分自编码器(VAE):chapter12_part04_variational-autoencoders.ipynb,概率潜在空间的图像生成模型;
  • Part 5 生成对抗网络(GAN):chapter12_part05_gans.ipynb,生成器与判别器的对抗训练范式。

Chapter 13:真实世界最佳实践

chapter13_best-practices-for-the-real-world.ipynb 是工程化章节,源码中包含了多个直接可复用的实战模式:

  • 标准导入:from tensorflow import keras、from tensorflow.keras import layers;
  • 回调机制:keras.callbacks.EarlyStopping(monitor="val_loss", patience=5)——监控验证损失、连续 5 个 epoch 无改善即停止训练,防止过拟合并节省算力;
  • 混合精度训练:keras.mixed_precision.set_global_policy("mixed_float16")——以 float16 参与部分计算、float32 做梯度累积,在支持的 GPU 上显著提升吞吐;
  • 数据加载:(x_train, y_train), (x_test, y_test) = keras.datasets.mnist.load_data()演示标准数据集接口。

Chapter 14:结论

chapter14_conclusions.ipynb 作为全书收尾,回顾整个学习路径,从理论、实践与生态三个维度做总结。

运行方式与前置条件

根据 README.md 对仓库总体的运行说明(同样适用于第二版 notebooks)以及second_edition/README.md的版本声明,运行这批 notebook 需注意:

  1. 依赖版本:第二版 notebooks 需要 TensorFlow 2.16 环境(tf.keras为 Keras 2.x API 形态)。请注意与第三版 notebook(Keras 3 多后端)的依赖差异,两者不能混用同一运行环境配置。
  2. 推荐平台:仓库主 README 建议在 Colab 上运行,它提供托管运行时与预装依赖;也支持本地搭建 Jupyter 环境运行。
  3. 硬件需求:默认的免费 GPU 运行时足以跑完书中所有代码;第 8 章及之后的视觉/生成类章节在更快的 GPU(如 Colab Pro)上训练耗时更短,可通过 Colab 菜单Runtime -> Change runtime type切换运行时类型。
  4. 数据集:第二版 notebook 使用的keras.datasets(IMDB、Reuters、Boston housing、MNIST 等)由 tf.keras 自带下载,无需额外注册;若运行涉及 Kaggle 数据的章节,仓库根目录 README.md 给出了kagglehub.login()会话登录与 Colab secrets(KAGGLE_USERNAME/KAGGLE_KEY)两种 Kaggle 凭证配置方式,第二版中同样适用。

阅读与使用建议

  • 与书配套阅读:仓库根目录 README.md 明确指出,为了可读性,所有 notebook 只保留可运行的代码块与章节标题,省略了正文文字、插图与伪代码。因此最有效的学习方式是"notebook + 书"对照阅读:书提供概念解释,notebook 提供可直接运行的完整代码。
  • 按顺序推进:第二版章节存在强依赖关系——Chapter 2/3 是基础,Chapter 4/5 建立建模与评估直觉,Chapter 7 之后逐步进入视觉、序列与生成等专项,Chapter 13 沉淀工程实践。建议沿目录顺序执行,每个 notebook 从头到尾运行一遍代码单元。
  • 在仓库中快速定位:全部第二版 notebook 位于 second_edition 目录下,文件名即章节号,可通过上文的目录表按需跳转;同一主题的三版实现分别位于仓库根目录(第三版)、second_edition(第二版)与 first_edition(第一版),便于横向对比不同版本 Keras API 的演进。
  • 示例工程
  • 教程
  • 人工智能
  • 深度学习

【免费下载链接】deep-learning-with-python-notebooks

Jupyter notebooks for the code samples of the book "Deep Learning with Python"

项目地址:https://gitcode.com/gh_mirrors/de/deep-learning-with-python-notebooks
点击查看免费下载

相关推荐

上一篇:AI for Beginners 实验指南:用自研神经网络框架完成 MNIST 手写数字分类
下一篇:如何在一台电脑上轻松实现多人分屏游戏:Nucleus Coop 实战指南

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/1 8:53:41

接口自动化框架的工程化发布:从Jenkins流水线到灰度落地

“接口自动化”这个词,我听了无数次,也见团队里做过无数个项目。大部分测试同学以为难点在写用例、调参数、做断言,可真把一个接口自动化框架从零搭到能在团队里持续跑、每天定时出报告、迭代后不崩,我最大的体会是:难…

作者头像 李华
网站建设 2026/10/1 8:53:13

ESP32-P4NRW32X深度解析:从架构到H264硬编码实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/1 8:51:57

机器学习试卷自动化批改与知识图谱构建实践

简介:本资源是一份面向高校计算机、人工智能及相关专业本科生的机器学习课程期末复习试卷,聚焦核心知识点梳理与应试能力提升。试卷内容系统覆盖机器学习基本概念(监督/无监督/半监督学习)、主流算法(逻辑回归、决策树…

作者头像 李华
网站建设 2026/10/1 8:51:44

OpenHarmony NDK工具链实战:从环境配置到交叉编译调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/1 8:51:19

AI日报实战:Agent开发、Claude与Gemini使用及vLLM部署指南

1. 从一份日报说起:AI 圈的信息密度正在失控 做 AI 方向的人最近应该都有同一种体感:一天不刷消息,第二天就跟不上节奏了。模型版本号在跳,Agent 框架在冒,推理引擎的镜像 tag 一天一个样,昨天还能跑通的部…

作者头像 李华