深度学习TensorFlow入门原理与进阶实战+21个项目玩转深度学习-TensorFlow实践详解

深度学习TensorFlow入门原理与进阶实战+21个项目玩转深度学习-TensorFlow实践详解 pdf epub mobi txt 电子书 下载 2025

图书标签:
  • 深度学习
  • TensorFlow
  • 机器学习
  • Python
  • 项目实战
  • 神经网络
  • 图像识别
  • 自然语言处理
  • 计算机视觉
  • 模型训练
想要找书就要到 静思书屋
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
店铺: 蓝墨水图书专营店
出版社: 机械工业出版社
ISBN:9787111590057
商品编码:27929077800

具体描述




书名:【正版】深度学习之TensorFlow:入门、原理与进阶实战|7436497
图书定价:99元
图书作者:李金洪
出版社:机械工业出版社
出版日期:2018/3/1 0:00:00
ISBN号:9787111590057
开本:16开
页数:0
版次:1-1

目录
配套学习资源
前言 
第1篇 深度学习与TensorFlow基础
第1章 快速了解人工智能与TensorFlow 2
1.1 什么是深度学习 2
1.2 TensorFlow是做什么的 3
1.3 TensorFlow的特点 4
1.4 其他深度学习框架特点及介绍 5
1.5 如何通过本书学好深度学习 6
1.5.1 深度学习怎么学 6
1.5.2 如何学习本书 7
第2章 搭建开发环境 8
2.1 下载及安装Anaconda开发工具 8
2.2 在Windows平台下载及安装TensorFlow 11
2.3 GPU版本的安装方法 12
2.3.1 安装CUDA软件包 12
2.3.2 安装cuDNN库 13
2.3.3 测试显卡 14
2.4 熟悉Anaconda 3开发工具 15
2.4.1 快速了解Spyder 16
2.4.2 快速了解Jupyter Notebook 18
第3章 TensorFlow基本开发步骤——以逻辑回归拟合二维数据为例 19
3.1 实例1:从一组看似混乱的数据中找出y≈2x的规律 19
3.1.1 准备数据 20
3.1.2 搭建模型 21
3.1.3 迭代训练模型 23
3.1.4 使用模型 25
3.2 模型是如何训练出来的 25
3.2.1 模型里的内容及意义 25
3.2.2 模型内部的数据流向 26
3.3 了解TensorFlow开发的基本步骤 27
3.3.1 定义输入节点的方法 27
3.3.2 实例2:通过字典类型定义输入节点 28
3.3.3 实例3:直接定义输入节点 28
3.3.4 定义“学习参数”的变量 29
3.3.5 实例4:通过字典类型定义“学习参数” 29
3.3.6 定义“运算” 29
3.3.7 优化函数,优化目标 30
3.3.8 初始化所有变量 30
3.3.9 迭代更新参数到最优解 31
3.3.10 测试模型 31
3.3.11 使用模型 31
第4章 TensorFlow编程基础 32
4.1 编程模型 32
4.1.1 了解模型的运行机制 33
4.1.2 实例5:编写hello world程序演示session的使用 34
4.1.3 实例6:演示with session的使用 35
4.1.4 实例7:演示注入机制 35
4.1.5 建立session的其他方法 36
4.1.6 实例8:使用注入机制获取节点 36
4.1.7 指定GPU运算 37
4.1.8 设置GPU使用资源 37
4.1.9 保存和载入模型的方法介绍 38
4.1.10 实例9:保存/载入线性回归模型 38
4.1.11 实例10:分析模型内容,演示模型的其他保存方法 40
4.1.12 检查点(Checkpoint) 41
4.1.13 实例11:为模型添加保存检查点 41
4.1.14 实例12:更简便地保存检查点 44
4.1.15 模型操作常用函数总结 45
4.1.16 TensorBoard可视化介绍 45
4.1.17 实例13:线性回归的TensorBoard可视化 46
4.2 TensorFlow基础类型定义及操作函数介绍 48
4.2.1 张量及操作 49
4.2.2 算术运算函数 55
4.2.3 矩阵相关的运算 56
4.2.4 复数操作函数 58
4.2.5 规约计算 59
4.2.6 分割 60
4.2.7 序列比较与索引提取 61
4.2.8 错误类 62
4.3 共享变量 62
4.3.1 共享变量用途 62
4.3.2 使用get-variable获取变量 63
4.3.3 实例14:演示get_variable和Variable的区别 63
4.3.4 实例15:在特定的作用域下获取变量 65
4.3.5 实例16:共享变量功能的实现 66
4.3.6 实例17:初始化共享变量的作用域 67
4.3.7 实例18:演示作用域与操作符的受限范围 68
4.4 实例19:图的基本操作 70
4.4.1 建立图 70
4.4.2 获取张量 71
4.4.3 获取节点操作 72
4.4.4 获取元素列表 73
4.4.5 获取对象 73
4.4.6 练习题 74
4.5 配置分布式TensorFlow 74
4.5.1 分布式TensorFlow的角色及原理 74
4.5.2 分布部署TensorFlow的具体方法 75
4.5.3 实例20:使用TensorFlow实现分布式部署训练 75
4.6 动态图(Eager) 81
4.7 数据集(tf.data) 82
第5章 识别图中模糊的手写数字(实例21) 83
5.1 导入图片数据集 84
5.1.1 MNIST数据集介绍 84
5.1.2 下载并安装MNIST数据集 85
5.2 分析图片的特点,定义变量 87
5.3 构建模型 87
5.3.1 定义学习参数 87
5.3.2 定义输出节点 88
5.3.3 定义反向传播的结构 88
5.4 训练模型并输出中间状态参数 89
5.5 测试模型 90
5.6 保存模型 91
5.7 读取模型 92
第2篇 深度学习基础——神经网络
第6章 单个神经元 96
6.1 神经元的拟合原理 96
6.1.1 正向传播 98
6.1.2 反向传播 98
6.2 激活函数——加入非线性因素,解决线性模型缺陷 99
6.2.1 Sigmoid函数 99
6.2.2 Tanh函数 100
6.2.3 ReLU函数 101
6.2.4 Swish函数 103
6.2.5 激活函数总结 103
6.3 softmax算法——处理分类问题 103
6.3.1 什么是softmax 104
6.3.2 softmax原理 104
6.3.3 常用的分类函数 105
6.4 损失函数——用真实值与预测值的距离来指导模型的收敛方向 105
6.4.1 损失函数介绍 105
6.4.2 TensorFlow中常见的loss函数 106
6.5 softmax算法与损失函数的综合应用 108
6.5.1 实例22:交叉熵实验 108
6.5.2 实例23:one_hot实验 109
6.5.3 实例24:sparse交叉熵的使用 110
6.5.4 实例25:计算loss值 110
6.5.5 练习题 111
6.6 梯度下降——让模型逼近最小偏差 111
6.6.1 梯度下降的作用及分类 111
6.6.2 TensorFlow中的梯度下降函数 112
6.6.3 退化学习率——在训练的速度与精度之间找到平衡 113
6.6.4 实例26:退化学习率的用法举例 114
6.7 初始化学习参数 115
6.8 单个神经元的扩展——Maxout网络 116
6.8.1 Maxout介绍 116
6.8.2 实例27:用Maxout网络实现MNIST分类 117
6.9 练习题 118
第7章 多层神经网络——解决非线性问题 119
7.1 线性问题与非线性问题 119
7.1.1 实例28:用线性单分逻辑回归分析肿瘤是良性还是恶性的 119
7.1.2 实例29:用线性逻辑回归处理多分类问题 123
7.1.3 认识非线性问题 129
7.2 使用隐藏层解决非线性问题 130
7.2.1 实例30:使用带隐藏层的神经网络拟合异或操作 130
7.2.2 非线性网络的可视化及其意义 133
7.2.3 练习题 135
7.3 实例31:利用全连接网络将图片进行分类 136
7.4 全连接网络训练中的优化技巧 137
7.4.1 实例32:利用异或数据集演示过拟合问题 138
7.4.2 正则化 143
7.4.3 实例33:通过正则化改善过拟合情况 144
7.4.4 实例34:通过增大数据集改善过拟合 145
7.4.5 练习题 146
7.4.6 dropout——训练过程中,将部分神经单元暂时丢弃 146
7.4.7 实例35:为异或数据集模型添加dropout 147
7.4.8 实例36:基于退化学习率dropout技术来拟合异或数据集 149
7.4.9 全连接网络的深浅关系 150
7.5 练习题 150
第8章 卷积神经网络——解决参数太多问题 151
8.1 全连接网络的局限性 151
8.2 理解卷积神经网络 152
8.3 网络结构 153
8.3.1 网络结构描述 153
8.3.2 卷积操作 155
8.3.3 池化层 157
8.4 卷积神经网络的相关函数 158
8.4.1 卷积函数tf.nn.conv2d 158
8.4.2 padding规则介绍 159
8.4.3 实例37:卷积函数的使用 160
8.4.4 实例38:使用卷积提取图片的轮廓 165
8.4.5 池化函数tf.nn.max_pool(avg_pool) 167
8.4.6 实例39:池化函数的使用 167
8.5 使用卷积神经网络对图片分类 170
8.5.1 CIFAR介绍 171
8.5.2 下载CIFAR数据 172
8.5.3 实例40:导入并显示CIFAR数据集 173
8.5.4 实例41:显示CIFAR数据集的原始图片 174
8.5.5 cifar10_input的其他功能 176
8.5.6 在TensorFlow中使用queue 176
8.5.7 实例42:协调器的用法演示 178
8.5.8 实例43:为session中的队列加上协调器 179
8.5.9 实例44:建立一个带有全局平均池化层的卷积神经网络 180
8.5.10 练习题 183
8.6 反卷积神经网络 183
8.6.1 反卷积神经网络的应用场景 184
8.6.2 反卷积原理 184
8.6.3 实例45:演示反卷积的操作 185
8.6.4 反池化原理 188
8.6.5 实例46:演示反池化的操作 189
8.6.6 实例47:演示gradients基本用法 192
8.6.7 实例48:使用gradients对多个式子求多变量偏导 192
8.6.8 实例49:演示梯度停止的实现 193
8.7 实例50:用反卷积技术复原卷积网络各层图像 195
8.8 善用函数封装库 198
8.8.1 实例51:使用函数封装库重写CIFAR卷积网络 198
8.8.2 练习题 201
8.9 深度学习的模型训练技巧 201
8.9.1 实例52:优化卷积核技术的演示 201
8.9.2 实例53:多通道卷积技术的演示 202
8.9.3 批量归一化 204
8.9.4 实例54:为CIFAR图片分类模型添加BN 207
8.9.5 练习题 209
第9章 循环神经网络——具有记忆功能的网络 210
9.1 了解RNN的工作原理 210
9.1.1 了解人的记忆原理 210
9.1.2 RNN网络的应用领域 212
9.1.3 正向传播过程 212
9.1.4 随时间反向传播 213
9.2 简单RNN 215
9.2.1 实例55:简单循环神经网络实现——裸写一个退位减法器 215
9.2.2 实例56:使用RNN网络拟合回声信号序列 220
9.3 循环神经网络(RNN)的改进 225
9.3.1 LSTM网络介绍 225
9.3.2 窥视孔连接(Peephole) 228
9.3.3 带有映射输出的STMP 230
9.3.4 基于梯度剪辑的cell 230
9.3.5 GRU网络介绍 230
9.3.6 Bi-RNN网络介绍 231
9.3.7 基于神经网络的时序类分类CTC 232
9.4 TensorFlow实战RNN 233
9.4.1 TensorFlow中的cell类 233
9.4.2 通过cell类构建RNN 234
9.4.3 实例57:构建单层LSTM网络对MNIST数据集分类 239
9.4.4 实例58:构建单层GRU网络对MNIST数据集分类 240
9.4.5 实例59:创建动态单层RNN网络对MNIST数据集分类 240
9.4.6 实例60:静态多层LSTM对MNIST数据集分类 241
9.4.7 实例61:静态多层RNN-LSTM连接GRU对MNIST数据集分类 242
9.4.8 实例62:动态多层RNN对MNIST数据集分类 242
9.4.9 练习题 243
9.4.10 实例63:构建单层动态双向RNN对MNIST数据集分类 243
9.4.11 实例64:构建单层静态双向RNN对MNIST数据集分类 244
9.4.12 实例65:构建多层双向RNN对MNIST数据集分类 246
9.4.13 实例66:构建动态多层双向RNN对MNIST数据集分类 247
9.4.14 初始化RNN 247
9.4.15 优化RNN 248
9.4.16 实例67:在GRUCell中实现LN 249
9.4.17 CTC网络的loss——ctc_loss 251
9.4.18 CTCdecoder 254
9.5 实例68:利用BiRNN实现语音识别 255
9.5.1 语音识别背景 255
9.5.2 获取并整理样本 256
9.5.3 训练模型 265
9.5.4 练习题 272
9.6 实例69:利用RNN训练语言模型 273
9.6.1 准备样本 273
9.6.2 构建模型 275
9.7 语言模型的系统学习 279
9.7.1 统计语言模型 279
9.7.2 词向量 279
9.7.3 word2vec 281
9.7.4 实例70:用CBOW模型训练自己的word2vec 283
9.7.5 实例71:使用指定侯选采样本训练word2vec 293
9.7.6 练习题 296
9.8 处理Seq2Seq任务 296
9.8.1 Seq2Seq任务介绍 296
9.8.2 Encoder-Decoder框架 297
9.8.3 实例72:使用basic_rnn_seq2seq拟合曲线 298
9.8.4 实例73:预测当天的股票价格 306
9.8.5 基于注意力的Seq2Seq 310
9.8.6 实例74:基于Seq2Seq注意力模型实现中英文机器翻译 313
9.9 实例75:制作一个简单的聊天机器人 339
9.9.1 构建项目框架 340
9.9.2 准备聊天样本 340
9.9.3 预处理样本 340
9.9.4 训练样本 341
9.9.5 测试模型 342
9.10 时间序列的高级接口TFTS 344
第10章 自编码网络——能够自学习样本特征的网络 346
10.1 自编码网络介绍及应用 346
10.2 最简单的自编码网络 347
10.3 自编码网络的代码实现 347
10.3.1 实例76:提取图片的特征,并利用特征还原图片 347
10.3.2 线性解码器 351
10.3.3 实例77:提取图片的二维特征,并利用二维特征还原图片 351
10.3.4 实例78:实现卷积网络的自编码 356
10.3.5 练习题 358
10.4 去噪自编码 359
10.5 去噪自编码网络的代码实现 359
10.5.1 实例79:使用去噪自编码网络提取MNIST特征 359
10.5.2 练习题 363
10.6 栈式自编码 364
10.6.1 栈式自编码介绍 364
10.6.2 栈式自编码在深度学习中的意义 365
10.7 深度学习中自编码的常用方法 366
10.7.1 代替和级联 366
10.7.2 自编码的应用场景 366
10.8 去噪自编码与栈式自编码的综合实现 366
10.8.1 实例80:实现去噪自编码 367
10.8.2 实例81:添加模型存储支持分布训练 375
10.8.3 小心分布训练中的“坑” 376
10.8.4 练习题 377
10.9 变分自编码 377
10.9.1 什么是变分自编码 377
10.9.2 实例82:使用变分自编码模拟生成MNIST数据 377
10.9.3 练习题 384
10.10 条件变分自编码 385
10.10.1 什么是条件变分自编码 385
10.10.2 实例83:使用标签指导变分自编码网络生成MNIST数据 385
第3篇 深度学习进阶
第11章 深度神经网络 392
11.1 深度神经网络介绍 392
11.1.1 深度神经网络起源 392
11.1.2 经典模型的特点介绍 393
11.2 GoogLeNet模型介绍 394
11.2.1 MLP卷积层 394
11.2.2 全局均值池化 395
11.2.3 Inception 原始模型 396
11.2.4 Inception v1模型 396
11.2.5 Inception v2模型 397
11.2.6 Inception v3模型 397
11.2.7 Inception v4模型 399
11.3 残差网络(ResNet) 399
11.3.1 残差网络结构 399
11.3.2 残差网络原理 400
11.4 Inception-ResNet-v2结构 400
11.5 TensorFlow中的图片分类模型库——slim 400
11.5.1 获取models中的slim模块代码 401
11.5.2 models中的Slim目录结构 401
11.5.3 slim中的数据集处理 403
11.5.4 实例84:利用slim读取TFRecord中的数据 405
11.5.5 在slim中训练模型 407
11.6 使用slim中的深度网络模型进行图像的识别与检测 410
11.6.1 实例85:调用Inception_ResNet_v2模型进行图像识别 410
11.6.2 实例86:调用VGG模型进行图像检测 413
11.7 实物检测模型库——Object Detection API 417
11.7.1 准备工作 418
11.7.2 实例87:调用Object Detection API进行实物检测 421
11.8 实物检测领域的相关模型 425
11.8.1 RCNN基于卷积神经网络特征的区域方法 426
11.8.2 SPP-Net:基于空间金字塔池化的优化RCNN方法 426
11.8.3 Fast-R-CNN快速的RCNN模型 426
11.8.4 YOLO:能够一次性预测多个位置和类别的模型 427
11.8.5 SSD:比YOLO更快更准的模型 428
11.8.6 YOLO2:YOLO的升级版模型 428
11.9 机器自己设计的模型(NASNet) 428 
第12章 对抗神经网络(GAN) 430
12.1 GAN的理论知识 430
12.1.1 生成式模型的应用 431
12.1.2 GAN的训练方法 431
12.2 DCGAN——基于深度卷积的GAN 432
12.3 InfoGAN和ACGAN:指定类别生成模拟样本的GAN 432
12.3.1 InfoGAN:带有隐含信息的GAN 432
12.3.2 AC-GAN:带有辅助分类信息的GAN 433
12.3.3 实例88:构建InfoGAN生成MNIST模拟数据 434
12.3.4 练习题 440
12.4 AEGAN:基于自编码器的GAN 441
12.4.1 AEGAN原理及用途介绍 441
12.4.2 实例89:使用AEGAN对MNIST数据集压缩特征及重建 442
12.5 WGAN-GP:更容易训练的GAN 447
12.5.1 WGAN:基于推土机距离原理的GAN 448
12.5.2 WGAN-GP:带梯度惩罚项的WGAN 449
12.5.3 实例90:构建WGAN-GP生成MNIST数据集 451
12.5.4 练习题 455
12.6 LSGAN(最小乘二GAN):具有WGAN 同样效果的GAN 455
12.6.1 LSGAN介绍 455
12.6.2 实例91:构建LSGAN生成MNIST模拟数据 456
12.7 GAN-cls:具有匹配感知的判别器 457
12.7.1 GAN-cls的具体实现 458
12.7.2 实例92:使用GAN-cls技术实现生成标签匹配的模拟数据 458
12.8 SRGAN——适用于超分辨率重建的GAN 461
12.8.1 超分辨率技术 461
12.8.2 实例93:ESPCN实现MNIST数据集的超分辨率重建 463
12.8.3 实例94:ESPCN实现flowers数据集的超分辨率重建 466
12.8.4 实例95:使用残差网络的ESPCN 472
12.8.5 SRGAN的原理 477
12.8.6 实例96:使用SRGAN实现flowers数据集的超分辨率修复 477
12.9 GAN网络的高级接口TFGAN 485
12.10 总结 486







