新书速览|PyTorch 2.0深度学习从零开始学

实战中文情感分类、拼音汉字转化、中文文本分类、拼音汉字翻译、强化学习、语音唤醒、人脸识别

图片

01

本书简介

本书以通俗易懂的方式介绍PyTorch深度学习基础理论,并以项目实战的形式详细介绍PyTorch框架的使用。为读者揭示PyTorch 2.0进行深度学习项目实战的核心技术,实战案例丰富而富有启发。

02

本书内容

本书共分15章,内容包括PyTorch概述、开发环境搭建、基于PyTorch的MNIST分类实战、深度学习理论基础、MNIST分类实战、数据处理与模型可视化、基于PyTorch卷积层的分类实战、PyTorch数据处理与模型可视化、实战ResNet卷积网络模型、有趣的Word Embedding、基于循环神经网络的中文情感分类实战、自然语言处理的编码器、站在巨人肩膀上的预训练模型BERT、自然语言处理的解码器、基于PyTorch的强化学习实战、基于MFCC的语音唤醒实战、基于PyTorch的人脸识别实战

03

本书读者

 本书适合深度学习初学者、PyTorch初学者、PyTorch深度学习项目开发人员学习,也可作为高等院校或高职高专计算机技术、人工智能、智能科学与技术、数据科学与大数据技术等相关专业的教材

04

 本书作者

王晓华,高校计算机专业讲师,研究方向为云计算、大数据与人工智能。著有《Python机器学习与可视化分析实战》《谷歌JAX深度学习从零开始学》《Spark 3.0大数据分析与挖掘:基于机器学习》《TensorFlow深度学习应用实践》《OpenCV+TensorFlow深度学习与计算机视觉实战》《TensorFlow知识图谱实战》《TensorFlow人脸识别实战》《TensorFlow语音识别实战》《TensorFlow+Keras自然语言处理实战》《TensorFlow 2.0卷积神经网络实战》《Keras实战:基于TensorFlow2.2的深度学习实践》《TensorFlow 2.0深度学习从零开始学》《深度学习的数学原理与实现》。

05

本书目录

第1章  PyTorch 2.0—一个新的开始 1

1.1  燎原之势的人工智能 1

1.1.1  从无到有的人工智能 1

1.1.2  深度学习与人工智能 2

1.1.3  应用深度学习解决实际问题 2

1.1.4  深度学习技术的优势和挑战 3

1.2  为什么选择PyTorch 2.0 4

1.2.1  PyTorch的前世今生 4

1.2.2  更快、更优、更具编译支持—PyTorch 2.0更好的未来 4

1.2.3  PyTorch 2.0学习路径—从零基础到项目实战 5

1.3  本章小结 6

第2章  Hello PyTorch 2.0—深度学习环境搭建 7

2.1  安装Python 7

2.1.1  Miniconda的下载与安装 7

2.1.2  PyCharm的下载与安装 10

2.1.3  Python代码小练习:计算Softmax函数 13

2.2  安装PyTorch 2.0 14

2.2.1  Nvidia 10/20/30/40系列显卡选择的GPU版本 15

2.2.2  PyTorch 2.0 GPU Nvidia运行库的安装—以CUDA 11.7+cuDNN 8.2.0为例 15

2.2.3  PyTorch 2.0小练习:Hello PyTorch 18

2.3  实战:基于PyTorch 2.0的图像去噪 18

2.3.1  MNIST数据集的准备 18

2.3.2  MNIST数据集的特征和标签介绍 20

2.3.3  模型的准备和介绍 21

2.3.4  模型的损失函数与优化函数 24

2.3.5  基于深度学习的模型训练 24

2.4  本章小结 26

第3章  基于PyTorch的MNIST分类实战 27

3.1  实战:基于PyTorch的MNIST手写体分类 27

3.1.1  数据图像的获取与标签的说明 27

3.1.2  模型的准备(多层感知机) 29

3.1.3  损失函数的表示与计算 30

3.1.4  基于PyTorch的手写体识别的实现 31

