-
内容大纲
《深度学习实践—基于TensorFlow及PyTorch库的编程指南》突破传统深度学习教材先理论后实践的模式,从直观的实例应用入手,让读者快速体验利用深度学习解决实际问题的过程。读者将从运行实例程序开始,初步理解代码的作用,并逐步学会自主调整模型参数、调试程序,以验证其精度和效率。
第1章介绍深度学习发展历程及基本概念;第2章聚焦开发环境搭建,并给出快速示例,帮助读者迅速开启深度学习之旅,熟悉基础操作环境;第3章介绍深度学习原理,结合FCNN、CNN、LSTM、GAN、Transformer等典型模型示例,使读者理解深度学习的核心理论与模型架构;第4~6章着重传授Python编程基础,以及TensorFlow、PyTorch这两种主流深度学习框架的编程知识,为实际开发奠定编程基础;第7章阐述张量概念与操作,帮助读者掌握其关键特性与操作方法;第8章专注于网络设计与超参数优化;第9、10章通过深度学习在计算机视觉与防灾领域的应用实例,展现深度学习在实际场景中的强大应用能力,使读者了解如何将所学知识运用到具体领域解决实际问题;第11章为程序代码,读者可扫二维码获取。
本书特别适合需要快速入门人工智能深度学习解决实际问题的,智能建造、数值模拟等非AI 方向的技术人员、在校本科生、研究生。本书也可作为相关专业师生教学用书。 -
作者介绍
-
目录
第1章 绪论
1.1 什么是深度学习?
1.2 深度学习的崛起及科学创新成果
1.3 Python、TensorFlow 及PyTorch 简介
1.4 本书的目标与结构
第2章 快速入门
2.1 安装Visual Studio
2.1.1 下载和安装Visual Studio Community
2.1.2 下载和安装Python
2.1.3 下载和安装TensorFlow 及关联库
2.1.4 下载和安装其他需要的库
2.2 深度学习应用示例及环境检核
第3章 深度学习的基本原理及示例
3.1 深度学习的工作原理及各网络架构应用示例
3.2 全连接神经网络(FCNN)架构及工作原理
3.2.1 全连接神经网络架构
3.2.2 FCNN 的前向传播计算
3.2.3 计算损失函数及梯度
3.2.4 反向传播计算
3.2.5 利用TensorFlow 训练FCNN 模型的步骤
3.2.6 利用PyTorch 训练FCNN 模型的基本步骤
3.2.7 实例:全连接神经网络(FCNN)模型应用
3.3 卷积神经网络(CNN)架构及工作原理
3.3.1 CNN 方法的主要思路
3.3.2 二维卷积操作
3.3.3 卷积神经网络架构
3.3.4 损失函数的计算
3.3.5 卷积网络架构的梯度计算
3.3.6 池化操作
3.3.7 展平Flatten 操作
3.3.8 CNN 是对FCNN 的改良
3.3.9 实例:卷积神经网络(CNN)模型的应用
3.4 循环神经网络(RNN)架构及工作原理
3.4.1 RNN 的架构
3.4.2 RNN 的工作原理
3.4.3 长短期记忆网络(LSTM)架构及工作原理
3.5 生成对抗网络(GAN)架构及工作原理
3.5.1 生成器的工作原理
3.5.2 生成器的网络架构
3.5.3 判别器的工作原理
3.5.4 判别器的网络架构
3.5.5 模型训练过程(损失计算、反向传播与迭代训练)
3.5.6 细节调整
3.5.7 实例:生成对抗网络(GAN)模型的应用
3.6 Transformer 网络架构
3.6.1 神经网络架构的定义
3.6.2 前向传播
3.6.3 损失函数的计算
3.6.4 反向传播
3.6.5 迭代训练
3.6.6 Transformer 网络架构的优势与应用
3.6.7 实例:Transformer 网络架构的应用
第4章 Python 编程示例的代码与释义
4.1 Python 程序执行方式之一:交互式解释器
4.2 Python 程序执行方式之二:利用Visual Studio进行编写和运行
4.3 Python 程序的一般构成
4.4 第一部分:库和模块的导入
4.4.1 深度学习程序中所导入的常用库
4.4.2 导入库中部分模块
4.5 第二部分:数据准备
4.6 第三部分:神经网络分析的主要代码
4.6.1 模型定义
4.6.2 输出模型的架构概览
4.6.3 模型编译
4.6.4 模型训练
4.6.5 模型评估
4.7 第四部分:实行预测
4.8 第五部分:结果的可视化
4.8.1 绘制真实值与预测值散点图
4.8.2 误差计算及绘制误差分布直方图
4.8.3 绘制特征重要性图
4.8.4 可视化对部分样本的预测结果
4.8.5 生成混淆矩阵及其可视化
4.8.6 生成分类模型的性能报告
4.8.7 绘制三个子图:预测值与真值的比较,误差及相对误差图
4.9 第六部分:保存数据集
4.10 Python 编程的基本规定
4.10.1 缩进、命名规范、代码布局和注释的要求
4.10.2 编码风格
4.10.3 Python 的变量
4.10.4 控制结构
4.11 Python 的函数
4.11.1 Python 的内置函数及标准库模块
4.11.2 使用def 定义自定义函数
4.12 Python 面向对象编程
4.12.1 类和对象
4.12.2 类的继承
4.12.3 封装
4.13 PyTorch 中的类
4.14 文件操作
4.14.1 打开和关闭文件
4.14.2 读取文件
4.14.3 写入文件
4.14.4 使用 with 语句
4.14.5 二进制文件操作
4.14.6 文件和目录管理
4.15 模块、包和库
4.15.1 模块
4.15.2 包
4.15.3 库
4.16 Python 标准库
4.17 库,包,模块的导入
4.17.1 库,包,模块的导入方式
4.17.2 Python 标准库的模块
4.18 第三方库函数
4.18.1 NumPy 矩阵计算与线性代数库
4.18.2 Matplotlib 数据可视化库
4.18.3 其他常用第三方库
4.18.4 导入规则
4.19 Python 中的help() 和dir() 函数
4.19.1 help() 函数
4.19.2 dir() 函数
4.20 代码中使用中文
4.21 异常处理
4.21.1 基本的异常捕获及处理
4.21.2 自定义异常与异常链
4.21.3 常见异常处理模式
第5章 基于TensorFlow库的深度学习编程
5.1 创建神经网络模型
5.1.1 序贯模型
5.1.2 函数式API
5.1.3 自定义层与模型子类化
5.2 常用神经网络层
5.2.1 全连接层
5.2.2 卷积层
5.2.3 标准卷积层
5.2.4 转置卷积层
5.2.5 池化层
5.2.6 循环神经网络层
5.2.7 长短期记忆网络层
5.2.8 门控循环单元层
5.2.9 批归一化层
5.2.10 其他功能层
5.3 编译模型
5.4 训练模型
5.4.1 训练过程
5.4.2 权重更新
5.5 评估模型与预测
5.6 深度学习的几个重要概念
5.6.1 模型输入数据的形状
5.6.2 激活函数
5.6.3 损失函数
5.6.4 评估模型性能的指标
5.6.5 优化器
5.6.6 正则化
第6章 基于PyTorch 库的深度学习编程
6.1 创建神经网络模型
6.1.1 顺序模型方式创建模型
6.1.2 自定义模块(继承 nn.Module)方式创建模型
6.1.3 自定义层构建模型
6.1.4 Sequential + 自定义层
6.1.5 模型组合
6.2 神经网络层
6.3 编译模型
6.4 训练模型
6.5 评估模型
6.6 进行预测
第7章 张量
7.1 Python、TensorFlow 及PyTorch中张量的异同点
7.2 Python 中TensorFlow 及PyTorch间的张量互换
7.3 常用维度的张量
第8章 神经网络的设计及优化
8.1 神经网络的设计
8.2 训练集与测试集划分的影响
8.2.1 交叉验证
8.2.2 交叉验证示例
8.3 超参数及其优化
8.4 网格搜索法
8.4.1 网格搜索法的主要思想和实现步骤
8.4.2 网格搜索法的实现示例
8.5 随机搜索法
8.6 贝叶斯优化法优化超参数
8.6.1 贝叶斯优化法的主要思想、工作原理及特点
8.6.2 贝叶斯优化法的实现示例
8.7 方法比较与实例
8.7.1 数据集及分析目标
8.7.2 定义模型创建函数
8.7.3 网格搜索法优化超参数的结果
8.7.4 随机搜索法优化超参数的结果
8.7.5 贝叶斯优化法优化超参数的结果
8.7.6 三种优化方法的结果比较
第9章 深度学习实践——计算机视觉领域
9.1 ImageNet 数据库及ILSVRC 夺冠模型
9.2 常用预训练模型及其在图像分类中的应用
9.2.1 预训练模型下载
9.2.2 预训练模型进行物体分类的精度验证
9.2.3 直接训练常用模型
9.2.4 迁移学习方法1:特征提取
9.2.5 迁移学习方法2:特征提取+ 微调
9.2.6 迁移学习:从单分类到多分类任务
9.3 常用预训练模型在目标检测中的应用
9.3.1 目标检测模型架构的组成部分及其功能
9.3.2 将ResNet50 多分类模型改造成目标检测程序的修改
9.3.3 利用Faster R-CNN 目标检测框架
9.4 常用预训练模型在语义分割中的应用
9.4.1 常见的语义分割模型
9.4.2 基于DeepLabv3+ 模型架构的语义分割
第10章 深度学习实践——地质灾害预测与监测
10.1 利用语义分割技术探测裂缝技术的应用
10.2 利用DeepLabv3+ 模型框架进行裂缝探测
10.2.1 DeepLab 模型系列概览
10.2.2 Crack500 裂缝数据集
10.2.3 利用Xception 作为backbone的语义分割程序
10.2.4 裂纹检测结果
10.3 利用迁移学习进行滑坡检测
10.3.1 基于深度学习的语义分割模型DeepLabv3+的迁移学习实现
10.3.2 滑坡检测结果
10.4 利用对象检测技术支持海上搜救任务
10.4.1 海上搜救任务中的对象检测挑战与数据集
10.4.2 基于YOLOv5 的 baseline 模型
10.4.3 模型改进Sea-YOLOv5:移动窗口分层自注意力拓展头
10.4.4 实验结果与分析
10.5 基于深度学习的落石监测系统
10.5.1 系统概述与需求分析
10.5.2 数据集准备
10.5.3 核心算法实现
10.5.4 系统实现与实验验证
10.5.5 挑战与展望
第11章 程序代码
参考文献
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-

孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-

时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-

本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...
[