21个项目玩转深度学习——基于TensorFlow的实践详解

 

 

作 译 者:

出版时间:2018-03

千 字 数:368

版    次:01-01

页    数:372

开    本:16开

装    帧:

I S B N :9787121335716

 

换    版:

所属分类: >>  >> 

纸质书定价:¥79.0 

内容简介

《21个项目玩转深度学习——基于TensorFlow的实践详解》以实践为导向,深入介绍了深度学习技术和TensorFlow框架编程内容。通过本书,读者可以训练自己的图像识别模型、进行目标检测和人脸识别、完成一个风格迁移应用,还可以使用神经网络生成图像和文本,进行时间序列预测、搭建机器翻译引擎,训练机器玩游戏等。全书共包含21个项目,分为深度卷积网络、RNN网络、深度强化学习三部分。读者可以在自己动手实践的过程中找到学习的乐趣,了解算法和编程框架的细节,让学习深度学习算法和TensorFlow的过程变得轻松和高效。本书基于TensorFlow 1.4版本,并介绍了该版本中的一些新特性。

前言

1章  MNIST机器学习入门    1

1.1  MNIST数据集    2

1.1.1  简介    2

1.1.2  实验:将MNIST数据集保存为图片    5

1.1.3  图像标签的独热(one-hot)表示    6