3.2  PyTorch 2.0模型结构输出与可视化 33

3.2.1  查看模型结构和参数信息 33

3.2.2  基于netron库的PyTorch 2.0模型可视化 34

3.2.3  更多的PyTorch 2.0模型可视化工具 37

3.3  本章小结 38

第4章  深度学习的理论基础 39

4.1  反向传播神经网络的历史 39

4.2  反向传播神经网络两个基础算法详解 43

4.2.1  最小二乘法详解 43

4.2.2  道士下山的故事—梯度下降算法 45

4.2.3  最小二乘法的梯度下降算法以及Python实现 48

4.3  反馈神经网络反向传播算法介绍 54

4.3.1  深度学习基础 54

4.3.2  链式求导法则 55

4.3.3  反馈神经网络的原理与公式推导 56

4.3.4  反馈神经网络原理的激活函数 61

4.3.5  反馈神经网络原理的Python实现 62

4.4  本章小结 66

第5章  基于PyTorch卷积层的MNIST分类实战 67

5.1  卷积运算的基本概念 68

5.1.1  基本卷积运算示例 68

5.1.2  PyTorch 2.0中卷积函数实现详解 70

5.1.3  池化运算 72

5.1.4  Softmax激活函数 73

5.1.5  卷积神经网络的原理 74

5.2  实战:基于卷积的MNIST手写体分类 76

5.2.1  数据准备 77

5.2.2  模型设计 77

5.2.3  基于卷积的MNIST分类模型 78

5.3  PyTorch 2.0的深度可分离膨胀卷积详解 80

5.3.1  深度可分离卷积的定义 81

5.3.2  深度的定义以及不同计算层待训练参数的比较 82

5.3.3  膨胀卷积详解 83

5.4  实战:基于深度可分离膨胀卷积的MNIST手写体识别 84

5.5  本章小结 86

第6章  PyTorch数据处理与模型可视化 87

6.1  用于自定义数据集的torch.utils.data工具箱使用详解 88

6.1.1  使用torch.utils.data.Dataset封装自定义数据集 88

6.1.2  改变数据类型的Dataset类中transform的使用 90

6.1.3  批量输出数据的DataLoader类详解 94

6.2  基于tensorboardX的训练可视化展示 97

6.2.1  tensorboardX的安装与简介 97

6.2.2  tensorboardX可视化组件的使用 97

6.2.3  tensorboardX对模型训练过程的展示 99

6.3  本章小结 102

第7章  从冠军开始—实战ResNet 103

7.1  ResNet基础原理与程序设计基础 103

7.1.1  ResNet诞生的背景 104

7.1.2  不要重复造轮子—PyTorch 2.0中的模块工具 106

7.1.3  ResNet残差模块的实现 107

7.1.4  ResNet网络的实现 109

7.2  实战ResNet:CIFAR-10数据集分类 112

7.2.1  CIFAR-10数据集简介 112

7.2.2  基于ResNet的CIFAR-10数据集分类 115

7.3  本章小结 117

第8章  梅西-阿根廷+巴西=?—有趣的Word Embedding 118

8.1  文本数据处理 119

8.1.1  数据集介绍和数据清洗 119

8.1.2  停用词的使用 121

8.1.3  词向量训练模型Word2Vec使用介绍 124

8.1.4  文本主题的提取:基于TF-IDF 127

8.1.5  文本主题的提取:基于TextRank 131

8.2  更多的Word Embedding方法—FastText和预训练词向量 133

8.2.1  FastText的原理与基础算法 134

8.2.2  FastText训练以及与PyTorch 2.0的协同使用 135

8.2.3  使用其他预训练参数生成PyTorch 2.0词嵌入矩阵(中文) 140

8.3  针对文本的卷积神经网络模型简介—字符卷积 141

8.3.1  字符(非单词)文本的处理 141

8.3.2  卷积神经网络文本分类模型的实现—Conv1d(一维卷积) 149

8.4  针对文本的卷积神经网络模型简介—词卷积 151

8.4.1  单词的文本处理 152

