<p>Python、TensorFlow、神经网络和深度学习因人工智能的流行而成为当下IT领域的热门关键词。本书首先介绍了Python及其常用库Numpy、Matplotlib和Scipy的基本使用方法;其次介绍了TensorFlow的基本知识及使用方法;然后介绍了神经网络的基础知识以及神经网络基本应用――感知机、线性回归与逻辑回归的理论与实现;最后介绍了两种热门的深度神经网络――卷积神经网络和循环神经网络的理论与实现。本书内容由浅入深,循序渐进,实践性强,包含丰富的仿真实例。</p>
实战深度学习算法:零起点通关神经网络模型(基于Python和NumPy实现)
✍ Scribed by 徐彬 著
- Publisher
- 电子工业出版社
- Year
- 2019
- Tongue
- Chinese
- Leaves
- 224
- Series
- 博文视点AI系列
- Category
- Library
No coin nor oath required. For personal study only.
✦ Synopsis
深度学习是机器学习的重要分支。《实战深度学习算法:零起点通关神经网络模型(基于Python和NumPy实现)》系统地介绍了如何用Python和NumPy一步步地实现深度学习的基础模型,无须借助TensorFlow、PyTorch等深度学习框架,帮助读者更好地理解底层算法的脉络,进而进行模型的定制、优化和改进。全书由简到难地讲述感知机模型、多分类神经网络、深层全连接网络、卷积神经网络、批量规范化方法、循环神经网络、长短时记忆网络、双向结构的BiGRU模型等神经网络模型的必要算法推导、实现及其实例,读者可直接动手调试和观察整个训练过程,进一步理解模型及其算法原理。
《实战深度学习算法:零起点通关神经网络模型(基于Python和NumPy实现)》适合没有深度学习基础,希望进入此领域的在校学生、研究者阅读,也适合有一定基础但不满足于“调包”和“调参”的工程师学习,还可供想要深入了解底层算法的研究人员参考阅读。
✦ Table of Contents
扉页
版权页
前言
目录
第1章 基础分类模型
1.1 深度学习简介
1.2 目标问题:空间中的二分类
1.3 感知机模型
1.3.1 感知机函数
1.3.2 损失函数
1.3.3 感知机学习算法
1.4 算法实现
1.4.1 环境搭建
1.4.2 数据准备
1.4.3 实现感知机算法
1.5 小结
参考文献
第2章 第一个神经网络
2.1 目标问题:MNIST手写数字识别
2.1.1 数据集
2.1.2 图像数据和图向量
2.2 挑战:从二分类到多分类
2.3 Softmax方法
2.4 正确分类的独热编码
2.5 损失函数——交叉熵
2.6 信息熵和交叉熵
2.6.1 信息熵
2.6.2 交叉熵
2.7 第一个神经网络的学习算法
2.8 反向传播
2.9 抽象泄漏
2.10 算法实现
2.10.1 数据准备
2.10.2 实现第一个神经网络
2.10.3 实现MINIST手写数字识别
2.11 小结
参考文献
第3章 多层全连接神经网络
3.1 第一个挑战:异或问题
3.2 更深的神经网络——隐藏层
3.3 第二个挑战:参数拟合的两面性
3.4 过拟合与正则化
3.4.1 欠拟合与过拟合
3.4.2 正则化
3.4.3 正则化的效果
3.5 第三个挑战:非线性可分问题
3.6 激活函数
3.7 算法和结构
3.8 算法实现
3.8.1 数据准备
3.8.2 实现多层全连接神经网络
3.8.3 在数据集上验证模型
3.9 小结
参考文献
第4章 卷积神经网络(CNN)
4.1 挑战:参数量和训练成本
4.2 卷积神经网络的结构
4.2.1 卷积层
4.2.2 池化层
4.2.3 全连接层和Softmax处理
4.3 卷积神经网络学习算法
4.3.1 全连接层
4.3.2 池化层反向传播
4.3.3 卷积层反向传播
4.4 算法实现
4.4.1 数据准备
4.4.2 卷积神经网络模型的原始实现
4.5 小结
参考文献
第5章 卷积神经网络——算法提速和优化
5.1 第一个挑战:卷积神经网络的运算效率
5.2 提速改进
5.2.1 边缘填充提速
5.2.2 池化层提速
5.2.3 卷积层处理
5.3 反向传播算法实现
5.3.1 池化层反向传播
5.3.2 卷积层反向传播
5.4 第二个挑战:梯度下降的幅度和方向
5.5 递减学习率参数
5.6 学习策略的优化方法
5.6.1 动量方法
5.6.2 NAG方法
5.6.3 Adagrad方法
5.6.4 RMSprop方法
5.6.5 AdaDelta方法
5.6.6 Adam方法
5.6.7 各种优化方法的比较
5.7 总体模型结构
5.8 使用CNN实现MNIST手写数字识别验证
5.9 小结
参考文献
第6章 批量规范化(Batch Normalization)
6.1 挑战:深度神经网络不易训练
6.2 批量规范化方法的初衷
6.2.1 数据集偏移
6.2.2 输入分布偏移
6.2.3 内部偏移
6.3 批量规范化的算法
6.3.1 训练时的前向计算
6.3.2 规范化与标准化变量
6.3.3 推理预测时的前向计算
6.3.4 全连接层和卷积层的批量规范化处理
6.4 批量规范化的效果
6.4.1 梯度传递问题
6.4.2 饱和非线性激活问题
6.4.3 正则化效果
6.5 批量规范化为何有效
6.6 批量规范化的反向传播算法
6.7 算法实现
6.7.1 训练时的前向传播
6.7.2 反向传播
6.7.3 推理预测
6.8 调整学习率和总体结构
6.8.1 模型结构
6.8.2 卷积层批量规范化的实现
6.8.3 引入批量规范化后的递减学习率
6.9 在MNIST数据集上验证结果
6.10 小结
参考文献
第7章 循环神经网络(Vanilla RNN)
7.1 第一个挑战:序列特征的捕捉
7.2 循环神经网络的结构
7.2.1 单层RNN
7.2.2 双向RNN
7.2.3 多层RNN
7.3 RNN前向传播算法
7.4 RNN反向传播算法
7.4.1 误差的反向传播
7.4.2 激活函数的导函数和参数梯度
7.5 第二个挑战:循环神经网络的梯度传递问题
7.6 梯度裁剪
7.7 算法实现
7.8 目标问题:序列数据分析
7.8.1 数据准备
7.8.2 模型搭建
7.8.3 验证结果
7.9 小结
参考文献
第8章 长短时记忆网络(LSTM)——指数分析
8.1 目标问题:投资市场的指数分析
8.2 挑战:梯度弥散问题
8.3 长短时记忆网络的结构
8.4 LSTM前向传播算法
8.5 LSTM反向传播算法
8.5.1 误差反向传播
8.5.2 激活函数的导函数和参数梯度
8.6 算法实现
8.6.1 实现LSTM单时间步的前向计算
8.6.2 实现LSTM多层多时间步的前向计算
8.6.3 实现LSTM单时间步的反向传播
8.6.4 实现LSTM多层多时间步的反向传播
8.7 实现沪深300指数分析
8.7.1 数据准备
8.7.2 模型构建
8.7.3 分析结果
8.8 小结
参考文献
第9章 双向门控循环单元(BiGRU)——情感分析
9.1 目标问题:情感分析
9.2 第一个挑战:模型的运算效率
9.3 GRU模型的结构
9.4 GRU前向传播算法
9.5 GRU前向传播表达式的其他写法
9.6 GRU反向传播算法
9.7 GRU算法实现
9.7.1 单时间步的前向计算
9.7.2 实现单时间步的反向传播
9.8 用GRU模型进行情感分析
9.8.1 数据预处理
9.8.2 构建情感分析模型
9.9 首次验证
9.10 第二个挑战:序列模型的过拟合
9.11 Dropout正则化
9.11.1 Dropout前向传播算法
9.11.2 Dropout反向传播算法
9.11.3 Dropout Rate的选择
9.12 再次验证:GRU+Dropout
9.13 第三个挑战:捕捉逆序信息
9.14 双向门控循环单元(BiGRU)
9.15 第三次验证:BiGRU+Dropout
9.16 小结
参考文献
附录 A 向量和矩阵运算
附录 B 导数和微分
附录 C 向量和矩阵导数
附录 D 概率论和数理统计
索引
📜 SIMILAR VOLUMES
<p>《深度学习算法实践(基于Theano和TensorFlow)》以深度学习算法入门为主要内容,通过系统介绍Python、NumPy、SciPy等科学计算库,深度学习主流算法,深度学习前沿研究,深度学习服务云平台构建四大主线,向读者系统地介绍了深度学习的主要内容和研究进展。《深度学习算法实践(基于Theano和TensorFlow)》介绍了Python、NumPy、SciPy的使用技巧,面向谷歌推出的开源深度学习框架TensorFlow,向读者展示了利用TensorFlow和Theano框架实现线性回归、逻辑回归、多层感知器、卷积神经网络、递归神经网络、长短时记忆网络、去噪自动编码机、堆叠自
<p>《神经网络与深度学习应用实战》结合实际应用介绍神经网络和深度学习等技术领域相关信息。从结构上重点介绍了前馈型神经网络、反馈型神经网络,以及自组织竞争型神经网络,并针对当下深度学习中比较重要的网络进行了详细介绍,包括卷积神经网络、循环(递归)神经网络、深度信念网络、生成对抗网络,以及深度强化学习。《神经网络与深度学习应用实战》不仅能让读者对当前神经网络和深度学习技术有体系的认知,更能让读者在人工智能领域进行一些深入思考。</p>
<p>《Keras快速上手:基于Python的深度学习实战》系统地讲解了深度学习的基本知识、建模过程和应用,并以深度学习在推荐系统、图像识别、自然语言处理、文字生成和时间序列中的具体应用为案例,详细介绍了从工具准备、数据获取和处理到针对问题进行建模的整个过程和实践经验,是一本非常好的深度学习入门书。</p> <p>不同于许多讲解深度学习的书籍,《Keras快速上手:基于Python的深度学习实战》以实用为导向,选择了 Keras 作为编程框架,强调简单、快速地设计模型,而不去纠缠底层代码,使得内容相当易于理解,读者可以在 CNTK、 TensorFlow 和 Theano 的后台之间随意切换
<p>《深度学习:基于Keras的Python实践》本书系统讲解了深度学习的基本知识,以及使用深度学习解决实际问题,详细介绍了如何构建及优化模型,并针对不同的问题给出不同的解决方案,通过不同的例子展示了在具体项目中的应用和实践经验,是一本非常好的深度学习的入门和实践书籍。</p> <p>《深度学习:基于Keras的Python实践》以实践为导向,使用Keras 作为编程框架,强调简单、快速地上手建立模型,解决实际项目问题。读者可以通过学习本书,迅速上手实践深度学习,并利用深度学习解决实际问题。</p> <p>《深度学习:基于Keras的Python实践》非常适合于项目经理,有意从事机器学习