1.2  利用TensorFlow识别MNIST    8

1.2.1  Softmax回归    8

1.2.2  两层卷积网络分类    14

1.3  总结    18

2章  CIFAR-10与ImageNet图像识别    19

2.1  CIFAR-10数据集    20

2.1.1  CIFAR-10简介    20

2.1.2  下载CIFAR-10数据    21

2.1.3  TensorFlow的数据读取机制    23

2.1.4  实验:将CIFAR-10数据集保存为图片形式    30

2.2  利用TensorFlow训练CIFAR-10识别模型    34

2.2.1  数据增强(Data Augmentation)    34

2.2.2  CIFAR-10识别模型    36

2.2.3  训练模型    39

2.2.4  在TensorFlow中查看训练进度    39

2.2.5  测试模型效果    42

2.3  ImageNet图像识别模型    44

2.3.1  ImageNet数据集简介    44

2.3.2  历代ImageNet图像识别模型    45

2.4  总结    49

3章  打造自己的图像识别模型    50

3.1  微调(Fine-tune)的原理    51

3.2  数据准备    52

3.3  使用TensorFlow Slim微调模型    56

3.3.1  下载TensorFlow Slim的源代码    56

3.3.2  定义新的datasets文件    57

3.3.3  准备训练文件夹    59

3.3.4  开始训练    60

