动手学深度学习(PyTorch版)封面

动手学深度学习(PyTorch版)

图书价格:50.91
发布时间: ISBN编号:9787115600820
出版社:人民邮电出版社

书籍简介

动手学深度学习(PyTorch版)》是深度学习领域重磅作品《动手学深度学习》的升级版本,专为PyTorch深度学习框架修订,旨在为读者提供便捷的交互式深度学习学习体验。本书由李沐、阿斯顿·张等领域权威专家联合撰写,全球已有400多所大学将其作为教材使用,配套视频课程、教学PPT、习题等丰富资源,支持在线运行源码并与作译者实时讨论,是一本兼具理论深度与实践价值的深度学习入门及进阶图书。

1. 作者与译者阵容

本书作者团队汇聚了学术与工业界的顶尖力量:

  • 阿斯顿·张(Aston Zhang):Amazon资深研究员,美国伊利诺伊大学香槟分校计算机科学博士,专注机器学习与自然语言处理研究,获多项国际学术会议杰出论文奖;

  • 李沐(Mu Li):Amazon资深领衔研究员,美国加州大学伯克利分校、斯坦福大学客座助理教授,机器学习系统与算法领域专家,论文引用量超万次;

  • 扎卡里·C. 立顿(Zachary C. Lipton):美国卡内基梅隆大学机器学习和运筹学助理教授,领导ACMI实验室,研究方向涵盖稳健算法、医学诊断等;

  • 亚历山大·J. 斯莫拉(Alexander J. Smola):Amazon副总裁/杰出研究员,德国柏林工业大学博士,发表300余篇学术论文,引用量超15万次。

译者团队同样专业:何孝霆(Amazon应用研究员,中科院软件工程硕士)、瑞潮儿·胡(Amazon应用研究员,加州大学伯克利分校统计学硕士),确保技术内容准确传达,且具备丰富的实践与教学经验。

2. 内容特色与升级

本书在保留原版本核心框架的基础上,针对技术发展进行全面修订,新增注意力机制、预训练等前沿内容,全书共15章,按“基础预备-核心工具-优化应用”的逻辑分层递进:

  • 第一部分聚焦深度学习基础知识与预备知识,从线性模型自然过渡到多层感知机,夯实学习根基;

  • 第二部分详解深度学习计算关键组件、卷积神经网络、循环神经网络、注意力机制等核心模型,覆盖现代深度学习应用的核心工具;

  • 第三部分深入探讨优化算法、计算性能优化(含多GPU训练),并落地于计算机视觉、自然语言处理两大核心应用领域,包含实战案例。

本书最大特色是“可运行、可讨论”,所有源码支持在线运行,配套网站zh.D2L.ai提供免费教学资源,读者扫码即可获取答疑支持,实现与作译者的实时互动。此外,书中包含Kaggle房价预测、图像分类等实战任务,衔接理论与工程实践。

3. 教材与资源认可度

本书的英文版是美国加州大学伯克利分校2019年春季学期“深度学习导论”课程教材,截至2022年秋季,已被全球400多所大学用于教学。译者瑞潮儿·胡的公开课程视频在YouTube和哔哩哔哩广受好评,累计向千余名Amazon工程师传授机器学习知识,进一步印证了本书内容的实用性与权威性。

