新書推薦:
《
爱琴海的光芒 : 千年古希腊文明
》
售價:HK$
204.7
《
不被他人左右:基于阿德勒心理学的无压力工作法
》
售價:HK$
67.9
《
SDGSAT-1卫星热红外影像图集
》
售價:HK$
457.7
《
股市趋势技术分析(原书第11版)
》
售價:HK$
227.7
《
汉匈战争全史
》
售價:HK$
102.4
《
恶的哲学研究(社会思想丛书)
》
售價:HK$
109.8
《
不止江湖
》
售價:HK$
101.2
《
天才留步!——从文艺复兴到新艺术运动(一本关于艺术天才的鲜活故事集,聚焦艺术史的高光时刻!)
》
售價:HK$
158.7
|
編輯推薦: |
聚焦10大人工智能经典场景
每章都包含TensorFlow 1.x 和2.0 的代码实现
通过案例巩固基础知识
图像分类|彩票预测|古诗生成|个性化推荐|广告点击率预估|人脸识别 |AlphaZeroGO|汉字OCR|超级马里奥|人脸生成
|
內容簡介: |
本书通过案例讲解如何使用TensorFlow 解决深度学习的实际任务, 每章都包含TensorFlow 1.x 和2.0 的代码实现。全书共分10 章,主要讲解卷积神经网络、LSTM、Seq2Seq、Transformer、BERT、文本卷积、GBDT、FM、FFM、Dlib、MTCNN、VGG、AlphaGo AlphaZero、BiLSTM、DQN、Gym、GAN 等技术,包含的项目有CIFAR-100 图像分类、彩票预测、古诗生成、推荐系统、广告点击率预测、人脸识别、中国象棋、汉字OCR、FlappyBird 和超级马里奥、人脸生成。
|
關於作者: |
程世东,毕业于辽宁工程技术大学,对计算机领域的各类技术都有浓厚的兴趣,享受学习新技术带来的快乐。擅长C语言和汇编语言,尤其喜欢研究软件调试和逆向工程相关技术。最近几年开始钻研机器学习和深度学习,2018年来到日本从事日文OCR的研发工作。
|
目錄:
|
目录
1 卷积神经网络与环境搭建1
1.1 概述 1
1.2 卷积神经网络2
1.2.1 卷积层3
1.2.2 修正线性单元. 6
1.2.3 池化层8
1.2.4 全连接层 8
1.2.5 softmax 层 9
1.2.6 LeNet-5 网络9
1.3 准备开发环境 10
1.3.1 Anaconda 环境搭建 10
1.3.2 安装TensorFlow 1.x11
1.3.3 FloydHub 使用介绍13
1.3.4 AWS 使用介绍 18
1.4 本章小结26
2 卷积神经网络实践:图像分类27
2.1 概述 27
2.2 卷积神经网络项目实践:基于TensorFlow 1.x27
2.2.1 数据预处理. 28
2.2.2 网络模型33
2.2.3 训练网络39
2.3 卷积神经网络项目实践:基于TensorFlow 2.0 41
2.3.1 TensorFlow 2.0 介绍41
2.3.2 CIFAR-100 分类网络的TensorFlow 2.0 实现44
2.4 本章小结.60
3 彩票预测和生成古诗61
3.1 概述61
3.2 RNN61
3.3 LSTM 63
3.4 嵌入矩阵. . 66
3.5 实现彩票预测69
3.5.1 数据预处理. 70
3.5.2 构建神经网络. 71
3.5.3 训练神经网络75
3.5.4 分析网络训练情况83
3.5.5 生成预测号码.88
3.6 文本生成. 93
3.7 生成古诗:基于TensorFlow 2.096
3.7.1 数据预处理96
3.7.2 构建网络99
3.7.3 开始训练. 102
3.7.4 生成古诗102
3.8 自然语言处理 106
3.8.1 序列到序列 106
3.8.2 Transformer . 108
3.8.3 BERT112
3.9 本章小结118
4 个性化推荐系统119
4.1 概述 . 119
4.2 MovieLens 1M 数据集分析.120
4.2.1 下载数据集 . 120
4.2.2 用户数据.120
4.2.3 电影数据. 122
4.2.4 评分数据.123
4.3 数据预处理.123
4.3.1 代码实现. . 124
4.3.2 加载数据并保存到本地 . 127
4.3.3 从本地读取数据128
4.4 神经网络模型设计 128
4.5 文本卷积神经网络130
4.6 实现电影推荐:基于TensorFlow 1.x 131
4.6.1 构建计算图131
4.6.2 训练网络 139
4.6.3 实现个性化推荐144
4.7 实现电影推荐:基于TensorFlow 2.0 154
4.7.1 构建模型154
4.7.2 训练网络 166
4.7.3 实现个性化推荐 166
4.8 本章小结 169
5 广告点击率预估:Kaggle 实战170
5.1 概述 . 170
5.2 下载数据集. . 170
5.3 数据字段的含义 . 171
5.4 点击率预估的实现思路 172
5.4.1 梯度提升决策树. 172
5.4.2 因子分解机.. 172
5.4.3 场感知分解机. 174
5.4.4 网络模型175
5.5 数据预处理. 176
5.5.1 GBDT 的输入数据处理. 177
5.5.2 FFM 的输入数据处理.177
5.5.3 DNN 的输入数据处理179
5.5.4 数据预处理的实现.180
5.6 训练FFM188
5.7 训练GBDT . 197
5.8 用LightGBM 的输出生成FM 数据.203
5.9 训练FM . 207
5.10 实现点击率预估:基于TensorFlow 1.x. 218
5.10.1 构建神经网络 219
5.10.2 训练网络 . 225
5.10.3 点击率预估 . 231
5.11 实现点击率预估:基于TensorFlow 2.0 . 237
5.12 本章小结 . 245
6 人脸识别246
6.1 概述. . . . 246
6.2 人脸检测.247
6.2.1 OpenCV 人脸检测 . 247
6.2.2 dlib 人脸检测251
6.2.3 MTCNN 人脸检测254
6.3 提取人脸特征.264
6.3.1 使用FaceNet 提取人脸特征 . 264
6.3.2 使用VGG 网络提取人脸特征265
6.3.3 使用dlib 提取人脸特征.272
6.4 人脸特征的比较. . 276
6.5 从视频中找人的实现. 282
6.6 视频找人的案例实践. .284
6.7 人脸识别:基于TensorFlow 2.0 .. 302
6.8 本章小结. . 303
7 AlphaZero AlphaGo 实践:中国象棋304
7.1 概述. .. 304
7.2 论文解析 . . 305
7.2.1 蒙特卡罗树搜索算法.307
7.2.2 神经网络.312
7.2.3 AlphaZero 论文解析.314
7.3 实现中国象棋:基于TensorFlow 1.x .317
7.3.1 中国象棋着法表示和FEN 格式. 317
7.3.2 输入特征的设计321
7.3.3 实现神经网络. 323
7.3.4 神经网络训练和预测. 327
7.3.5 通过自我对弈训练神经网络 330
7.3.6 自我对弈 334
7.3.7 实现蒙特卡罗树搜索:异步方式. 340
7.3.8 训练和运行353
7.4 实现中国象棋:基于TensorFlow 2.0,多GPU 版.354
7.5 本章小结364
8 汉字OCR 365
8.1 概述. 365
8.2 分类网络实现汉字OCR 365
8.2.1 图片矫正366
8.2.2 文本切割.368
8.2.3 汉字分类网络.369
8.3 端到端的汉字OCR:基于TensorFlow 1.x .371
8.3.1 CNN 设计372
8.3.2 双向LSTM 设计. . 374
8.3.3 CTC 损失 385
8.3.4 端到端汉字OCR 的网络训练.388
8.4 汉字OCR:基于TensorFlow 2.0395
8.4.1 CNN 的实现.395
8.4.2 双向LSTM 的实现.396
8.4.3 OCR 网络的训练. 403
8.5 本章小结. 406
9 强化学习:玩转Flappy Bird 和超级马里奥407
9.1 概述. 407
9.2 DQN 算法. 407
9.3 实现DQN 玩Flappy Bird:基于TensorFlow 1.x . 412
9.4 实现DQN 玩Flappy Bird:基于TensorFlow 2.0. 417
9.5 使用OpenAI Baselines 玩超级马里奥. . 424
9.5.1 Gym. 424
9.5.2 自定义Gym 环境. . 426
9.5.3 使用Baselines 训练. . 431
9.5.4 使用训练好的智能体玩游戏. . 437
9.5.5 开始训练马里奥游戏智能体. .438
9.6 具有好奇心的强化学习算法. 443
9.7 本章小结. . 444
10 生成对抗网络实践:人脸生成445
10.1 概述 . 445
10.2 GAN .446
10.3 DCGAN . 447
10.3.1 生成器. . 448
10.3.2 判别器. 449
10.4 WGAN 449
10.5 WGAN-GP . 451
10.5.1 WGAN-GP 算法. 451
10.5.2 训练WGAN-GP 生成人脸:基于TensorFlow 1.x . 452
10.5.3 训练WGAN-GP 生成人脸:基于TensorFlow 2.0 . . 462
10.6 PG-GAN 和TL-GAN . . 469
10.7 本章小结. . 473
|
內容試閱:
|
前言
在过去的几年中,人工智能和深度学习是一个不断被提及的话题,最令大众熟知的恐怕就是
AlphaGo 与柯洁、李世乭的围棋大战了。而最近,人工智能OpenAI Five 在DOTA 2 的比赛中击败
了世界冠军OG,人工智能的发展总会给人带来惊喜。除了上述大事件,人工智能和深度学习
早就深入我们的生活当中,比如无人驾驶汽车、人脸识别,或者订外卖时App 给我们做的推荐。
在经历了互联网、移动互联网的浪潮之后,可以说现在我们已经步入了人工智能的时代。
我第一次接触机器学习和深度学习时就被深深地吸引了,感觉自己就像一块海绵被投入到大
海里,看书、看视频、看源码,学习新的知识使我感到非常兴奋。相信此刻的你也跟当年学习的
我的状态是一样的吧,本书将我对深度学习的理解、从开源社区学到的知识分享给大家,希望能
为你的学习提供一些帮助。
本书以案例的形式,讲解各种深度学习理论和相应场景的实践,包含TensorFlow 1.x 和TensorFlow
2.0 的代码实现。全书共分10 章。第1 章讲解了卷积神经网络理论知识,第2 章讲解了如
何进行CIFAR-100 图像分类实践。第3 章介绍了循环神经网络(RNN 和LSTM),以及在彩票预
测和古诗生成上的实践。在第3 章的最后,介绍了Seq2Seq、Transformer 和BERT 模型。第4 章
以电影推荐系统为例,分享了推荐系统的实现。第5 章介绍了广告点击率预测。第6 章讲解了人
脸识别的实践,包含使用OpenCV、dlib 和MTCNN 进行人脸检测,使用dlib、FaceNet 和VGG16
等方式提取人脸特征,然后讨论了比较人脸特征的几种方式。最后,使用上述技术实现了一个在
视频中找人的应用。第7 章分析了AlphaGo 和AlphaZero 的论文原文,讲解了蒙特卡罗树搜索
(MCTS)和神经网络的结构,并且通过实现中国象棋复现了AlphaZero。第8 章介绍了OCR 在
汉字识别上的应用,并且讲解了BiLSTM 的多种类型,最后实现了一个端到端的汉字识别网络。
第9 章介绍了DQN 算法,用于玩Flappy Bird。然后介绍了OpenAI Baselines 和Gym 的用法,并
用于玩超级马里奥。最后介绍了OpenAI 提出的具有好奇心的强化学习算法。第10 章讲解了
生成对抗网络(GAN)及衍生的变种DCGAN、WGAN 和WGAN-GP 算法,用于人脸生成的实
践。最后介绍了PG-GAN 和TL-GAN 的理论。
限于篇幅,以及作者能力有限,书中难免有错漏之处,本书仅仅是将作者掌握的知识做了总
结与分享。当然,这些知识不属于我个人,首先要感谢那些工作在人工智能第一线的科学家们,
是他们将研究成果公布出来,让大家可以阅读论文和博客。更要感谢开源社区的贡献者们,使我
们可以阅读源码参考学习。还要感谢同样喜欢技术分享的人们,我所能做的跟他们一样,就是将
分享的火炬继续传递下去。书中在引用时都会给出引用的出处,在这里一并表示感谢。
写作本书的过程,是对自己所学知识的一次梳理,回过头来重新审视自己对某些知识的理
解,又是一次成长。同时,写作的过程又是孤独的、寂寞的,有时觉得自己就像在山洞里练剑一
样。感谢我的妻子对我的理解和支持,在写作期间,她在国内带着孩子,听从了我在交稿前不
要来打扰的安排。最要感谢的是我的妈妈,是她培养了我学习与钻研的习惯。最后还要感谢电
子工业出版社的郑柳洁和葛娜老师,她们对本书的出版和编辑提供了很多专业性的指导和帮助,
没有她们的付出,本书无法与大家见面。
希望本书的内容能够为你提供帮助,权当抛砖引玉,为你的深度学习知识打下基础。
程世东
2019 年4 月于日本
|
|