3.3.5  训练程序行为    62

3.3.6  验证模型正确率    63

3.3.7  TensorBoard可视化与参数选择    64

3.3.8  导出模型并对单张图片进行识别    65

3.4  总结    69

4章  Deep Dream模型    70

4.1  Deep Dream的技术原理    71

4.2  TensorFlow中的Deep Dream模型实践    73

4.2.1  导入Inception模型    73

4.2.2  生成原始的Deep Dream图像    76

4.2.3  生成更大尺寸的Deep Dream图像    78

4.2.4  生成更高质量的Deep Dream图像    82

4.2.5  终的Deep Dream模型    87

4.3  总结    90

 

5章  深度学习中的目标检测    91

5.1  深度学习中目标检测的原理    92

5.1.1  R-CNN的原理    92

5.1.2  SPPNet的原理    94

5.1.3  Fast R-CNN的原理    97

5.1.4  Faster R-CNN的原理    98

5.2  TensorFlow Object Detection API    101

5.2.1  安装TensorFlow Object Detection API    101

5.2.2  执行已经训练好的模型    103

5.2.3  训练新的模型    109

5.2.4  导出模型并预测单张图片    113

5.3  总结    114

6章  人脸检测和人脸识别    115

6.1  MTCNN的原理    116

6.2  使用深度卷积网络提取特征    121