图书目录

  • 对本书的赞誉

  • 前言

  • 译者简介

  • 学习环境配置

  • 资源与支持

  • 主要符号表

  • 第1章 引言

  • 1.1 日常生活中的机器学习

  • 1.2 机器学习中的关键组件

    • 1.2.1 数据

    • 1.2.2 模型

    • 1.2.3 目标函数

    • 1.2.4 优化算法

  • 1.3 各种机器学习问题

    • 1.3.1 监督学习

    • 1.3.2 无监督学习

    • 1.3.3 与环境互动

    • 1.3.4 强化学习

  • 1.4 起源

  • 1.5 深度学习的发展

  • 1.6 深度学习的成功案例

  • 1.7 特点

  • 第2章 预备知识

  • 2.1 数据操作

    • 2.1.1 入门

    • 2.1.2 运算符

    • 2.1.3 广播机制

    • 2.1.4 索引和切片

    • 2.1.5 节省内存

    • 2.1.6 转换为其他Python对象

  • 2.2 数据预处理

    • 2.2.1 读取数据集

    • 2.2.2 处理缺失值

    • 2.2.3 转换为张量格式

  • 2.3 线性代数

    • 2.3.1 标量

    • 2.3.2 向量

    • 2.3.3 矩阵

    • 2.3.4 张量

    • 2.3.5 张量算法的基本性质

    • 2.3.6 降维

    • 2.3.7 点积

    • 2.3.8 矩阵-向量积

    • 2.3.9 矩阵-矩阵乘法

    • 2.3.10 范数

    • 2.3.11 关于线性代数的更多信息

  • 2.4 微积分

    • 2.4.1 导数和微分

    • 2.4.2 偏导数

    • 2.4.3 梯度

    • 2.4.4 链式法则

  • 2.5 自动微分

    • 2.5.1 一个简单的例子

    • 2.5.2 非标量变量的反向传播

    • 2.5.3 分离计算

    • 2.5.4 Python控制流的梯度计算

  • 2.6 概率

    • 2.6.1 基本概率论

    • 2.6.2 处理多个随机变量

    • 2.6.3 期望和方差

  • 2.7 查阅文档

    • 2.7.1 查找模块中的所有函数和类

    • 2.7.2 查找特定函数和类的用法

  • 第3章 线性神经网络

  • 3.1 线性回归

    • 3.1.1 线性回归的基本元素

    • 3.1.2 向量化加速

    • 3.1.3 正态分布与平方损失

    • 3.1.4 从线性回归到深度网络

  • 3.2 线性回归的从零开始实现

    • 3.2.1 生成数据集

    • 3.2.2 读取数据集

    • 3.2.3 初始化模型参数

    • 3.2.4 定义模型

    • 3.2.5 定义损失函数

    • 3.2.6 定义优化算法

    • 3.2.7 训练

  • 3.3 线性回归的简洁实现

    • 3.3.1 生成数据集

    • 3.3.2 读取数据集

    • 3.3.3 定义模型

    • 3.3.4 初始化模型参数

    • 3.3.5 定义损失函数

    • 3.3.6 定义优化算法

    • 3.3.7 训练

  • 3.4 softmax回归

    • 3.4.1 分类问题

    • 3.4.2 网络架构

    • 3.4.3 全连接层的参数开销

    • 3.4.4 softmax运算

    • 3.4.5 小批量样本的向量化

    • 3.4.6 损失函数

    • 3.4.7 信息论基础

    • 3.4.8 模型预测和评估

  • 3.5 图像分类数据集

    • 3.5.1 读取数据集

    • 3.5.2 读取小批量

    • 3.5.3 整合所有组件

  • 3.6 softmax回归的从零开始实现

    • 3.6.1 初始化模型参数

    • 3.6.2 定义softmax操作

    • 3.6.3 定义模型

    • 3.6.4 定义损失函数

    • 3.6.5 分类精度

    • 3.6.6 训练

    • 3.6.7 预测

  • 3.7 softmax回归的简洁实现

    • 3.7.1 初始化模型参数

    • 3.7.2 重新审视softmax的实现

    • 3.7.3 优化算法

    • 3.7.4 训练

  • 第4章 多层感知机

  • 4.1 多层感知机

    • 4.1.1 隐藏层

    • 4.1.2 激活函数

  • 4.2 多层感知机的从零开始实现

    • 4.2.1 初始化模型参数

    • 4.2.2 激活函数

    • 4.2.3 模型

    • 4.2.4 损失函数

    • 4.2.5 训练

  • 4.3 多层感知机的简洁实现

    • 模型

  • 4.4 模型选择、欠拟合和过拟合

    • 4.4.1 训练误差和泛化误差

    • 4.4.2 模型选择

    • 4.4.3 欠拟合还是过拟合

    • 4.4.4 多项式回归

  • 4.5 权重衰减

    • 4.5.1 范数与权重衰减

    • 4.5.2 高维线性回归

    • 4.5.3 从零开始实现

    • 4.5.4 简洁实现

  • 4.6 暂退法

    • 4.6.1 重新审视过拟合

    • 4.6.2 扰动的稳健性

    • 4.6.3 实践中的暂退法

    • 4.6.4 从零开始实现

    • 4.6.5 简洁实现

  • 4.7 前向传播、反向传播和计算图

    • 4.7.1 前向传播

    • 4.7.2 前向传播计算图

    • 4.7.3 反向传播

    • 4.7.4 训练神经网络

  • 4.8 数值稳定性和模型初始化

    • 4.8.1 梯度消失和梯度爆炸

    • 4.8.2 参数初始化

  • 4.9 环境和分布偏移

    • 4.9.1 分布偏移的类型

    • 4.9.2 分布偏移示例

    • 4.9.3 分布偏移纠正

    • 4.9.4 学习问题的分类法

    • 4.9.5 机器学习中的公平、责任和透明度

  • 4.10 实战Kaggle比赛:预测房价

    • 4.10.1 下载和缓存数据集

    • 4.10.2 Kaggle

    • 4.10.3 访问和读取数据集

    • 4.10.4 数据预处理

    • 4.10.5 训练

    • 4.10.6 K折交叉验证

    • 4.10.7 模型选择

    • 4.10.8 提交Kaggle预测

  • 第5章 深度学习计算

  • 5.1 层和块

    • 5.1.1 自定义块

    • 5.1.2 顺序块

    • 5.1.3 在前向传播函数中执行代码

    • 5.1.4 效率

  • 5.2 参数管理

    • 5.2.1 参数访问

    • 5.2.2 参数初始化

    • 5.2.3 参数绑定

  • 5.3 延后初始化

    • 实例化网络

  • 5.4 自定义层

    • 5.4.1 不带参数的层

    • 5.4.2 带参数的层

  • 5.5 读写文件

    • 5.5.1 加载和保存张量

    • 5.5.2 加载和保存模型参数

  • 5.6 GPU

    • 5.6.1 计算设备

    • 5.6.2 张量与GPU

    • 5.6.3 神经网络与GPU

  • 第6章 卷积神经网络

  • 6.1 从全连接层到卷积

    • 6.1.1 不变性

    • 6.1.2 多层感知机的限制

    • 6.1.3 卷积

    • 6.1.4 “沃尔多在哪里”回顾

  • 6.2 图像卷积

    • 6.2.1 互相关运算

    • 6.2.2 卷积层

    • 6.2.3 图像中目标的边缘检测

    • 6.2.4 学习卷积核

    • 6.2.5 互相关和卷积

    • 6.2.6 特征映射和感受野

  • 6.3 填充和步幅

    • 6.3.1 填充

    • 6.3.2 步幅

  • 6.4 多输入多输出通道

    • 6.4.1 多输入通道

    • 6.4.2 多输出通道

    • 6.4.3 1×1卷积层

  • 6.5 汇聚层

    • 6.5.1 最大汇聚和平均汇聚

    • 6.5.2 填充和步幅

    • 6.5.3 多个通道

  • 6.6 卷积神经网络(LeNet)

    • 6.6.1 LeNet

    • 6.6.2 模型训练

  • 第7章 现代卷积神经网络

  • 7.1 深度卷积神经网络(AlexNet)

    • 7.1.1 学习表征

    • 7.1.2 AlexNet

    • 7.1.3 读取数据集

    • 7.1.4 训练AlexNet

  • 7.2 使用块的网络(VGG)

    • 7.2.1 VGG块

    • 7.2.2 VGG网络

    • 7.2.3 训练模型

  • 7.3 网络中的网络(NiN)

    • 7.3.1 NiN块

    • 7.3.2 NiN模型

    • 7.3.3 训练模型

  • 7.4 含并行连接的网络(GoogLeNet)

    • 7.4.1 Inception块

    • 7.4.2 GoogLeNet模型

    • 7.4.3 训练模型

  • 7.5 批量规范化

    • 7.5.1 训练深层网络

    • 7.5.2 批量规范化层

    • 7.5.3 从零实现

    • 7.5.4 使用批量规范化层的 LeNet

    • 7.5.5 简明实现

    • 7.5.6 争议

  • 7.6 残差网络(ResNet)

    • 7.6.1 函数类

    • 7.6.2 残差块

    • 7.6.3 ResNet模型

    • 7.6.4 训练模型

  • 7.7 稠密连接网络(DenseNet)

    • 7.7.1 从ResNet到DenseNet

    • 7.7.2 稠密块体

    • 7.7.3 过渡层

    • 7.7.4 DenseNet模型

    • 7.7.5 训练模型

  • 第8章 循环神经网络

  • 8.1 序列模型

    • 8.1.1 统计工具

    • 8.1.2 训练

    • 8.1.3 预测

  • 8.2 文本预处理

    • 8.2.1 读取数据集

    • 8.2.2 词元化

    • 8.2.3 词表

    • 8.2.4 整合所有功能

  • 8.3 语言模型和数据集

    • 8.3.1 学习语言模型

    • 8.3.2 马尔可夫模型与n元语法

    • 8.3.3 自然语言统计

    • 8.3.4 读取长序列数据

  • 8.4 循环神经网络

    • 8.4.1 无隐状态的神经网络

    • 8.4.2 有隐状态的循环神经网络

    • 8.4.3 基于循环神经网络的字符级语言模型

    • 8.4.4 困惑度

  • 8.5 循环神经网络的从零开始实现

    • 8.5.1 独热编码

    • 8.5.2 初始化模型参数

    • 8.5.3 循环神经网络模型

    • 8.5.4 预测

    • 8.5.5 梯度截断

    • 8.5.6 训练

  • 8.6 循环神经网络的简洁实现

    • 8.6.1 定义模型

    • 8.6.2 训练与预测

  • 8.7 通过时间反向传播

    • 8.7.1 循环神经网络的梯度分析

    • 8.7.2 通过时间反向传播的细节

  • 第9章 现代循环神经网络

  • 9.1 门控循环单元(GRU)

    • 9.1.1 门控隐状态

    • 9.1.2 从零开始实现

    • 9.1.3 简洁实现

  • 9.2 长短期记忆网络(LSTM)

    • 9.2.1 门控记忆元

    • 9.2.2 从零开始实现

    • 9.2.3 简洁实现

  • 9.3 深度循环神经网络

    • 9.3.1 函数依赖关系

    • 9.3.2 简洁实现

    • 9.3.3 训练与预测

  • 9.4 双向循环神经网络

    • 9.4.1 隐马尔可夫模型中的动态规划

    • 9.4.2 双向模型

    • 9.4.3 双向循环神经网络的错误应用

  • 9.5 机器翻译与数据集

    • 9.5.1 下载和预处理数据集

    • 9.5.2 词元化

    • 9.5.3 词表

    • 9.5.4 加载数据集

    • 9.5.5 训练模型

  • 9.6 编码器-解码器架构

    • 9.6.1 编码器

    • 9.6.2 解码器

    • 9.6.3 合并编码器和解码器

  • 9.7 序列到序列学习(seq2seq)

    • 9.7.1 编码器

    • 9.7.2 解码器

    • 9.7.3 损失函数

    • 9.7.4 训练

    • 9.7.5 预测

    • 9.7.6 预测序列的评估

  • 9.8 束搜索

    • 9.8.1 贪心搜索

    • 9.8.2 穷举搜索

    • 9.8.3 束搜索

  • 第10章 注意力机制

  • 10.1 注意力提示

    • 10.1.1 生物学中的注意力提示

    • 10.1.2 查询、键和值

    • 10.1.3 注意力的可视化

  • 10.2 注意力汇聚:Nadaraya-Watson 核回归

    • 10.2.1 生成数据集

    • 10.2.2 平均汇聚

    • 10.2.3 非参数注意力汇聚

    • 10.2.4 带参数注意力汇聚

  • 10.3 注意力评分函数

    • 10.3.1 掩蔽softmax操作

    • 10.3.2 加性注意力

    • 10.3.3 缩放点积注意力

  • 10.4 Bahdanau 注意力

    • 10.4.1 模型

    • 10.4.2 定义注意力解码器

    • 10.4.3 训练

  • 10.5 多头注意力

    • 10.5.1 模型

    • 10.5.2 实现

  • 10.6 自注意力和位置编码

    • 10.6.1 自注意力

    • 10.6.2 比较卷积神经网络、循环神经网络和自注意力

    • 10.6.3 位置编码

  • 10.7 Transformer

    • 10.7.1 模型

    • 10.7.2 基于位置的前馈网络

    • 10.7.3 残差连接和层规范化

    • 10.7.4 编码器

    • 10.7.5 解码器

    • 10.7.6 训练

  • 第11章 优化算法

  • 11.1 优化和深度学习

  • 11.2 凸性

  • 11.3 梯度下降

  • 11.4 随机梯度下降

  • 11.5 小批量随机梯度下降

  • 11.6 动量法

  • 11.7 AdaGrad算法

  • 11.8 RMSProp算法

  • 11.9 Adadelta算法

  • 11.10 Adam算法

  • 11.11 学习率调度器

  • 第12章 计算性能

  • 12.1 编译器和解释器

  • 12.2 异步计算

    • 通过后端异步处理

  • 12.3 自动并行

  • 12.4 硬件

  • 12.5 多GPU训练

  • 12.6 多GPU的简洁实现

  • 12.7 参数服务器

  • 第13章 计算机视觉

  • 13.1 图像增广

  • 13.2 微调

  • 13.4 锚框

  • 13.5 多尺度目标检测

  • 13.6 目标检测数据集

  • 13.7 单发多框检测(SSD)

  • 13.8 区域卷积神经网络(R-CNN)系列

  • 13.9 语义分割和数据集

  • 13.10 转置卷积

  • 13.11 全卷积网络

  • 13.12 风格迁移

  • 13.13 实战 Kaggle竞赛:图像分类(CIFAR-10)

  • 13.14 实战Kaggle竞赛:狗的品种识别(ImageNet Dogs)

  • 第14章 自然语言处理:预训练

  • 14.1 词嵌入(word2vec)

  • 14.2 近似训练

  • 14.3 用于预训练词嵌入的数据集

  • 14.4 预训练word2vec

  • 14.5 全局向量的词嵌入(GloVe)

  • 14.6 子词嵌入

  • 14.7 词的相似度和类比任务

  • 14.8 来自Transformer的双向编码器表示(BERT)

  • 14.9 用于预训练BERT的数据集

  • 14.10 预训练BERT

  • 第15章 自然语言处理:应用

  • 15.1 情感分析及数据集

  • 15.2 情感分析:使用循环神经网络

  • 15.3 情感分析:使用卷积神经网络

  • 15.4 自然语言推断与数据集

  • 15.5 自然语言推断:使用注意力

  • 15.6 针对序列级和词元级应用微调BERT

  • 15.7 自然语言推断:微调BERT

  • 附录A 深度学习工具

  • A.1 使用Jupyter记事本

    • A.1.1 在本地编辑和运行代码

    • A.1.2 高级选项

  • A.2 使用Amazon SageMaker

    • A.2.1 注册

    • A.2.2 创建SageMaker实例

    • A.2.3 运行和停止实例

    • A.2.4 更新Notebook

  • A.3 使用Amazon EC2实例

    • A.3.1 创建和运行EC2实例

    • A.3.2 安装CUDA

    • A.3.3 安装库以运行代码

    • A.3.4 远程运行Jupyter记事本

    • A.3.5 关闭未使用的实例

  • A.4 选择服务器和GPU

    • A.4.1 选择服务器

    • A.4.2 选择GPU

  • A.5 为本书做贡献

    • A.5.1 提交微小更改

    • A.5.2 大量文本或代码修改

    • A.5.3 提交主要更改

  • 参考文献