8.4.2  卷积神经网络文本分类模型的实现—Conv2d(二维卷积) 153

8.5  使用卷积实现文本分类的补充内容 156

8.6  本章小结 159

第9章  基于循环神经网络的中文情感分类实战 160

9.1  实战:循环神经网络与情感分类 160

9.1.1  基于循环神经网络的中文情感分类准备 161

9.1.2  基于循环神经网络的中文情感分类实现 163

9.2  循环神经网络理论讲解 165

9.2.1  什么是GRU 166

9.2.2  单向不行,那就双向 167

9.3  本章小结 168

第10章  从0起步—自然语言处理的编码器 169

10.1  编码器的核心—注意力模型 170

10.1.1  输入层—初始词向量层和位置编码器层 170

10.1.2  自注意力层(重点) 172

10.1.3  ticks和LayerNormalization 177

10.1.4  多头自注意力 178

10.2  编码器的实现 181

10.2.1  前馈层的实现 182

10.2.2  编码器的实现 183

10.3  实战编码器:汉字拼音转换模型 186

10.3.1  汉字拼音数据集处理 186

10.3.2  汉字拼音转换模型的确定 188

10.3.3  模型训练部分的编写 191

10.4  本章小结 193

第11章  站在巨人肩膀上的预训练模型BERT 194

11.1  预训练模型BERT 194

11.1.1  BERT的基本架构与应用 195

11.1.2  BERT预训练任务与Fine-Tuning 195

11.2  实战BERT:中文文本分类 198

11.2.1  使用Hugging Face获取BERT预训练模型 198

11.2.2  BERT实战文本分类 200

11.3  更多的预训练模型 204

11.4  本章小结 206

 第12章  从1起步—自然语言处理的解码器 207

12.1  解码器的核心—注意力模型 207

12.1.1  解码器的输入和交互注意力层的掩码 208

12.1.2  为什么通过掩码操作能够减少干扰 213

12.1.3  解码器的输出(移位训练方法) 214

12.1.4  解码器的实现 215

12.2  实战解码器:汉字拼音翻译模型 217

12.2.1  数据集的获取与处理 218

12.2.2  翻译模型 220

12.2.3  汉字拼音模型的训练 230

12.2.4  汉字拼音模型的使用 231

12.3  本章小结 232

第13章  我也可以成为马斯克—无痛的基于PyTorch的强化学习实战 233

13.1  实战:基于强化学习的火箭回收 233

13.1.1  火箭回收技术基本运行环境介绍 234

13.1.2  火箭回收参数介绍 235

13.1.3  基于强化学习的火箭回收实战 236

13.1.4  强化学习的基本内容 241

13.2  强化学习的基本算法—PPO算法 246

13.2.1  PPO算法简介 246

13.2.2  函数使用说明 246

13.2.3  一学就会的TD-Error理论介绍 248

13.2.4  基于TD-Error的结果修正 250

13.2.5  对于奖励的倒序构成的说明 251

13.3  本章小结 252

第14章  创建你自己的小精灵—基于MFCC的语音唤醒实战 253

14.1  语音识别的理论基础—MFCC 253

14.2  语音识别的数据获取与准备 255

14.2.1  Speech Commands简介与数据说明 255

14.2.2  语音识别编码器模块与代码实现 258

14.3  实战:PyTorch 2.0语音识别 260

14.3.1  基于PyTorch 2.0的语音识别模型 260

14.3.2  基于PyTorch 2.0的语音识别实现 261

14.4  本章小结 262

第15章  基于PyTorch的人脸识别实战 263

15.1  人脸识别数据集的建立 263

15.1.1  LFW数据集简介 264

15.1.2  Dlib库简介 264

15.1.3  OpenCV简介 265

15.1.4  使用Dlib检测人脸位置 265

15.1.5  使用Dlib和OpenCV建立自己的人脸检测数据集 268

15.1.6  基于人脸定位制作适配深度学习的人脸识别数据集 270

15.2  实战:基于深度学习的人脸识别模型 274

15.2.1  人脸识别的基本模型Siamese Model 274