6.2.1  三元组损失(Triplet Loss)的定义    123

6.2.2  中心损失(Center Loss)的定义    123

6.3  使用特征设计应用    125

6.4  在TensorFlow中实现人脸识别    126

6.4.1  项目环境设置    126

6.4.2  LFW人脸数据库    127

6.4.3  LFW数据库上的人脸检测和对齐    128

6.4.4  使用已有模型验证LFW数据库准确率    129

6.4.5  在自己的数据上使用已有模型    130

6.4.6  重新训练新模型    133

6.4.7  三元组损失和中心损失的定义    138

6.5  总结    140

7章  图像风格迁移    141

7.1  图像风格迁移的原理    142

7.1.1  原始图像风格迁移的原理    142

7.1.2  快速图像风格迁移的原理    148

7.2  在TensorFlow中实现快速风格迁移    149

7.2.1  使用预训练模型    150

7.2.2  训练自己的模型    153

7.2.3  在TensorBoard中监控训练情况    154

7.2.4  项目实现细节    157

7.3  总结    162

8章  GAN和DCGAN入门    163

8.1  GAN的原理    164

8.2  DCGAN的原理    166

8.3  在TensorFlow中用DCGAN生成图像    169

8.3.1  生成MNIST图像    170

8.3.2  使用自己的数据集训练    171

8.3.3  程序结构分析:如何将图像读入模型    173

8.3.4  程序结构分析:可视化方法    177

8.4  总结    180

9章  pix2pix模型与自动上色技术    181

9.1  cGAN的原理    182

9.2  pix2pix模型的原理    184

9.3  TensorFlow中的pix2pix模型    187

9.3.1  执行已有的数据集    187

9.3.2  创建自己的数据集    191

9.4  使用TensorFlow为灰度图像自动上色    194

9.4.1  为食物图片上色    194

9.4.2  为动漫图片进行上色    196

9.5  总结    198

10章  分辨率:如何让图像变得更清晰    199

10.1  数据预处理与训练    200

10.1.1  去除错误图片    200

10.1.2  将图像裁剪到统一大小    202

10.1.3  为代码添加新的操作    202

10.2  总结    209

11章  CycleGAN与非配对图像转换    210

11.1  CycleGAN的原理    211

11.2  在TensorFlow中用训练CycleGAN模型    213

11.2.1  下载数据集并训练    213

11.2.2  使用自己的数据进行训练    217

11.3  程序结构分析    220

11.4  总结    224

12章  RNN基本结构与Char RNN文本生成    225

12.1  RNN的原理    226

12.1.1  经典RNN的结构    226

12.1.2  N VS 1 RNN的结构    229

12.1.3  1 VS N RNN的结构    230

12.2  LSTM的原理    231

12.3  Char RNN的原理    235

12.4  TensorFlow中的RNN实现方式    237

12.4.1  实现RNN的基本单元:RNNCell    238

12.4.2  对RNN进行堆叠:MultiRNNCell    239

12.4.3  注意点:BasicRNNCell和BasicLSTMCell的output    240

12.4.4  使用tf.nn.dynamic_rnn展开时间维度    241

12.5  使用TensorFlow实现Char RNN    242

12.5.1  定义输入数据    243

12.5.2  定义多层LSTM模型    244

12.5.3  定义损失    245

12.5.4  训练模型与生成文字    246

12.5.5  更多参数说明    250

12.5.6  运行自己的数据    250

12.6  总结    251

13章  序列分类问题详解    252

13.1  N VS 1的RNN结构    253

13.2  数列分类问题与数据生成    254

13.3  在TensorFlow中定义RNN分类模型    258

13.3.1  定义模型前的准备工作    258

13.3.2  定义RNN分类模型    259

13.3.3  定义损失并进行训练    261

13.4  模型的推广    262

