内容推荐 本书按照从理论到实践,从实践到创造的顺序讲解深度学习领域的知识与技术,代码翔实,公式简单易懂。 本书第1章介绍深度学习的概念和目前的形势,第2章介绍Python编程语言基础,第3章使用Python语言计算极限、导数、级数等数学问题,第4章讲解深度学习的基本原理与PyTorch框架的基本使用,第5章和第6章详细讲述经典网络结构CNN和RCNN,第7~9章介绍自研深度学习框架,并详细讨论之前忽略的深度学习底层实现上的算法和细节,第10章介绍目前机器学习的前沿无监督学习,第11章主要讲解深度学习模型以Web应用形式部署的技术。 本书适合有高等数学基础、希望了解深度学习领域知识和技术的初学者阅读,也可作为相关培训机构的参考用书。 作者简介 张伟振,主要从事系统架构设计、深度学习在计算机视觉任务中的应用方面的研究,在计算机图形学、大型软件架构设计、后台开发、桌面应用、游戏、Web应用等领域亦有较丰富经验。 目录 第1章 人工智能的新篇章 1.1 引言 1.2 过去人工智能的困境 1.3 神经网络 1.4 我们都是炼丹师 1.4.1 机器的力量 1.4.2 遍地开花的深度学习 1.5 深度监督学习三部曲 1.6 深度学习框架 1.6.1 常见的深度学习框架 1.6.2 PyTorch的优势 第2章 Python基础 2.1 Python简介 2.1.1 Python语言 2.1.2 编译器和解释器 2.1.3 Python的哲学 2.1.4 Python的优缺点 2.2 Python Hello World 2.2.1 安装Python解释器 2.2.2 Hello World程序 2.3 Python基本语法 2.3.1 变量 2.3.2 函数 2.3.3 基本数据类型 2.3.4 条件控制 2.3.5 列表 2.3.6 错误和异常 2.4 标准库 2.4.1 math 2.4.2 文件读写和os库 2.5 Python面向对象 2.5.1 花名册 2.5.2 使用class关键字声明类 2.5.3 限定函数参数的类型 2.5.4 静态方法 2.6 包和模块 2.6.1 安装第三方库 2.6.2 创建包和模块 2.6.3 使用第三方库 2.6.4 打包Python源代码 2.7 开发环境 2.7.1 Jupyter Notebook 2.7.2 安装PyCharm 第3章 实用数学 3.1 线性代数 3.1.1 向量 3.1.2 矩阵 3.1.3 使用矩阵的理由 3.2 高等数学 3.2.1 函数 3.2.2 函数的极限 3.2.3 导数 3.2.4 导函数 3.2.5 泰勒公式 3.2.6 偏导数 3.2.7 梯度 第4章 深度学习原理和PyTorch基础 4.1 深度学习三部曲 4.1.1 准备数据 4.1.2 定义模型、损失函数和优化器 4.1.3 训练模型 4.2 PyTorch基础 4.2.1 安装PyTorch 4.2.2 导入PyTorch库 4.2.3 使用PyTorch进行矩阵运算 4.2.4 使用PyTorch定义神经网络模型 4.3 神经网络的调优 4.3.1 数据与模型的规模匹配 4.3.2 特征缩放 4.3.3 数据集 第5章 卷积神经网络 5.1 卷积 5.1.1 矩阵的内积 5.1.2 卷积的代码实现 5.2 卷积神经网络介绍 5.2.1 卷积层 5.2.2 池化层 5.2.3 在PyTorch中构建卷积神经网络 5.2.4 迁移学习 5.2.5 梯度消失 5.3 目标检测 5.3.1 YOLO 5.3.2 FasterRCNN 5.3.3 在PyTorch中使用FasterRCNN 5.4 实用工具 5.4.1 图像处理 5.4.2 保存与加载模型 5.4.3 加载数据 5.4.4 GPU加速 5.4.5 爬虫 5.4.6 GUI编程 第6章 序列模型 6.1 循环神经网络 6.1.1 原理 6.1.2 RNN代码实现 6.1.3 长短期记忆 6.1.4 在PyTorch中使用循环神经网络 6.2 自然语言处理 6.2.1 WordEmbedding 6.2.2 Transformer 6.2.3 在PyTorch中使用Transformer 第7章 算法基础 7.1 递归 7.2 动态规划 7.2.1 定义 7.2.2 子问题 7.3 栈和队列 7.3.1 使用递归进行目录遍历 7.3.2 调用栈 7.3.3 使用栈进行目录遍历 7.3.4 队列 7.3.5 使用队列进行目录遍历 7.4 树 7.5 图 7.5.1 有向无环图和计算图 7.5.2 邻接表实现图 7.5.3 实现计算图 第8章 C++基础 8.1 C++ Hello World 8.1.1 C++的优缺点 8.1.2 安装C++编译器和开发环境 8.1.3 Hello World程序 8.2 C++ 语法基础 8.2.1 数据类型和变量 8.2.2 常量 8.2.3 条件判断 8.2.4 运算符 8.2.5 循环 8.3 函数 8.3.1 定义函数 8.3.2 标准库 8.3.3 指针作函数参数 8.3.4 默认参数 8.4 数组 8.4.1 静态数组 8.4.2 动态数组 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.6.3 智能指针 8.6.4 引用 8.6.5 移动语义和右值引用 8.7 C++进阶知识 8.7.1 断言 8.7.2 命名空间 8.7.3 头文件 8.7.4 C++的编译过程 8.7.5 使用第三方库 8.7.6 使用MSVC编译器 第9章 自研深度学习框架 9.1 数据结构 9.1.1 张量 9.1.2 运算 9.1.3 张量求导 9.1.4 优化 9.2 构建计算图 9.2.1 数据结构 9.2.2 张量 9.2.3 运算 9.2.4 测试 9.2.5 优化 9.3 并行计算 9.3.1 GPU的结构 9.3.2 CUDA简介 9.3.3 安装CUDA 9.3.4 CUDA基础知识 9.3.5 CUDA编程 9.3.6 cuDNN 第10章 无监督学习 10.1 生成对抗网络 10.2 强化学习 10.2.1 Policy Base:尝试并增强最终结果正确的 |