15.2.2  基于PyTorch 2.0的Siamese Model的实现 276

15.2.3  人脸识别的Contrastive Loss详解与实现 277

15.2.4  基于PyTorch 2.0的人脸识别模型 278

15.3  本章小结 280

本文摘自《PyTorch 2.0深度学习从零开始学》,获出版社和作者授权发布。

链接PyTorch 2.0深度学习从零开始学——京东

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/674412.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Git介绍和常用命令说明

目录 一、Git概述 1.1 Git是什么 1.2 Git有什么用 1.3 Git仓库介绍 二、Git下载与安装 三、Git代码托管服务(远程仓库) 四、Git常用命令 4.1 设置用户信息 4.2 获取Git仓库 4.2.1 本地初始化Git仓库 4.2.2 从远程仓库克隆 4.3 本地仓库操作 …

相机图像质量研究(10)常见问题总结:光学结构对成像的影响--光圈

系列文章目录 相机图像质量研究(1)Camera成像流程介绍 相机图像质量研究(2)ISP专用平台调优介绍 相机图像质量研究(3)图像质量测试介绍 相机图像质量研究(4)常见问题总结:光学结构对成像的影响--焦距 相机图像质量研究(5)常见问题总结:光学结构对成…

SERVLET线程模型

1. SERVLET线程模型 Servlet规范定义了两种线程模型来阐明Web容器应该如何在多线程环境中处理servlet。第一种模型称为多线程模型,默认在此模型内执行所有servlet。在此模型中,每次客户机向servlet发送请求时Web容器都启动一个新线程。这意味着可能有多个线程同时访问servle…

机器人运动学林沛群——旋转矩阵

