人工智能
类型
可以朗读
语音朗读
229千字
字数
2021-06-01
发行日期
展开全部
主编推荐语
深度学习理论实战教程:从基础到应用,涵盖CNN、LSTM等,使用Tensorflow 2/Keras框架。
内容简介
本书是一本介绍深度学习理论和实战应用的教程,先从数学基础和机器学习基础出发,按照神经网络的技术发展框架由易到难逐步讲解深度学习的理论,然后再通过实践部分,详细解释深度学习的应用案例,让读者既能了解深度学习理论,又能学会使用深度学习框架,实现自己的深度学习模型。主要内容包括深度学习的发展历史、单层感知器、线性神经网络、BP神经网络、深度学习算法卷积神经网络CNN和长短时记忆网络LSTM,以及深度学习算法在图像、自然语言处理和音频信号三个方面的实际应用。其中,案例实战部分使用的深度学习框架为Tensorflow 2/Keras。
目录
- 封面
- 版权信息
- 内容简介
- 前言
- 第1章 深度学习背景介绍
- 1.1 人工智能
- 1.2 机器学习
- 1.2.1 训练数据、验证数据和测试数据
- 1.2.2 学习方式
- 1.2.3 机器学习常用算法
- 1.3 人工智能、机器学习、神经网络及深度学习之间的关系
- 1.4 深度学习的应用
- 1.5 神经网络和深度学习的发展史
- 1.5.1 神经网络的诞生:20世纪40年代到20世纪60年代
- 1.5.2 神经网络的复兴:20世纪80年代到20世纪90年代
- 1.5.3 深度学习:2006年至今
- 1.6 深度学习领域中的重要人物
- 1.7 新一轮人工智能爆发的三要素
- 1.8 参考文献
- 第2章 搭建Python编程环境
- 2.1 Python介绍
- 2.2 Anaconda安装
- 2.3 Jupyter Notebook的简单使用
- 2.3.1 启动Jupyter Notebook
- 2.3.2 修改Jupyter Notebook默认启动路径
- 2.3.3 Jupyter Notebook浏览器无法打开
- 2.3.4 Jupyter Notebook基本操作
- 第3章 单层感知器与线性神经网络
- 3.1 生物神经网络
- 3.2 单层感知器
- 3.2.1 单层感知器介绍
- 3.2.2 单层感知器计算举例
- 3.2.3 单层感知器的另一种表达形式
- 3.3 单层感知器的学习规则
- 3.3.1 单层感知器的学习规则介绍
- 3.3.2 单层感知器的学习规则计算举例
- 3.4 学习率
- 3.5 模型的收敛条件
- 3.6 模型的超参数和参数的区别
- 3.7 单层感知器分类案例
- 3.8 线性神经网络
- 3.8.1 线性神经网络介绍
- 3.8.2 线性神经网络分类案例
- 3.9 线性神经网络处理异或问题
- 第4章 BP神经网络
- 4.1 BP神经网络介绍及发展背景
- 4.2 代价函数
- 4.3 梯度下降法
- 4.3.1 梯度下降法介绍
- 4.3.2 梯度下降法二维例子
- 4.3.3 梯度下降法三维例子
- 4.4 Delta学习规则
- 4.5 常用激活函数讲解
- 4.5.1 sigmoid函数
- 4.5.2 tanh函数
- 4.5.3 softsign函数
- 4.5.4 ReLU函数
- 4.6 BP神经网络模型和公式推导
- 4.6.1 BP网络模型[3]
- 4.6.2 BP算法推导
- 4.6.3 BP算法推导的补充说明
- 4.7 BP算法推导结论总结
- 4.8 梯度消失与梯度爆炸
- 4.8.1 梯度消失
- 4.8.2 梯度爆炸
- 4.8.3 使用ReLU函数解决梯度消失和梯度爆炸的问题
- 4.9 使用BP神经网络解决异或问题
- 4.10 分类模型评估方法
- 4.10.1 准确率/精确率/召回率/F1值
- 4.10.2 混淆矩阵(Confusion Matrix)
- 4.11 独热编码
- 4.12 BP神经网络完成手写数字识别
- 4.13 Sklearn手写数字识别
- 4.14 参考文献
- 第5章 深度学习框架Tensorflow基础使用
- 5.1 Tensorflow介绍
- 5.1.1 Tensorflow简介
- 5.1.2 静态图和动态图机制Eager Execution
- 5.1.3 tf.keras
- 5.2 Tensorflow-cpu安装
- 5.2.1 Tensorflow-cpu在线安装
- 5.2.2 安装过程中可能遇到的问题
- 5.2.3 Tensorflow-cpu卸载
- 5.2.4 Tensorflow-cpu更新
- 5.2.5 Tensorflow-cpu指定版本的安装
- 5.3 Tensorflow-gpu安装
- 5.3.1 Tensorflow-gpu了解最新版本情况
- 5.3.2 Tensorflow-gpu安装CUDA
- 5.3.3 Tensorflow-gpu安装cuDNN库
- 5.3.4 Tensorflow-gpu在线安装
- 5.3.5 Tensorflow-gpu卸载
- 5.3.6 Tensorflow-gpu更新
- 5.4 Tensorflow基本概念
- 5.5 Tensorflow基础使用
- 5.6 手写数字图片分类任务
- 5.6.1 MNIST数据集介绍
- 5.6.2 softmax函数介绍
- 5.6.3 简单MNIST数据集分类模型——没有高级封装
- 5.6.4 简单MNIST数据集分类模型——keras高级封装
- 第6章 网络优化方法
- 6.1 交叉熵代价函数
- 6.1.1 均方差代价函数的缺点
- 6.1.2 引入交叉熵代价函数
- 6.1.3 交叉熵代价函数推导过程
- 6.1.4 softmax与对数似然代价函数
- 6.1.5 交叉熵程序
- 6.2 过拟合
- 6.2.1 什么是过拟合
- 6.2.2 抵抗过拟合的方法
- 6.3 数据增强
- 6.4 提前停止训练
- 6.5 Dropout
- 6.5.1 Dropout介绍
- 6.5.2 Dropout程序
- 6.6 正则化
- 6.6.1 正则化介绍
- 6.6.2 正则化程序
- 6.7 标签平滑
- 6.7.1 标签平滑介绍
- 6.7.2 标签平滑程序
- 6.8 优化器
- 6.8.1 梯度下降法
- 6.8.2 Momentum
- 6.8.3 NAG
- 6.8.4 Adagrad
- 6.8.5 Adadelta
- 6.8.6 RMRprop
- 6.8.7 Adam
- 6.8.8 优化器程序
- 6.9 参考文献
- 第7章 Tensorflow模型的保存和载入
- 7.1 Keras模型保存和载入
- 7.1.1 Keras模型保存
- 7.1.2 Keras模型载入
- 7.2 SavedModel模型保存和载入
- 7.2.1 SavedModel模型保存
- 7.2.2 SavedModel模型载入
- 7.3 单独保存模型的结构
- 7.3.1 保存模型的结构
- 7.3.2 载入模型结构
- 7.4 单独保存模型参数
- 7.4.1 保存模型参数
- 7.4.2 载入模型参数
- 7.5 ModelCheckpoint自动保存模型
- 7.6 Checkpoint模型保存和载入
- 7.6.1 Checkpoint模型保存
- 7.6.2 Checkpoint模型载入
- 第8章 卷积神经网络(CNN)
- 8.1 计算机视觉介绍
- 8.1.1 计算机视觉应用介绍
- 8.1.2 计算机视觉技术介绍
- 8.2 卷积神经网简介
- 8.2.1 BP神经网络存在的问题
- 8.2.2 局部感受野和权值共享
- 8.3 卷积的具体计算
- 8.4 卷积的步长
- 8.5 不同的卷积核
- 8.6 池化
- 8.7 Padding
- 8.8 常见的卷积计算总结
- 8.8.1 对1张图像进行卷积生成1张特征图
- 8.8.2 对1张图像进行卷积生成多张特征图
- 8.8.3 对多张图像进行卷积生成1张特征图
- 8.8.4 对多张图像进行卷积生成多张特征图
- 8.9 经典的卷积神经网络
- 8.10 卷积神经网络应用于MNIST数据集分类
- 8.11 识别自己写的数字图片
- 8.12 CIFAR-10数据集分类
- 8.13 参考文献
- 第9章 序列模型
- 9.1 序列模型应用
- 9.2 循环神经网络(RNN)
- 9.2.1 RNN介绍
- 9.2.2 Elman network和Jordan network
- 9.3 RNN的不同架构
- 9.3.1 一对一架构
- 9.3.2 多对一架构
- 9.3.3 多对多架构
- 9.3.4 一对多架构
- 9.3.5 Seq2Seq架构
- 9.4 传统RNN的缺点
- 9.5 长短时记忆网络(LSTM)
- 9.6 Peephole LSTM和FC-LSTM
- 9.6.1 Peephole LSTM介绍
- 9.6.2 FC-LSTM介绍
- 9.7 其他RNN模型
- 9.7.1 门控循环单元(GRU)
- 9.7.2 双向RNN
- 9.7.3 堆叠的双向RNN
- 9.8 LSTM网络应用于MNIST数据集分类
- 9.9 参考文献
- 第10章 经典图像识别模型介绍(上)
- 10.1 图像数据集
- 10.1.1 图像数据集介绍
- 10.1.2 ImageNet的深远影响
- 10.1.3 ImageNet Challenge历年优秀作品
- 10.2 AlexNet
- 10.3 VGGNet
- 10.4 GoogleNet
- 10.4.1 1×1卷积介绍
- 10.4.2 Inception结构
- 10.4.3 GoogleNet网络结构
- 10.5 Batch Normalization
- 10.5.1 Batch Normalization提出背景
- 10.5.2 数据标准化(Normalization)
- 10.5.3 Batch Normalization模型训练阶段
- 10.5.4 Batch Normalization模型预测阶段
- 10.5.5 Batch Normalization作用分析
- 10.6 ResNet
- 10.6.1 ResNet背景介绍
- 10.6.2 残差块介绍
- 10.6.3 ResNet网络结构
- 10.6.4 ResNet-V2
- 10.7 参考文献
- 第11章 经典图像识别模型介绍(下)
- 11.1 Inception模型系列
- 11.1.1 Inception-v2/v3优化策略
- 11.1.2 Inception-v2/v3模型结构
- 11.1.3 Inception-v4和Inception-ResNet介绍
- 11.2 ResNeXt
- 11.2.1 分组卷积介绍
- 11.2.2 ResNeXt中的分组卷积
- 11.2.3 ResNeXt的网络结构
- 11.3 SENet
- 11.3.1 SENet介绍
- 11.3.2 SENet结果分析
- 11.4 参考文献
- 第12章 图像识别项目实战
- 12.1 图像数据准备
- 12.1.1 数据集介绍
- 12.1.2 数据集准备
- 12.1.3 切分数据集程序
- 12.2 AlexNet图像识别
- 12.3 VGGNet图像识别
- 12.4 函数式模型
- 12.4.1 函数式模型介绍
- 12.4.2 使用函数式模型进行MNIST图像识别
- 12.5 模型可视化
- 12.5.1 使用plot_model进行模型可视化
- 12.5.2 plot_model升级版
- 12.6 GoogleNet图像识别
- 12.7 Batch Normalization使用
- 12.8 ResNet图像识别
- 12.9 ResNeXt图像识别
- 12.10 SENet图像识别
- 12.11 使用预训练模型进行迁移学习
- 12.11.1 使用训练好的模型进行图像识别
- 12.11.2 使用训练好的模型进行迁移学习
- 12.11.3 载入训练好的模型进行预测
- 第13章 验证码识别项目实战
- 13.1 多任务学习介绍
- 13.2 验证码数据集生成
- 13.3 tf.data介绍
- 13.3.1 tf.data概述
- 13.3.2 使用tf.data完成多任务学习:验证码识别
- 13.4 使用自定义数据生成器完成验证码识别
- 13.4.1 使用自定义数据生成器完成模型训练
- 13.4.2 使用自定义数据生成器完成模型预测
- 13.5 挑战变长验证码识别
- 13.5.1 挑战变长验证码识别模型训练
- 13.5.2 挑战变长验证码识别模型预测
- 13.6 CTC算法
- 13.6.1 CTC算法介绍
- 13.6.2 贪心算法(Greedy Search)和集束搜索算法(Beam Search)
- 13.6.3 CTC存在的问题
- 13.6.4 CTC算法:验证码识别
- 第14章 自然语言处理(NLP)发展历程(上)
- 14.1 NLP应用介绍
- 14.2 从传统语言模型到神经语言模型
- 14.2.1 规则模型
- 14.2.2 统计语言模型
- 14.2.3 词向量
- 14.2.4 神经语言模型
- 14.3 word2vec
- 14.3.1 word2vec介绍
- 14.3.2 word2vec模型训练
- 14.3.3 word2vec训练技巧和可视化效果
- 14.4 CNN在NLP领域中的应用
- 14.5 RNN在NLP领域中的应用
- 14.6 Seq2Seq模型在NLP领域中的应用
- 14.7 Attention机制
- 14.7.1 Attention介绍
- 14.7.2 Bahdanau Attention介绍
- 14.7.3 Luong Attention介绍
- 14.7.4 谷歌机器翻译系统介绍
- 14.7.5 Attention机制在视觉和语音领域的应用
- 14.8 参考文献
- 第15章 自然语言处理(NLP)发展历程(下)
- 15.1 NLP新的开始:Transformer模型
- 15.1.1 Transformer模型结构和输入数据介绍
- 15.1.2 Self-Attention介绍
- 15.1.3 Multi-Head Attention介绍
- 15.1.4 Layer Normalization介绍
- 15.1.5 Decoder结构介绍
- 15.1.6 Decoder中的Multi-Head Attention和模型训练
- 15.2 BERT模型
- 15.2.1 BERT模型介绍
- 15.2.2 BERT模型训练
- 15.2.3 BERT模型应用
- 15.3 参考文献
- 第16章 NLP任务项目实战
- 16.1 一维卷积英语电影评论情感分类项目
- 16.1.1 项目数据和模型说明
- 16.1.2 一维卷积英语电影评论情感分类程序
- 16.2 二维卷积中文微博情感分类项目
- 16.3 双向LSTM中文微博情感分类项目
- 16.4 堆叠双向LSTM中文分词标注项目
- 16.4.1 中文分词标注模型训练
- 16.4.2 维特比算法
- 16.4.3 中文分词标注模型预测
- 16.5 最新的一些激活函数介绍
- 16.5.1 Leaky ReLU
- 16.5.2 ELU
- 16.5.3 SELU
- 16.5.4 GELU
- 16.5.5 Swish
- 16.6 BERT模型的简单使用
- 16.6.1 安装tf2-bert模块并准备预训练模型
- 16.6.2 使用BERT模型进行文本特征提取
- 16.6.3 使用BERT模型进行完形填空
- 16.7 BERT电商用户多情绪判断项目
- 16.7.1 项目背景介绍
- 16.7.2 模型训练
- 16.7.3 模型预测
- 16.8 参考文献
- 第17章 音频信号处理
- 17.1 深度学习在声音领域的应用
- 17.2 MFCC和Mel Filter Banks
- 17.2.1 音频数据采集
- 17.2.2 分帧加窗
- 17.2.3 傅里叶变换
- 17.2.4 梅尔滤波器组
- 17.2.5 梅尔频率倒谱系数(MFCC)
- 17.3 语音分类项目
- 17.3.1 librosa介绍
- 17.3.2 音频分类项目——模型训练
- 17.3.3 音频分类项目——模型预测
- 第18章 图像风格转换
- 18.1 图像风格转换实现原理
- 18.1.1 代价函数的定义
- 18.1.2 格拉姆矩阵介绍
- 18.2 图像风格转换项目实战
- 18.3 遮挡图像风格转换项目实战
- 18.4 参考文献
- 第19章 生成对抗网络
- 19.1 生成对抗网络的应用
- 19.2 DCGAN介绍
- 19.3 手写数字图像生成
- 19.4 参考文献
- 第20章 模型部署
- 20.1 Tensorflow Serving环境部署
- 20.2 运行客户端和服务器程序
- 20.2.1 准备SavedModel模型
- 20.2.2 启动Tensorflow Serving服务器程序
- 20.2.3 Tensorflow Serving客户端gRPC程序
- 20.2.4 Tensorflow Serving客户端REST API程序
- 专业术语汇总
- 结束语
- 封底
展开全部
出版方
电子工业出版社
电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。