13.5  总结    263

14章  词的向量表示:word2vec与词嵌入    264

14.1  为什么需要做词嵌入    265

14.2  词嵌入的原理    266

14.2.1  CBOW实现词嵌入的原理    266

14.2.2  Skip-Gram实现词嵌入的原理    269

14.3  在TensorFlow中实现词嵌入    270

14.3.1  下载数据集    270

14.3.2  制作词表    272

14.3.3  生成每步的训练样本    274

14.3.4  定义模型    276

14.3.5  执行训练    279

14.3.6  可视化    281

14.4  与12章的对比    284

14.5  总结    285

15章  在TensorFlow中进行时间序列预测    286

15.1  时间序列问题的一般形式    287

15.2  用TFTS读入时间序列数据    287

15.2.1  从Numpy数组中读入时间序列数据    288

15.2.2  从CSV文件中读入时间序列数据    291

15.3  使用AR模型预测时间序列    293

15.3.1  AR模型的训练    293

15.3.2  AR模型的验证和预测    295

15.4  使用LSTM模型预测时间序列    297

15.4.1  LSTM模型中的单变量时间序列预测    297

15.4.2  LSTM模型中的多变量时间序列预测    299

15.5  总结    301

16章  神经网络机器翻译技术    302

16.1  Encoder-Decoder模型的原理    303

16.2  注意力机制(Attention)    305

16.3  使用TensorFlow NMT搭建神经网络翻译引擎    309

16.3.1  示例:将越南语翻译为英语    309

16.3.2  构建中英翻译引擎    313

16.4  TensorFlow NMT源码简介    317

16.5  总结    319

17章  看图说话:将图像转换为文字    320

17.1  Image Caption技术综述    321

17.1.1  从Encoder-Decoder结构谈起    321

17.1.2  将Encoder-Decoder应用到Image Caption任务上    322

17.1.3  对Encoder-Decoder的改进1:加入Attention机制    323

17.1.4  对Encoder-Decoder的改进2:加入高层语义    325

17.2  在TensorFlow中实现Image Caption    327

17.2.1  下载代码    327

17.2.2  环境准备    328

17.2.2  编译和数据准备    328

17.2.3  训练和验证    330

17.2.4  测试单张图片    331

17.3  总结    332

18章  强化学习入门之Q    333

18.1  强化学习中的几个重要概念    334

18.2  Q Learning的原理与实验    336

18.2.1  环境定义    336

18.2.2  Q函数    338

18.2.3  Q函数的学习策略    339

18.2.4  ?-greedy策略    341

18.2.5  简单的Q Learning示例    341

18.2.6  更复杂的情况    342

18.3  总结    343

19章  强化学习入门之SARSA算法    344

19.1  SARSA 算法的原理    345

19.1.1  通过与Q Learning对比学习SARSA算法    345

19.1.2  off-policy与on-policy    346

19.2  SARSA 算法的实现    347

19.3  总结    348

20章  深度强化学习:Deep Q Learning    349

20.1  DQN算法的原理    350

20.1.1  问题简介    350

20.1.2  Deep Q Network    351

20.1.3  训练方法    352

20.2  在TensorFlow中运行DQN算法    353

20.2.1  安装依赖库    353

20.2.2  训练    355

20.2.3  测试    356

20.3  在TensorFlow中DQN算法的实现分析    357

20.4  总结    360

21章  策略梯度(Policy Gradient)算法    361

21.1  策略梯度(Policy Gradient)算法的原理    362

21.1.1  Cartpole游戏    362

21.1.2  策略网络(Policy Network)    363

21.1.3  训练策略网络    364

21.2  在TensorFlow中实现策略梯度 算法    365

21.2.1  初始化    365

21.2.2  定义策略网络    366

21.2.3  训练    367

21.3  总结    371


