TensorFlow神经网络编程pdf/doc/txt格式电子书下载
本站仅展示书籍部分内容
如有任何咨询
请加微信10090337咨询
书名:TensorFlow神经网络编程pdf/doc/txt格式电子书下载
推荐语:
作者:(印)曼普里特·辛格·古特(ManpreetSinghGhotra),(印)拉蒂普·杜瓦(RajdeepDua),马恩驰,陆健等译
出版社:机械工业出版社
出版时间:2018-10-01
书籍编号:30441327
ISBN:9787111611783
正文语种:中文
字数:49946
版次:1
所属分类:互联网+-人工智能
版权信息
书名:TensorFlow神经网络编程
作者:(印)曼普里特·辛格·古特(Manpreet Singh Ghotra) (印)拉蒂普·杜瓦(Rajdeep Dua)
译者:马恩驰 陆健
ISBN:9787111611783
版权所有 · 侵权必究
译者序
以深度学习为代表的人工智能在计算机视觉、语音识别、自然语言处理方面已经取得了突破性的进展。越来越多的公司更倾向于使用深度学习模型来解决业务场景中的问题。在众多的计算框架中,作为Google最新开源的深度学习计算框架,TensorFlow支持包括CNN、RNN、LSTM等多种神经网络模型。由于其强大丰富的功能、高度灵活的API,目前TensorFlow受到了业界的高度关注。
TensorFlow作为主流的深度学习框架仍在不断地演进。北京时间2018年3月31日,美国加利福尼亚州山景城的计算机历史博物馆举办了第二届TensorFlow开发者峰会,吸引了超过500名TensorFlow用户亲临现场,数万名来自世界各国的观众观看了本次峰会的直播。活动当天,TensorFlow团队和邀请嘉宾举办了多场技术讲座。编程语言方面,TensorFlow会支持越来越多的ML算法,对接以js和swift为代表的越来越多的编程语言。数据IO方面,输入数据的处理非常重要,良好的深度学习框架不仅需要支持不同类型的数据源以及数据格式,同时还要保证高吞吐率,以满足日益发展的硬件需求。本次大会引入了tf.data API。tf.data采用了标准数据库领域里的ETL概念,将主要的接口封装起来。并且可以通过chaining的方式组合。加载图片数据的速度可达13k/s。上层API上,大会还是推广Estimator的使用,Estimator在特征工程上提供了更便捷的上层API,可使特征值分箱、特征交叉、特征嵌入更便捷。值得一提的是,在浏览器上支持深度学习意义重大,因为浏览器可以有更好的可视化能力,在模型调参和增加结果的可解释性方面大有裨益,比如TensorFlow Playground就是成功的案例。
在商业领域应用方面,国内各大公司都在广泛使用TensorFlow,并在分布式训练、模型压缩与加速、在线预测方面进行了优化。在场景应用方面,我们团队开发的个性化表征学习和深度语义模型已全量上线,并取得了不错的abtest效果,训练框架均基于TensorFlow。其中,个性化表征学习主要应用于搜索排序,通过视频的文本信息和统计特征编码对视频进行表达,并通过视频观看的i2i和u2i分别在视频观看序列上对相关视频和用户视频观看兴趣做个性化表达。最后,基于曝光点击行为数据处理得到标签以进行训练,线上效果证明,用户在头部宽泛意图下对视频内容有较大的个性化需求。相关性计算的深度语义模型,通过对视频的文本信息进行编码,基于人工标注的标签数据进行训练。深度语义模型在尾部搜索意图下的视频结果有明显的体验提升。
本书简明扼要地介绍了如何基于TensorFlow实现神经网络,并在代码实现方面做了详尽的说明。全书由我和陆健翻译完成,在繁重的工作之余挤出时间完成翻译需要极大的毅力。其中,我参与翻译了第1、3、5、7、9章,陆健参与翻译了第2、4、6、8、10章。由于水平有限,书中可能会有翻译不妥之处,读者在阅读过程中若发现不妥之处,欢迎发邮件至maec1208@gmail.com。
感谢华章公司的王春华编辑为本书翻译及出版过程中所做的努力,感谢我的爱人和孩子在翻译过程中给予的支持,你们是我坚持奋斗的最大动力。
马恩驰
2018年9月于杭州
作者简介
Manpreet Singh Ghotra在企业和大数据软件方面拥有超过15年的软件开发经验。目前,他正致力于开发一个机器学习平台/API,该平台主要使用诸如TensorFlow、Keras、Apache Spark和PredictionIO等开源库和框架进行开发。Manpreet Singh Ghotra在各种机器学习应用场景上有丰富的经验,其中包括情感分析、垃圾邮件检测、图像调整和异常检测。他是世界上最大在线零售商之一机器学习组的成员,主要工作是使用R和Apache Mahout做运输时间优化。他拥有机器学习方面的研究生学位,为机器学习社区工作并贡献卓越。
Manpreet Singh Ghotra的GitHub地址为https://github.com/badlogicmanpreet。你也可以在LinkedIn上的https://in.linkedin.com/in/msghotra找到他。
本书献给我的父母Amrik Singh和Nirmal Kaur。感谢他们在我写作本书时,对我的支持。
Rajdeep Dua在云计算、大数据和机器学习领域拥有超过18年经验。他曾供职于Google的大数据工具BigQuery团队,也曾在VMware旗下的Greenplum大数据平台推广团队担任开发人员。他还与一个团队紧密合作并致力于把Spark作为一个功能模块移植到VMware的公有云和私有云上。Rajdeep Dua曾在印度一些声望较高的科技学校(海得拉巴国际教育学院、印度国际学校、德里国际教育研究所和浦那工程学院)负责Spark和大数据的教学工作。
目前,他在印度Salesforce公司领导开发者关系团队。他就Salesforce和Apache Prediction IO的机器学习库Einstein发布了很多博客和动手实验。
Rajdeep Dua在cluddatalab上发布了很多关于大数据和Spark的课程。他还在海德拉巴的W3C会议上发布了BigQuery和Google App Engine。他曾领导谷歌、VMware和微软的开发者关系团队,并在云计算的数百个会议上发表过演讲。
Rajdeep Dua对开源社区的贡献主要针对Docker、Kubernetes、Android、OpenStack、预测IO和cloudfoundry项目。
本书献给我的父母。感谢我的妻子Manjula以及儿子Navtej和Kairav在我花时间写作本书的时候陪伴我。
审校者简介
Giancarlo Zaccone拥有十多年管理科学和工业研究项目的经验。他曾在美国国家研究委员会C.N.R担任研究员,在那里他参与了与并行数值计算和科学可视化相关的项目。
目前,他是一家咨询公司的高级软件工程师,负责开发和测试太空与国防应用软件系统。
Giancarlo拥有那不勒斯费德里克二世的物理学硕士学位和罗马大学的二级科学计算硕士学位。
他是以下Packt出版书籍的作者:《Python Parallel Programming Cookbook》《Getting Started with TensorFlow》和《Deep Learning with TensorFlow》。
可以通过https://it.linkedin.com/in/giancarlozaccone联系他。
前言
如果你意识到到处都有围绕机器学习、人工智能或深度学习等术语的讨论,你可能会知道什么是神经网络。想知道如何利用它们有效地解决复杂的计算问题,或者怎样训练有效的神经网络?本书将教你所有这些以及更多的事情。
首先快速浏览流行的TensorFlow库,并了解如何用它训练不同的神经网络。之后你将深入了解神经网络的基础知识和它背后的数学原理,以及为什么选择TensorFlow训练神经网络。然后,你将实现一个简单的前馈神经网络。接下来,你将掌握使用TensorFlow进行神经网络优化的技术和算法。更进一步,你将学习如何实现一些更复杂的神经网络,如卷积神经网络(CNN)、递归神经网络(RNN)和深度信念网络(DBN)。在学习本书的过程中,为了使你对神经网络编程有深切的理解,将在真实世界的数据集上训练模型。你还将训练生成模型,并学习自编码器的应用。
在本书的最后,你将对如何利用TensorFlow的强大功能来训练各种复杂的神经网络有一个正确的理解,而不会有任何困惑。
本书内容
第1章介绍神经网络中基本的代数知识、概率论和优化方法。
第2章介绍感知机、神经元和前馈神经网络的基础知识。你还将学习各种模型学习的技巧,并主要学习称为反向传播的核心学习算法。
第3章介绍对神经网络学习至关重要的优化方法。
第4章详细讨论CNN算法。CNN及其在不同数据类型中的应用也包含在该章中。
第5章详细介绍RNN算法。RNN及其在不同数据类型中的应用也包括在该章中。
第6章介绍生成模型的基础知识以及不同的生成模型。
第7章包括深度信念网络的基础知识、它们与传统神经网络的区别以及它们的实现。
第8章介绍最近处在生成模型前沿的自编码器。
第9章讨论深度学习当前和未来的具体研究内容,并包括一个参考文献。
第10章讨论TensorFlow的环境配置、TensorFlow与Numpy的比较以及自动微分的概念。
准备工作
本书将指导你完成所有书中例子所需工具的安装:
·Python3.4或更高版本。
·TensorFlow 1.4或更高版本。
读者对象
本书适合希望使用神经网络的拥有统计背景的开发人员。虽然我们将使用TensorFlow作为神经网络的基础库,但本书可以作为从深度学习数学理论向实际应用转化的通用资源。如果你对TensorFlow和Python有一些了解并希望知道比API更底层的一些情况,本书会很适合你。
本书约定
表示警告或重要的注意事项。
表示提示和技巧。
下载示例代码及彩色图片
本书的示例代码及所有截图和样图,可以从http://www.packtpub.com通过个人账号下载,也可以访问华章图书官网http://www.hzbook.com,通过注册并登录个人账号下载。
神经网络使用者需要对神经网络的概念、算法和背后的数学知识有一个良好的理解。良好的数学直觉和多种技术的理解对于掌握算法的内在机制和获得良好模型效果是必需的。理解这些技术所需的数学知识和数学水平涉及多个方面,这也取决于你的兴趣。在本章中,你将通过了解用于解决复杂计算问题的数学知识来学习神经网络。本章内容涵盖了线性代数、微积分和神经网络优化的基础知识。
本章的主要目的是为接下来的章节建立数学基础。
本章将介绍以下内容:
·线性代数。
·微积分。
·最优化。
1.1 理解线性代数
线性代数是数学的一个重要分支。理解线性代数对于深度学习(即神经网络)至关重要。在本章中,我们将学习线性代数的关键和基础知识点。线性代数主要处理线性方程组。我们从使用矩阵和向量开始,而非标量。使用线性代数,我们能在深度学习中描述复杂的操作。
1.1.1 环境设置
在进入数学及其性质的领域之前,构建开发环境必不可少,因为它将为我们提供环境来实践我们所学的概念知识。这意味着我们需要安装编译器及其依赖和IDE(集成开发环境)来运行代码。
在PyCharm中设置Python环境
我们最好使用像PyCharm这样的IDE来编辑Python代码,因为它提供了开发工具和内置的编码帮助。代码检查使代码开发和调试更加简单快速,确保你专注于学习神经网络中的数学知识这个终极目标。
以下步骤将展示如何在PyCharm中设置本地Python环境:
1)请先到Preferences中确认你已经安装了TensorFlow库,如果没有安装,请参考https://www.tensorflow.org/install/上的说明安装TensorFlow:
2)选择TensorFlow的默认选项然后点击OK。
3)最后右击源文件点击Run\'matrices\':
1.1.2 线性代数的数据结构
下面将阐述线性代数的基础数据结构。
1.标量、向量和矩阵
标量、向量和矩阵是数学中的基本对象,基本定义如下:
·标量由一个单独的数或数值(称为量级)来表示。
·向量是有序排列的一列数。由唯一的索引来标识每个单独的数。向量表示空间中的一个点,向量中的每个元素给出了不同轴下的坐标。
·矩阵是一个二维数组,矩阵中的每个数通过索引(i, j)来标识。
2.张量
具有可变轴(即多维)的数组称为张量(tensor)。例如,对于三个轴,我们需要使用索引(i,j,k)来确定每个独立的数。
下图为
....
本站仅展示书籍部分内容
如有任何咨询
请加微信10090337咨询