水木
水木
发布于 2024-08-30 / 8 阅读
0

深入浅出PyTorch――从模型到源码(博文视点出品)

链接: https://pan.baidu.com/s/1XqxiFe6Ijg8MqHexaNRd2g?pwd=e77u 提取码: e77u

出版社: 电子工业出版社
ISBN:9787121386411
版次:1
商品编码:12834104
品牌:电子工业出版社
包装:平装
开本:16开
出版时间:2020-04-01
用纸:胶版纸
页数:428
字数:462000
正文语种:中文
编辑推荐
适读人群 :深度学习框架PyTorch入门者、任何对深度学习感兴趣的人。


英伟达(NVIDIA)公司资深深度学习架构工程师力作!

介绍PyTorch新版本的常用模块及其底层实现逻辑。

涉及PyTorch基础操作组合构造复杂的深度学习模型及其这些模型在计算机视觉、自然语言处理、推荐系统、语音识别、语音合成和强化学习中的应用。

介绍近几年学术界和工业界常用的诸多热门模型, 如SSD、FCN、GAN、LSTM和BERT等的PyTorch实现。




内容简介

本书从机器学习和深度学习的基础概念入手,由浅到深地详细介绍了PyTorch深度学习框架的知识,主要包含深度学习的基础知识,如神经网络的优化算法、神经网络的模块等;同时也包含了深度学习的进阶知识,如使用 PyTorch 构建复杂的深度学习模型,以及前沿的深度学习模型的介绍等。另外,为了加深读者对 PyTorch 深度学习框架的理解和掌握,本书还介绍了 PyTorch 的源代码结构,包括该框架的 Python语言前端和 C++语言后端的源代码结构。

作为一本面向初中级读者的技术类图书,本书既可以作为深度学习框架 PyTorch 入门的参考书籍,也可以作为 PyTorch 深度学习框架的结构和源代码的阅读指南使用。




作者简介

张校捷,英伟达(NVIDIA)资深深度学习架构工程师,负责基于CUDA的深度学习框架的优化。目前主要使用的技术栈是作为深度学习框架后端的C/C++/CUDA,以及深度学习框架前端的Python,对主流的深度学习框架如PyTorch和TensorFlow比较熟悉,并精通其在计算机视觉(CV)和自然语言处理(NLP)方面的具体应用。作者多次作为专题演讲嘉宾,受邀参加CSDN主办的技术大会。

精彩书评

张校捷自博士毕业以来一直从事 PyTorch 相关的工作,本书是他多年的经验总结,相信他在英伟达(NVIDIA )公司的相关工作经验能帮助广大读者更深入地了解 PyTorch,从而学好深度学习。希望本书的出版能为国内的深度学习社区添砖加瓦,能吸引更多热爱深度学习的人加入这个领域。

——Intel IAGS 软件工程师 石元坤

《深入浅出PyTorch——从模型到源码》图书像一条无形的纽带,将深度学习的方方面面有机地连接起来,组成了一张井然有序的知识网络;更像一座桥梁,载着我们跨越机器学习抽象概念和实际工程实现之间的深渊暗流。不管是对在实际工作中经常需要使用PyTorch框架的工程人员,还是希望借助PyTorch工具探索未知世界的研究人员,或者是对机器学习领域兴趣盎然但又不知从何入手的爱好者来说,相信都能从本书中得到启迪。

——英伟达(NVIDIA)资深深度学习架构工程师 余翀

张校捷是 PyTorch技术专家,对 PyTorch 的方方面面有着丰富的经验。本书采用了理论和实践相结合的方式,由浅入深地介绍了深度学习的基础、PyTorch 基础、PyTorch 软件包的结构、PyTorch在各领域的应用及其运行机制和扩展方法。涵盖的应用领域非常广泛,包含机器视觉、自然语言处理、推荐系统、语音识别、语音合成和强化学习等。通过阅读这本书,读者可以快速入门机器学习,掌握核心概念,熟悉 PyTorch 的使用,从而提升在诸多领域实际应用的能力。

——谷歌开发者机器学习专家(GDE) 孔晓泉

PyTorch以其卓越的性能和易用性,从众多的深度学习框架中脱颖而出,得到了学界研究人员的青睐,同时也以易于调试及与其他流行的科学计算库的高度一致性,吸引了众多开发人员加入其开发和推广。本书作者就是其中一位出色的践行者,他也乐于在DevFest、PyCon等活动中多次针对深度学习框架给出精彩的实践分享。如今这本《深入浅出PyTorch——从模型到源码》是他精心打磨之作,相信无论对初学者还是希望深入理解PyTorch的老鸟都值得仔细品读。建议大家结合代码和Google Colab动手领悟书中的精妙。

——谷歌云技术顾问 王顺




目录

第1章 深度学习概念简介 1
1.1 深度学习的历史 1
1.1.1 深度学习的发展过程 1
1.1.2 深度学习在计算机视觉领域的发展 3
1.1.3 深度学习在自然语言处理和其他领域的发展 6
1.2 机器学习基本概念 7
1.2.1 机器学习的主要任务 8
1.2.2 机器模型的类型 9
1.2.3 损失函数以及模型的拟合 11
1.3 深度学习基本概念 14
1.3.1 向量、矩阵和张量及其运算 15
1.3.2 张量的存储 19
1.3.3 神经元的概念 19
1.4 输入数据的表示方式 20
1.4.1 图像数据的表示方式 20
1.4.2 文本数据的表示方式 22
1.4.3 音频数据的表示方式 23
1.5 线性变换和激活函数 26
1.5.1 全连接线性变换 26
1.5.2 卷积线性变换 28
1.5.3 激活函数 29
1.6 链式求导法则和反向传播 32
1.6.1 基于链式求导的梯度计算 32
1.6.2 激活函数的导数 34
1.6.3 数值梯度 36
1.7 损失函数和优化器 37
1.7.1 常用的损失函数 37
1.7.2 基于梯度的优化器 38
1.7.3 学习率衰减和权重衰减 42
1.8 本章总结 43
第2章 PyTorch深度学习框架简介 44
2.1 深度学习框架简介 44
2.1.1 深度学习框架中的张量 44
2.1.2 深度学习框架中的计算图 45
2.1.3 深度学习框架中的自动求导和反向传播 46
2.2 PyTorch框架历史和特性更迭 47
2.3 PyTorch的安装过程 49
2.4 PyTorch包的结构 52
2.4.1 PyTorch的主要模块 52
2.4.2 PyTorch的辅助工具模块 57
2.5 PyTorch中张量的创建和维度的操作 59
2.5.1 张量的数据类型 59
2.5.2 张量的创建方式 61
2.5.3 张量的存储设备 65
2.5.4 和张量维度相关的方法 66
2.5.5 张量的索引和切片 69
2.6 PyTorch中张量的运算 70
2.6.1 涉及单个张量的函数运算 70
2.6.2 涉及多个张量的函数运算 72
2.6.3 张量的极值和排序 73
2.6.4 矩阵的乘法和张量的缩并 75
2.6.5 张量的拼接和分割 77
2.6.6 张量维度的扩增和压缩 79
2.6.7 张量的广播 80
2.7 PyTorch中的模块简介 82
2.7.1 PyTorch中的模块类 82
2.7.2 基于模块类的简单线性回归类 82
2.7.3 线性回归类的实例化和方法调用 84
2.8 PyTorch的计算图和自动求导机制 87
2.8.1 自动求导机制简介 87
2.8.2 自动求导机制实例 88
2.8.3 梯度函数的使用 8