机器学习与深度学习之旅:从基础到应用 这是一本面向初学者与进阶者的综合性指南,旨在带领读者深入理解机器学习的核心概念,并在此基础上,逐步掌握当下最热门的深度学习技术。本书不局限于任何特定框架,而是力求以清晰、直观的方式,阐述算法背后的数学原理、逻辑推理以及实际应用的可能性。我们将从机器学习的基石开始,打牢基础,再循序渐进地探索深度学习的奥秘,最终通过丰富的实战项目,让读者能够独立运用所学知识解决实际问题。 第一部分:机器学习基石——理解数据与模型 在踏入深度学习的奇妙世界之前,建立扎实的机器学习基础至关重要。本部分将带您领略数据的重要性,学习如何处理和理解数据,并理解模型是如何从数据中学习的。 数据的故事:从收集到洞察 数据的类型与表示: 我们将首先区分不同类型的数据,如数值型、类别型、文本型、图像型等,并了解它们在计算机中的表示方式。这包括向量、矩阵、张量等基本概念,为后续的学习奠定基础。 数据预处理的艺术: 真实世界的数据往往是杂乱无章的。您将学会如何处理缺失值、异常值,如何进行数据标准化和归一化,以及如何对类别特征进行编码(如独热编码、标签编码)。理解这些步骤为何重要,以及它们如何影响模型的性能。 探索性数据分析 (EDA): 在构建模型之前,深入了解数据是必不可少的。我们将介绍可视化技术(如直方图、散点图、箱线图)和统计摘要,帮助您发现数据中的模式、关联和潜在问题。 特征工程的智慧: 如何从原始数据中提取出对模型最有用的信息,是特征工程的核心。您将学习如何创建交互特征、多项式特征,以及如何利用领域知识构建新的特征。 模型的世界:学习的逻辑 监督学习的魅力: 这是最常见的学习范式。我们将深入讲解回归(预测连续值)和分类(预测离散类别)问题。 线性回归的优雅: 从最简单的线性模型入手,理解最小二乘法原理,以及如何通过梯度下降优化模型参数。 逻辑回归的分类力量: 学习如何利用 Sigmoid 函数将线性输出转化为概率,从而实现二分类和多分类。 支持向量机 (SVM) 的边界: 理解最大间隔分类的思想,学习核技巧如何处理非线性可分数据。 决策树的树状智慧: 探索如何通过一系列规则划分数据,以及如何防止过拟合(如剪枝)。 集成学习的协同效应: 学习如何结合多个弱学习器(如随机森林、梯度提升树)来构建更强大的模型,并理解它们为何能够提高鲁棒性和准确性。 无监督学习的探索: 当没有标签信息时,模型如何发现数据内在的结构? 聚类的奥秘: 学习 K-Means 等算法如何将相似的数据点分组,理解簇的定义和评价指标。 降维的技术: 探索主成分分析 (PCA) 等方法如何减少数据的维度,同时保留最重要的信息,从而加速训练和可视化。 关联规则挖掘: 学习如何发现数据项之间的有趣关联,例如“购买了 A 的顾客也可能购买 B”。 评估模型的优劣: 构建模型只是第一步,如何知道模型是否“好”? 回归模型的评价指标: 学习均方误差 (MSE)、均方根误差 (RMSE)、平均绝对误差 (MAE)、R-squared 等指标。 分类模型的评价指标: 深入理解混淆矩阵、准确率 (Accuracy)、精确率 (Precision)、召回率 (Recall)、F1-Score,以及 ROC 曲线和 AUC 值。 模型选择与交叉验证: 学习如何使用交叉验证来更可靠地评估模型性能,避免过拟合,并选择最佳模型。 第二部分:深度学习的进阶之路——神经网络的构建与原理 在掌握了机器学习的基础之后,我们将进入深度学习的核心领域。本部分将详细阐述神经网络的结构、工作原理以及各种先进的网络架构。 神经网络的 DNA:神经元与层 人工神经元的启示: 从生物神经元获得灵感,理解人工神经元的基本结构:输入、权重、偏置和激活函数。 激活函数的选择: 学习 ReLU、Sigmoid、Tanh 等常用激活函数的特性,以及它们如何引入非线性,使神经网络能够学习复杂模式。 多层感知机 (MLP): 构建深度神经网络的基石。理解输入层、隐藏层和输出层的概念,以及信息如何在层与层之间传递。 前向传播的计算流程: 详细解析数据如何从输入层经过各层计算,最终到达输出层的过程。 学习的动力:反向传播与梯度下降 损失函数的角色: 理解损失函数如何量化模型预测与真实值之间的差异,是模型优化的目标。 梯度下降的迭代优化: 学习梯度下降算法如何通过计算损失函数对参数的梯度,从而逐步调整权重和偏置,使损失最小化。 反向传播的数学原理: 深入理解链式法则如何在神经网络中传播误差,从而计算每一层参数的梯度。 优化器的选择: 除了标准的梯度下降,还将介绍更高效的优化器,如 Adam、RMSprop、SGD with Momentum,并解释它们的工作原理和优势。 克服挑战:正则化与过拟合 过拟合的陷阱: 理解当模型在训练数据上表现极好,但在新数据上表现很差时,就发生了过拟合。 L1 和 L2 正则化: 学习如何通过在损失函数中添加惩罚项来限制模型复杂度,从而缓解过拟合。 Dropout 的随机丢弃: 探索 Dropout 技术如何在训练过程中随机“关闭”一部分神经元,迫使网络学习更鲁棒的特征。 早停法 (Early Stopping): 学习如何在验证集性能开始下降时停止训练,防止模型过度拟合。 专门的网络架构:处理特定类型的数据 卷积神经网络 (CNN): 深度学习在图像处理领域的革命性突破。 卷积层的魔力: 理解卷积核如何扫描图像,提取局部特征,并保持空间层次结构。 池化层的降维与不变性: 学习池化操作如何减少特征图的尺寸,同时保留最重要的信息,并对图像的平移、缩放具有一定的鲁棒性。 CNN 的典型结构: 学习 LeNet、AlexNet、VGG、ResNet 等经典 CNN 架构的设计思想。 循环神经网络 (RNN): 专门处理序列数据的强大工具。 时序数据的建模: 理解 RNN 如何通过“记忆”前一时刻的信息来处理当前时刻的数据,适用于文本、语音等序列。 长短期记忆网络 (LSTM) 和门控循环单元 (GRU): 学习 LSTM 和 GRU 如何解决传统 RNN 的长期依赖问题,更有效地捕捉序列中的长距离信息。 Transformer 模型: 自然语言处理领域的颠覆者。 自注意力机制 (Self-Attention): 深入理解 Transformer 如何通过注意力机制并行处理序列中的所有元素,并捕捉它们之间的复杂关系,摆脱了 RNN 的顺序限制。 编码器-解码器架构: 学习 Transformer 如何用于机器翻译、文本摘要等任务。 第三部分:实战出真知——用实践掌握深度学习 理论学习最终要落到实践。本部分将引导读者通过一系列具有代表性的项目,将所学知识应用于实际问题,从而加深理解,并积累实战经验。 计算机视觉项目: 图像分类: 构建模型识别不同类别的图像,例如识别猫狗、手写数字。 目标检测: 在图像中定位并识别出多个目标物体,例如识别行人、车辆。 图像分割: 将图像中的每个像素分配到一个类别,实现对物体的精细识别。 自然语言处理项目: 文本分类: 构建模型对文本进行情感分析、垃圾邮件检测等。 机器翻译: 实现将一种语言的文本翻译成另一种语言。 文本生成: 训练模型生成连贯、有意义的文本,例如写诗、写新闻。 其他领域的应用: 推荐系统: 构建模型为用户推荐感兴趣的商品或内容。 时间序列预测: 预测股票价格、天气变化等随时间变化的数据。 本书的目标是为您打开一扇通往机器学习与深度学习世界的大门,让您不仅理解“是什么”,更能明白“为什么”以及“如何做”。通过理论与实践的结合,您将能够自信地运用这些强大的工具,解决现实世界中各种复杂的问题,并在人工智能领域不断探索和创新。