适合人群

本书主要面向三类核心人群:

  1. 在校大学生:希望系统学习深度学习理论与实践,为学术研究或职业发展奠定基础;

  2. 技术人员:包括工程师、算法从业者等,希望掌握PyTorch框架下的深度学习应用开发能力;

  3. 研究人员:专注于机器学习、计算机视觉、自然语言处理等领域,需要权威参考资料与前沿技术解读。

阅读本书无需具备深度学习或机器学习背景,只需满足两个基础条件:一是掌握基本的Python编程知识;二是了解基础的线性代数、微分、概率等数学知识,若数学基础薄弱,可参考书中第2章的预备知识补充学习。

推荐理由

  1. 权威阵容背书:作者团队兼具顶尖学术造诣与丰富工业界经验,译者专业且熟悉技术落地场景,确保内容的准确性与实用性,是领域内公认的权威教材;

  2. 内容体系完备:从预备知识到前沿应用,覆盖深度学习全链路知识,逻辑循序渐进,既适合入门打基础,也可作为进阶学习的参考资料;

  3. 框架适配实用:专为PyTorch框架修订,贴合当前工业界主流开发需求,所有示例代码可直接运行,降低实践门槛;

  4. 配套资源丰富:全球400多所大学验证的教学体系,配套视频课程、PPT、习题、在线社区等资源,扫码即可获取答疑,支持实时与作译者互动,学习体验更流畅;

  5. 实战导向鲜明:包含Kaggle竞赛、计算机视觉、自然语言处理等多个实战案例,将理论知识与工程实践紧密结合,帮助读者快速掌握落地能力;

  6. 前沿内容同步:新增注意力机制、预训练、BERT、Transformer等前沿技术,紧跟深度学习发展趋势,确保知识的时效性。

总结

《动手学深度学习(PyTorch版)》是一本集权威性、系统性、实用性于一体的深度学习经典教材。它以PyTorch框架为核心,兼顾理论深度与实践可操作性,通过清晰的逻辑架构、丰富的实战案例和完备的配套资源,为不同基础的学习者提供了一条从入门到精通的高效学习路径。无论是在校学生、技术从业者还是研究人员,都能通过本书系统掌握深度学习的核心知识与应用技能,同时借助在线社区与实战项目,快速将所学转化为解决实际问题的能力。作为全球400多所大学采用的教材,本书的品质与价值已得到广泛验证,是深度学习领域不可多得的优质学习资源。

购买此书

前往购买
打赏
THE END
作者头像
人工智能研究所
发现AI神器,探索AI技术!