旋转矩阵 基本概念 三个主轴,可以看作是三个向量,为b在a的表达,以a为基准 旋转矩阵 B相对于A的姿态: B A R [ A X B ^ A Y B ^ A Z B ^ ] [ X ^ B ⋅ X ^ A Y ^ B ⋅ X ^ A Z ^ B ⋅ X ^ A X ^ B ⋅ Y ^ A Y ^ B ⋅ Y ^ A Z …

牛客网SQL264:查询每个日期新用户的次日留存率

官网链接: 牛客每个人最近的登录日期(五)_牛客题霸_牛客网牛客每天有很多人登录,请你统计一下牛客每个日期新用户的次日留存率。 有一个登录(login。题目来自【牛客题霸】https://www.nowcoder.com/practice/ea0c56cd700344b590182aad03cc61b8?tpId82 …

C语言笔试题之实现C库函数 strstr()(设置标志位)

实例要求: 1、请你实现C库函数strstr()(stdio.h & string.h),请在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始);2、函数声明:int strStr(char* h…

5G NR 信道号计算

一、5G NR的频段 增加带宽是增加容量和传输速率最直接的方法,目前5G最大带宽将会达到400MHz,考虑到目前频率占用情况,5G将不得不使用高频进行通信。 3GPP协议定义了从Sub6G(FR1)到毫米波(FR2)的5G目标频谱。 其中FR1是5G的核心频段&#xff0…

米贸搜|Facebook在购物季使用的Meta广告投放流程

一、账户简化 当广告系列开始投放后,每个广告组都会经历一个初始的“机器学习阶段”。简化账户架构可以帮助AI系统更快获得广告主所需的成效。例如: 每周转化次数超过50次的广告组,其单次购物费用要低28%;成功结束机器学习阶段的…

MySQL索引怎么提高查询的速度?

目录 一、MySQL介绍 二、什么是索引 三、为什么要用索引 四、索引如何提高查询速度 一、MySQL介绍 MySQL是一个开源的关系型数据库管理系统(RDBMS),它是目前最流行和广泛使用的数据库之一。MySQL由瑞典MySQL AB公司开发,并在…

NXP恩智浦电源管理芯片 PIMC VR5510 (配套S32G)芯片手册(I2C通信)-翻译版

文章目录 1. 基本概述2. 简化应用视图3. 特点4. 应用5. 订购信息6. 芯片内部区块视图7. Pin脚信息7.1 Pin 描述7.2 Pinning 8. 产品特性概述8.1 最大额定值8.2 电气特性8.3 操作范围8.4 热力范围8.5 EMC合规性8.6 功能状态图8.7 功能设备操作8.8 主要状态机8.9 深度故障安全状态…

帮写祝福、年味卡片,属于Mate X5 折叠屏手机的用户过年指南

怎样过一个舒心愉快的新年? 春运往返的漫漫旅途上,手机总是忠实陪伴我们打发那些无聊的时光——用Mate X5的悬停观影模式,相当于自带手机支架,解放你拿着零食的双手,旅途观影更快乐! 同时,此模…

Linux(Ubuntu)环境下安装卸载Python3(避免踩坑)

一、安装 第一步: 进入/usr/local/目录,下载Python3,这里我下载的是python 3.8.10,如果要下载其他版本改下链接中的版本号,需与官网版本号对应。 wget https://www.python.org/ftp/python/3.8.10/Python-3.8.10.tgz第…

Ubuntu安装SVN服务并结合内网穿透实现公网访问本地存储文件

🔥博客主页: 小羊失眠啦. 🎥系列专栏:《C语言》 《数据结构》 《C》 《Linux》 《Cpolar》 ❤️感谢大家点赞👍收藏⭐评论✍️ 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默&…

重装系统---首次安装java的JDK

1、去官网或者百度资源选择自己想要下载的jdk版本即可 2、 3、按照步骤安装即可,路径不要更改,默认c盘安装就好,避免后面发生错误。 4、打开电脑的设置,编辑环境变量 这是添加之后的效果 5、再新建一个系统环境变量 6、编辑环境变量Path 添

【Flink状态管理(二)各状态初始化入口】状态初始化流程详解与源码剖析

文章目录 1. 状态初始化总流程梳理2.创建StreamOperatorStateContext3. StateInitializationContext的接口设计。4. 状态初始化举例:UDF状态初始化 在TaskManager中启动Task线程后,会调用StreamTask.invoke()方法触发当前Task中算子的执行,在…

Netty中解决粘包/半包

目录 什么是TCP粘包半包? TCP 粘包/半包发生的原因 解决粘包半包 channelRead和channelReadComplete区别 什么是TCP粘包半包? 假设客户端分别发送了两个数据包 D1 和 D2 给服务端,由于服务端一次读取到的字节数是不确定的,故可…

Zoho Mail企业邮箱商业扩展第3部分:计算财务状况

在Zoho Mail商业扩展系列的压轴篇章中,王雪琳利用Zoho Mail的集成功能成功地完成了各项工作,并顺利地建立了自己的营销代理机构。让我们快速回顾一下她的成功之路。 一、使用Zoho Mail成功方法概述 首先她通过Zoho Mail为其电子邮件地址设置了自定义域…

spring boot打完jar包后使用命令行启动,提示xxx.jar 中没有主清单属性

在对springBoot接口中间件开发完毕后,本地启动没有任何问题,在使用package命令打包也没异常,打完包后使用命令行:java -jar xxx.jar启动发现报异常:xxx.jar 中没有主清单属性,具体解决方法如下:…

TI毫米波雷达开发——High Accuracy Demo 串口数据接收及TLV协议解析 matlab 源码

TI毫米波雷达开发——串口数据接收及TLV协议解析 matlab 源码 前置基础源代码功能说明功能演示视频文件结构01.bin / 02.binParseData.mread_file_and_plot_object_location.mread_serial_port_and_plot_object_location.m函数解析configureSport(comportSnum)readUartCallback…

day06.C++排序(整理)

一.直接插入排序 void Insertsort(int *a,int n){int i,j;for( i1;i<n;i){if(a[i]<a[i-1]){int tempa[i];//哨兵for( ji-1;temp<a[j];j--){a[j1]a[j];//记录后移}a[j1]temp;//插入到正确位置}} }二.希尔排序 void Shellsort(int *a,int n){for(int dltan/2;dlta>…