用户评价

评分

这本书的封面设计挺吸引人的,色彩搭配和字体选择都给人一种专业又不失活力的感觉,尤其是“深度学习”和“TensorFlow”这两个关键词组合在一起,立刻就抓住了我这个想入门但又有点望而生畏的读者的眼球。我最近一直在寻找一本既能讲清楚理论基础,又能提供足够多动手实践机会的书籍,所以这本书的标题让我觉得它可能就是我一直在找的那个“金钥匙”。从目录上看,它似乎是从最基础的概念讲起,逐步深入到复杂的模型构建,这对于我这种需要循序渐进学习的人来说非常友好。我特别关注它在“实践”方面的力度,毕竟理论知识如果不能落地,学了也是白搭。希望这本书能真正做到理论与实践的完美结合,让我能够踏踏实实地迈出深度学习的第一步,而不是仅仅停留在概念的理解上。整体来说,这本书给我的第一印象是内容组织结构清晰,目标读者定位明确,非常适合渴望从零开始系统学习TensorFlow的初学者。

评分

我花了点时间仔细翻阅了这本书的章节安排,发现它在内容深度上似乎做了很好的权衡。它没有一上来就抛出晦涩难懂的数学公式和复杂的网络结构图,而是通过循序渐进的方式,像是搭积木一样,一步步搭建起深度学习的知识体系。这种讲解方式对于理解诸如梯度下降、反向传播这类核心机制至关重要,因为很多入门书籍往往在关键的原理部分一带而过,导致读者在真正需要调参或优化模型时感到力不从心。这本书的详尽程度让人感到安心,它似乎真的在努力消除初学者与专业知识之间的鸿沟。我尤其期待看到它在TensorFlow的具体API调用上是如何展开叙述的,毕竟掌握框架的正确使用方式和理解背后的原理同样重要,二者缺一不可。这本书的编写风格给我的感觉是:它不仅想教你“怎么做”,更想让你明白“为什么这么做”。

评分

从一个已经接触过一些其他机器学习框架的读者的角度来看,我更关注这本书是如何针对TensorFlow的特性进行深入讲解的。TensorFlow在图计算和Eager Execution模式上的演变,是学习它时绕不开的话题。我希望这本书能够清晰地阐述这两种模式的区别、各自的应用场景以及在最新版本中推荐的使用方式。此外,对于TensorFlow生态中的其他重要工具,比如TensorBoard的可视化功能,模型部署的初步概念等,也应该有所涉猎。一本优秀的进阶书籍,应该能引导读者跳出单纯的模型训练循环,开始思考如何将模型投入生产环境,如何进行高效的性能优化。如果这本书能在这个层面提供有价值的见解和指导,那么它对我的价值将远超一本纯粹的入门教材,而是真正成为我工具箱里不可或缺的“实战手册”。

评分

对于任何技术书籍来说,项目实战的质量直接决定了它的价值,而这本书的副标题中“21个项目”这个数字非常亮眼,一下子就让人对其实用性充满了期待。我希望这些项目不仅仅是简单的Hello World级别的重复性练习,而是能够涵盖不同应用场景的真实问题,比如图像识别、自然语言处理,甚至是强化学习的入门案例。只有通过解决真实世界的问题,我们才能真正体会到TensorFlow的强大和深度学习的魅力。我非常看重项目代码的规范性和可读性,如果书中的代码能够清晰地注释,并且结构良好,那么它就不仅仅是一本学习资料,更是一份高质量的参考模板。这种丰富的实战经验积累,才是衡量一本技术书是否“硬核”的关键指标。我希望通过完成这些项目,我能积累起足够的信心,去应对未来更复杂的学习和工作任务。

评分

阅读体验方面,这本书的排版和图文结合的方式显得尤为重要。深度学习涉及很多概念的抽象表达,如果仅仅依靠文字描述,很容易让人感到枯燥乏味,甚至产生误解。我期望这本书的插图能够精确、直观地描绘出数据流向、网络结构和算法执行过程。好的图示能起到事半功倍的效果,它能将复杂的数学关系视觉化,帮助读者的大脑快速建立起认知模型。如果书中能穿插一些“调试技巧”或“常见错误分析”的栏目,那就更完美了。因为在实际操作中,调试报错往往是学习过程中最令人沮丧的部分,如果能提前预知并提供解决方案,这本书的实用价值将大大提升。总而言之,一本好的技术书不仅要内容充实,更要在阅读的便捷性和友好性上下功夫,让学习过程尽可能顺畅。

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.idnshop.cc All Rights Reserved. 静思书屋 版权所有