前言
深度学习正在为广泛的行业带来革命性的变化。对于许多应用来说,深度学习通过做出更快和更准确的预测,证明其已经超越人类的预测。《Python 深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》提供了自上而下和自下而上的方法来展示深度学习对不同领域现实问题的解决方案。这些应用程序包括计算机视觉、自然语言处理、时间序列预测和机器人。
《Python 深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》主要内容
第 1章 编程环境、 GPU计算、云解决方案和深度学习框架 主要包括与环境和 GPU计算相关的信息和方案。对于在不同平台上设置环境有问题的读者来说,这是一个必读内容。
第 2章 前馈神经网络 提供了与前馈神经网络有关的一系列方法,并作为其他章节的基础。本章的重点是为不同网络拓扑常见的实现问题提供解决方案。
第 3章 卷积神经网络 着重介绍卷积神经网络及其在计算机视觉中的应用。它提供了有关 CNN中使用的技术和优化方法。
第 4章 递归神经网络 提供了一系列与递归神经网络相关的方法,包括 LSTM(长短期记忆)网络和 GRU(门控递归神经元)。本章的重点是为循环神经网络的常见的实现问题提供解决方案。
第 5章 强化学习 涵盖强化学习神经网络的各种方法。本章介绍了在单智能体环境中深度强化学习的概念。
第 6章 生成对抗网络 提供了与无监督学习问题相关的一系列方法,这包括图像生成和超分辨率的生成对抗网络。
第 7章 计算机视觉 包含图像编码相关的数据处理方法,如视频帧。将提供使用 Python处理图像数据的经典技术,以及用于图像检测、分类和分割的最佳解决方案。
第 8章 自然语言处理 涵盖与文本数据处理相关的方法,包括与文本特征表示和处理相关的方法,包括文字嵌入和文本数据存储。
第 9章 语音识别和视频分析 涵盖与流数据处理相关的方法,这包括音频、视频和帧序列。
第 10章 时间序列和结构化数据 提供与数字运算相关的方法,这包括序列和时间序列。
第 11章 游戏智能体和机器人 专注于最先进的深度学习研究应用,这包括与多智能体环境(模拟)和自主车辆中游戏智能体相关的方法。
第 12章 超参数选择、调优和神经网络学习 阐述了神经网络学习过程涉及的方方面面。本章的总体目标是提供非常简洁和具体的技巧来提升网络性能。
第 13章 网络内部构造 介绍了一个神经网络的内部构造,这包括张量分解、权重初始化、拓扑存储、瓶颈特征和相应的嵌入。
第 14章 预训练模型 涵盖了流行的深度学习模型,如 VGG-16和 Inception V4。
学习《Python 深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》所需的准备工作:
《Python 深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》专注于 AI(人工智能)的 Python实现,而不是 Python本身。本书使用 Python 3来构建各种应用程序,专注于如何以最好的方式利用各种 Python库来构建真实世界的应用程序。本着这样的精神,尽力使所有的代码尽可能无误易懂,这将使读者能够轻松理解代码,并在不同的场景中使用它。
《Python 深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》读者对象:
《Python 深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》面向那些希望使用深度学习算法来创建真实 Python应用程序的机器学习专业人士。对机器学习概念和 Python库(如 NumPy、SciPy和 Scikit-learn)有深入的理解。此外,还需要具备线性代数和微积分的基本知识。
约定惯例:
在本书中,读者将看到许多区分不同类型信息的文本样式。下面是这些样式的一些例子,以及对其含义的解释。文本、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟 URL、用户输入和 Twitter句柄中的代码字如下所示:“为提供虚拟数据集,将使用 numpy和以下代码”。设置如下一段代码:
任意命令行的输入或输出如下:
新术语和关键词以黑体显示。
在屏幕上看到的单词,例如菜单或对话框,就会像这样出现在文本中:
警告或重要关注。
提示和技巧图标。
读者反馈
欢迎读者反馈意见。让作者了解读者对本书的看法,喜欢什么或不喜欢什么。读者反馈对于作者开发真正让读者受益的主题非常重要。
若要给作者反馈意见,只需发送邮件到 feedback@packtpub.com,并在邮件标题中注明书名。
如果有读者擅长的主题或有兴趣参与撰写或出版的书籍,请查看 www.packtpub.com/ authors上的作者指南。
用户支持
既然读者购买了 Packt出版社出版的书籍,那么出版社将会帮助读者获得最大收益。
示例代码下载
读者可以在 http://www.packtpub.com上根据账户下载本书的示例代码。如果想要购买本书电子版,可以访问 http://www.packtpub.com/support并注册,将直接通过电子邮件发送给读者。
下载代码文件步骤如下:
1)通过邮件地址和密码在网站上登录或注册。
2)鼠标指向顶部的SUPPORT选项。
3)单击Code Downloads & Errata。
4)在Search框中输入书名。
5)选择想要下载代码文件的书籍。
6)在下拉菜单中选择购买本书的方式。
7)单击Code Download。
下载完成后,请用以下软件最新版本来解压文件夹:
. WinRAR / 7-Zip for Windows。
. Zipeg / iZip / UnRarX for Mac。
. 7-Zip / PeaZip for Linux。
《Python 深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》的代码包还托管在 GitHub上,https://github.com/PacktPublishing/Hands-On-Deep-Learning-with-TensorFlow。另外在 https://github.com/PacktPublishing/上的大量图书和视频目录中还有其他代码包。请查阅!
勘误
尽管已尽力确保内容准确,但仍然难免会有错误。如果读者在书中发现了错误、文本或代码错误,如果能及时告知,将不胜感激。这样会帮助其他读者,并有助于在《Python 深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》的后续版本中进行完善。如果读者发现任何错误,请访问 http://www.packtpub.com/submit-errata告示。首先选择书名,点击勘误提交表单链接,然后输入详细的勘误内容。一旦通过验证,
原书前言
将会接受读者的提交并将勘误表上传网站,或在该标题的勘误部分下添加到现有的勘误表中。
若要查看已提交的勘误表,请访问 https://www.packtpub.com/books/content/support,并在搜索栏中输入书名。相关信息将会显示在 Errata部分中。
版权保护
在互联网上受版权保护的资料,涉及的盗版问题是一个存在于所有媒体的严重问题。 Packt出版社非常重视保护版权和许可。如果读者在网上发现任何非法复制的作品,请立即提供地址和网址,以便追踪索赔。请通过 copyright@packtpub.com联系我们,并提供疑似盗版材料的链接。非常感谢您在保护作者和为您提供宝贵内容方面的帮助。
问题
如果读者对本书有任何问题,请通过 questions@packtpub.com联系我们,我们将竭尽全力为读者解决。
www.PacktPub.com
电子书、折扣优惠等
下载本书相关的文件资料,请访问 www.PacktPub.com。
您是否知道 Packt出版社为每本出版发行的书籍都提供了电子书版本,其中包括 PDF和 ePub文件?您可以通过 www.PacktPub.com升级电子书版本,作为纸质版用户,还可以享受电子书的折扣。有关更多详细信息,请通过 customercare@packtpub.com与我们联系。
在 www.PacktPub.com,读者还可以阅读免费技术文章,订阅一系列免费时事通信,并获得 Packt出版社纸质书和电子书的独家折扣和优惠。
使用 Mapt可获得最需要的软件技能。 Mapt可让读者充分访问所有 Packt出版社的图书和视频课程,以及行业领先的工具,帮助读者规划个人发展并推动读者的事业发展。
为什么订阅?
. 可以在 Packt出版社发行的每本书中全面搜索。
. 复制、粘贴、打印和标注内容。
. 可通过 web浏览器访问。
本书审稿人
Radovan Kavicky是 GapData研究院的首席数据科学家和总裁( https://www.gapdata. org),该研究院总部设在斯洛伐克的布拉迪斯拉发市,致力于利用数据的力量和经济学智慧为公共利益服务。 Radovan Kavicky是一位具有教育和学术背景的宏观经济学家、专业咨询师和分析师(在公共和私营部门为客户提供咨询服务方面具有超过 8年的经验),他具有强大的数学和分析能力,能够提供顶级研究和分析工作。从 MATLAB、SAS和 Stata开始,目前转向 Python、R和 Tableau。他是斯洛伐克经济协会的成员,也是开放数据、开放预算举措和开放政府合作伙伴的传播者。他是 PyData Bratislava、R<-Slovakia和 SK/CZ Tableau用户组( skczTUG)的创始人。他曾在 TechSummit(Bratislava 2017)和 PyData
(Berlin 2017)峰会上发表演讲,并且是全球 Tableau #DataLeader网络( 2017)的成员。读者可以在 Twitter上 @radovankavicky、@GapDataInst或 @PyDataBA关注他。其完整档案和经历可参阅网页 https://www.linkedin.com/in/radovankavicky/和 https://github.com/ radovankavicky。
客户反馈意见
感谢读者购买这本 Packt出版社出版的书籍。在 Packt出版社,质量是编辑过程的核心所在。为了帮助我们改进工作,请在本书的亚马逊网页 http://www.amazon.com/dp/178712519X上留下诚恳的评论。
如果读者想加入我们的特约审稿团队,可以发送电子邮件给我们: customerreviews@packtpub.com。我们通过免费电子书和视频授予我们的特约审稿人以换取宝贵的反馈意见,以此帮助我们改进书籍的质量!
译者序
得益于大数据的涌现、运算力的提升和机器学习新算法(深度学习)的出现,人工智能的浪潮正在席卷全球,诸多词汇开始萦绕在我们的耳边,首当其冲的就是人工智能(Arti.cial Intelligence)、机器学习(Machine Learning)和深度学习(Deep Learning)。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,也就是研究、开发能够用于模拟、延伸和扩展人类智能的理论、方法、技术及应用系统的一门新的技术科学。该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。机器学习是实现人工智能的主流方法,最基本的做法是使用算法来解析数据从中进行学习,然后对真实世界中的事件做出决策和预测。与传统的为解决特定任务、硬编码的软件程序不同,机器学习是用大量的数据来“训练”模型,通过各种算法从数据中学习如何完成任务。而深度学习又是实现机器学习的核心技术,最初的深度学习是利用深度神经网络来解决特征表达的一种学习过程。深度神经网络可理解为包含多个隐层(数十层,甚至上百层)的大规模人工神经元互连结构。为了提高深度神经网络的训练效果,可对神经元的连接方法和激活函数等方面做出相应的调整,以使模式识别或预测结果达到最优。深度学习摧枯拉朽般地实现了各种目标,使得似乎所有的机器辅助功能都变为可能,诸如无人驾驶汽车、个性化医疗保健、人脸识别、自然语言处理、网上购物推荐等都是深度学习的典型应用场景。
《Python 深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》以自上而下和自下而上的方法来展示针对不同领域实际问题的深度学习解决方案,包括图像识别、自然语言处理、时间序列预测和机器人操纵等。还讨论了采用诸如 TensorFlow、PyTorch、Keras和 CNTK等流行的深度学习开源框架用于实际问题的解决方案及其优缺点。《Python 深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》内容包括:用于深度学习的编程环境、 GPU计算和云端解决方案;前馈神经网络与卷积神经网络;循环与递归神经网络;强化学习与生成对抗网络;深度学习用于计算机视觉、自然语言处理、语音识别、视频分析、时间序列预测、结构化数据分析以及游戏智能体( Agents)和机器人操控等。最后讨论了深度学习的超参数选择和神经网络的内在结构以及预训练模型的使用技巧等。《Python 深度学习实战:75个有关神经网络建模、强化学习与迁移学习的解决方案》将带读者进入深度学习的实战场景,通过使用诸如 TensorFlow与 Keras等 Python深度学习流行框架而进行自然语言处理、图像识别、时间序列预测等实战演练。本书适用于人工智能培训班、大学生创新创业实战训练、研究生课题演练、程序员实力提升等方面。本书的出版得益于机械工业出版社的推荐以及周冠武博士和研究生们付出的辛劳,在此一并致谢。
程国建谨识
2018年3月