神经网络在深度学习和人工智能中发挥着非常重要的作用,其应用领域非常广泛,涵盖从医疗诊断、财务预测到机器诊断等多个领域。
《神经网络设计与实现》旨在指导你以实用的方式学习神经网络。书中将简要介绍感知器网络,从而帮助你入门。然后,你将获得有关机器学习的见解,并了解人工智能的未来。接下来,你将研究如何使用嵌入来处理文本数据,并学习长短期记忆网络在解决常见自然语言处理问题中的作用。该书还将演示如何实现高级概念,包括迁移学习、生成对抗网络、自编码器和强化学习,以及有关神经网络领域新进展的更多内容。
在完成该书的学习后,你将掌握构建、训练和优化自己的神经网络模型所需的技能,该模型能够提供可预测的解决方案。通过阅读该书,你将:
●了解如何使用反向传播训练网络。
●了解迁移学习的概念,以使用Keras和VGG网络解决任务。
●探索如何加载和转换图像以用于神经网络。
●掌握LSTM和NLP等高级、复杂的深度学习概念,以掌握新知识。
●研究如何将神经网络应用于多个领域。
●探索创新算法,例如生成对抗网络和深度强化学习。
●解决神经网络开发面临的共同挑战。
适读人群 :本书为中阶书籍,适合对AI和深度学习感兴趣并且想进一步提高技能的读者阅读。 系统性——本书系统地整理了神经网络的知识体系,从机器学习基础、深度学习和高级应用领域三个层面来串联神经网路所涉及的知识点,使读者对神经网络技术的理解更具系统性、条理性和全面性。
可读性——本书在编排上由浅入深,在语言表达上力求通俗易懂,并通过增加图例、示例以及必要的数学推导来理解抽象的概念。同时提供了延伸阅读,便于读者查用。
实践性——本书通过解决具体问题(如计算机视觉问题、NLP问题等)来介绍神经网络和深度学习的核心理论。
译 者 序
“暮色苍茫看劲松,乱云飞渡仍从容。天生一个仙人洞,无限风光在险峰。”
深度学习自2006年正式提出以来,经过15年多的发展,无论是在理论还是在实际应用方面,都得到了突破性的进展。它使人工智能(AI)产生了革命性的突破,让人们切实领略到人工智能给生活带来改变的潜力。机器学习与深度学习因而成为很多AI公司、科研院所和高校的主要研究内容。
近年来,深度学习、迁移学习与强化学习已经成为独立的研究分支,学术界和产业界在理论、算法和应用方面均取得了长足发展,深度学习+场景/强化学习+场景的AI产品已经给人类带来了很多方便。
本书从机器学习基础、深度学习应用和高级机器学习这三个方面入手,结合算法理论、代码实现和应用场景,介绍了机器学习的新动向和新技术。全书分为三部分,第一部分为神经网络入门。第1章主要介绍人工智能的历史、机器学习概述和监督学习算法。第2章介绍神经网络基础、感知器、神经网络以及FFNN算法实现。第二部分为深度学习应用。第3章主要介绍基于卷积神经网络的图像处理。第4章介绍文本挖掘。第5章介绍循环神经网络。第6章介绍如何利用迁移学习重用神经网络。第三部分为高级应用领域。第7章主要对生成对抗网络的挑战、发展变化和时间表进行了介绍,并实现了DCGAN、CycleGAN、ProGAN、StarGAN、StyleGAN等算法。第8章主要对自编码器、损失函数和遇到的挑战进行了介绍,并实现了变分自编码器。第9章对深度置信网络(DBN)的架构、训练和调参进行了介绍。第10章主要讲解了强化学习的基本定义,并介绍了Q-learning和冰湖问题。第11章首先对本书进行了总结,然后对人工智能和机器学习的未来进行了展望,其中包括对AI的可解释性和安全性等问题的讨论。
本书的翻译工作由四川省农业科学院遥感应用研究所郭涛和吉林大学朱梦瑶发起并组建翻译团队完成。其中四川外国语大学成都学院余秋琳负责第1、2和11章,北华航天工业学院赵子辉负责第3、4和5章,吉林大学朱梦瑶负责第8、9和10章,郭涛负责第6章、第7章和前言等内容,并由郭涛和朱梦瑶负责统稿、校对和审核。在此感谢所有参与本书的翻译校对和技术审核的人员,感谢你们对本书的出版做出的贡献。
鉴于本书涉及的广度和深度,以及译者团队的水平,本书的翻译难免有错漏之处,欢迎各位读者在阅读过程中将本书的问题和勘误提交至Github(https://github.com/guotao0628/Hands-On-Neural-Networks)。
最后,感谢机械工业出版社华章分社的王春华编辑和李美莹编辑,她们为保证本书的质量做了大量的编辑和校对工作,在此深表谢意。
郭 涛
2021年
列奥纳多·德·马尔希
(Leonardo De Marchi)
目前是Badoo的数据科学家主管,Badoo是世界上的大型交友网站之一,拥有超过4亿名用户。他也是ideai.io(一家专门从事机器学习培训的公司)的首席教练,为大型机构和有活力的初创企业提供技术和管理培训。他拥有人工智能专业硕士学位,曾在体育界担任数据科学家。
劳拉·米切尔
(Laura Mitchell)
目前是Badoo的首席数据科学家。Laura在NLP、图像分类和推荐系统等项目的交付方面具有丰富的实践经验,包括从最初的构思到产品化。她热衷于学习新技术并紧跟行业趋势。
译者序
前言
第一部分 神经网络入门
第1章 有监督学习入门2
1.1 人工智能的历史2
1.2 机器学习概述4
1.2.1 有监督学习4
1.2.2 无监督学习4
1.2.3 半监督学习5
1.2.4 强化学习5
1.3 配置环境6
1.3.1 了解虚拟环境7
1.3.2 Anaconda8
1.3.3 Docker9
1.4 Python有监督学习实践9
1.5 特征工程11
1.6 有监督学习算法14
1.6.1 指标15
1.6.2 模型评估17
1.7 总结19
第2章 神经网络基础20
2.1 感知器20
2.2 Keras27
2.3 前馈神经网络29
2.3.1 反向传播介绍31
2.3.2 激活函数33
2.3.3 Keras实现36
2.4 从头开始使用Python编写FFNN40
2.4.1 FFNN的Keras实现43
2.4.2 TensorBoard45
2.4.3 XOR问题中的TensorBoard45
2.5 总结48
第二部分 深度学习应用
第3章 基于卷积神经网络的图像处理50
3.1 理解卷积神经网络50
3.2 卷积层52
3.2.1 池化层55
3.2.2 丢弃层57
3.2.3 归一化层57
3.2.4 输出层57
3.3 Keras中的卷积神经网络58
3.3.1 加载数据58
3.3.2 创建模型60
3.3.3 网络配置60
3.4 Keras表情识别63
3.5 优化网络68
3.6 总结70
第4章 利用文本嵌入71
4.1 面向NLP的机器学习71
4.2 理解词嵌入73
4.2.1 词嵌入的应用73
4.2.2 Word2vec74
4.3 GloVe80
4.3.1 全局矩阵分解80
4.3.2 使用GloVe模型82
4.3.3 基于GloVe的文本分类85
4.4 总结87
第5章 循环神经网络88
5.1 理解循环神经网络88
5.1.1 循环神经网络原理90
5.1.2 循环神经网络类型91
5.1.3 损失函数94
5.2 长短期记忆95
5.2.1 LSTM架构95
5.2.2 Keras长短期记忆实现98
5.3 PyTorch基础知识102
5.4 总结106
第6章 利用迁移学习重用神经网络107
6.1 迁移学习理论107
6.1.1 多任务学习介绍108
6.1.2 重用其他网络作为特征提取器108
6.2 实现多任务学习108
6.3 特征提取110
6.4 在PyTorch中实现迁移学习110
6.5 总结116
第三部分 高级应用领域
第7章 使用生成算法118
7.1 判别算法与生成算法118
7.2 理解GAN120
7.2.1 训练GAN121
7.2.2 GAN面临的挑战123
7.3 GAN的发展变化和时间线124
7.3.1 条件GAN125
7.3.2 DCGAN125
7.3.3 Pix2Pix GAN131
7.3.4 StackGAN132
7.3.5 CycleGAN133
7.3.6 ProGAN135
7.3.7 StarGAN136
7.3.8 BigGAN138
7.3.9 StyleGAN139
7.3.10 Deepfake142
7.3.11 RadialGAN143
7.4 总结144
7.5 延伸阅读144
第8章 实现自编码器146
8.1 自编码器概述146
8.2 自编码器的应用147
8.3 瓶颈和损失函数147
8.4 自编码器的标准类型148
8.4.1 欠完备自编码器148
8.4.2 多层自编码器151
8.4.3 卷积自编码器152
8.4.4 稀疏自编码器155
8.4.5 去噪自编码器156
8.4.6 收缩自编码器157
8.5 变分自编码器157
8.6 训练变分自编码器159
8.7 总结164
8.8 延伸阅读164
第9章 DBN165
9.1 DBN概述165
9.1.1 贝叶斯置信网络166
9.1.2 受限玻尔兹曼机167
9.2 DBN架构176
9.3 训练DBN177
9.4 微调179
9.5 数据集和库179
9.5.1 示例—有监督的DBN分类180
9.5.2 示例—有监督的DBN回归181
9.5.3 示例—无监督的DBN分类182
9.6 总结183
9.7 延伸阅读183
第10章 强化学习184
10.1 基本定义184
10.2 Q-learning介绍187
10.2.1 学习目标187
10.2.2 策略优化188
10.2.3 Q-learning方法188
10.3 使用OpenAI Gym188
10.4 冰湖问题191
10.5 总结199
第11章 下一步是什么200
11.1 本书总结200
11.2 机器学习的未来201
11.3 通用人工智能202
11.3.1 AI伦理问题203
11.3.2 可解释性203
11.3.3 自动化204
11.3.4 AI安全性204
11.3.5 问责制205
11.4 结语205