TensorFlow机器学习项目实战pdf/doc/txt格式电子书下载
本站仅展示书籍部分内容
如有任何咨询
请加微信10090337咨询
书名:TensorFlow机器学习项目实战pdf/doc/txt格式电子书下载
推荐语:深度学习人工智能参考书第二代机器学习实战指南提供深度学习神经网络等项目实战有效改善项目速度和效率
作者:(阿根廷)RodolfoBonnin,姚鹏鹏译
出版社:人民邮电出版社
出版时间:2017-11-01
书籍编号:30383245
ISBN:9787115463623
正文语种:中文
字数:38666
版次:
所属分类:互联网+-人工智能
版权信息
书名:TensorFlow机器学习项目实战
作者:(阿根廷)Rodolfo Bonnin
译者:姚鹏鹏
ISBN:9787115463623
版权所有 · 侵权必究
内容提要
TensorFlow是Google所主导的机器学习框架,也是机器学习领域研究和应用的热门对象。
本书主要介绍如何使用TensorFlow库实现各种各样的模型,旨在降低学习门槛,并为读者解决问题提供详细的方法和指导。全书共10章,分别介绍了TensorFlow基础知识、聚类、线性回归、逻辑回归、不同的神经网络、规模化运行模型以及库的应用技巧。
本书适合想要学习和了解 TensorFlow 和机器学习的读者阅读参考。如果读者具备一定的C++和Python的经验,将能够更加轻松地阅读和学习本书。
作者简介
Rodolfo Bonnin是一名系统工程师,同时也是阿根廷国立理工大学的博士生。他还在德国斯图加特大学进修过并行编程和图像理解的研究生课程。
他从2005年开始研究高性能计算,并在2008年开始研究和实现卷积神经网络,编写过一个同时支持CPU和GPU的神经网络前馈部分。最近,他一直在进行使用神经网络进行欺诈模式检测的工作,目前正在使用ML技术进行信号分类。
感谢我的妻子和孩子们,尤其感谢他们在我写这本书时表现出的耐心。感谢本书的审稿人,他们让这项工作更专业化。感谢Marcos Boaglio,他安装调试了设备,以使我能完成这本书。
审稿人简介
Niko Gamulin是CloudMondo的高级软件工程师,CloudMondo是美国的一家创业公司,在那里他开发并实现了系统的预测行为模型。他曾开发过深度学习模型,用于满足各种应用。2015年他从卢布尔雅那大学获得电气工程博士学位。他的研究集中在创建流失预测的机器学习模型。
我要感谢我最棒的女儿Agata,她激励我更多地了解、学习这一过程。同时也要感谢Ana,她是世界上最好的妻子。
前言
近年来,机器学习已经从科学和理论专家的技术资产转变为IT领域大多数大型企业日常运营中的常见主题。
这种现象开始于可用数据量的爆炸:从2005年到2011年,出现了多种廉价的数据捕获设备(具有集成GPS、数百万像素相机和重力传感器的手机)以及普及的新型高维数据捕获装置(3D LIDAR和光学系统,IOT设备的爆炸等),它们使得访问前所未有的大量信息成为了可能。
此外,在硬件领域,摩尔定律的尽头已经近在咫尺,于是促使大量并行设备的开发,这让用于训练同一模型的数据能够成倍增长。
硬件和数据可用性方面的进步使研究人员能够重新审视先驱者基于视觉的神经网络架构(卷积神经网络等)的工作,将它们用于许多新的问题。这都归功于具备普遍可用性的数据以及强悍的计算能力。
为了解决这些新的问题,机器学习的从业者,创建了许多优秀的机器学习包,如Keras、Scikyt-learn、Theano、Caffe和Torch。它们每个都拥有一个特定的愿景来定义、训练和执行机器学习模型。
2015年11月9日,Google公司进入了机器学习领域,决定开源自己的机器学习框架TensorFlow,Google内部许多项目都以此为基础。首次发布的是0.5版本,这与其他版本相比有一些缺点,这些在后面讨论。不能运行分布式模型就是其中很突出的一个缺点。
于是,这个小故事带我们来到了今天,TensorFlow成为了该领域开发人员的主要竞争对手之一。因为使用它的项目数量增加,对于任何数据科学的从业者来说,它作为一个工具箱的重要性正在逐步提高。
在本书中,我们将使用TensorFlow库实现各种各样的模型,旨在降低读者的学习门槛,并为解决问题提供详细的方法。
本书包含哪些内容
第1章,探索和转换数据,帮助读者理解TensorFlow应用程序的主要组件和其包含的主要的数据探索方法。
第2章,聚类,告诉你怎样定义相似性标准,并将数据元素分组为不同的类。
第3章,线性回归,帮助读者定义第一个数学模型来解释不同的现象。
第4章,逻辑回归,是用非常强大而简单的数学函数建模非线性现象的第一步。
第5章,简单的前向神经网络,帮助你理解主要组件和神经网络的机制。
第6章,卷积神经网络,解释了最近重新发现的一组特殊网络的功能和实际应用。
第7章,循环神经网络和LSTM,详细地解释了这个对时序数据非常有用的框架。
第8章,深度神经网络,提供混合类型神经网络的最新发展的概述。
第9章,规模化运行模型——GPU和服务,解释怎样通过将工作划分为协调单元来解决更复杂的问题。
第10章,库的安装和其他技巧,涵盖在Linux、Windows和Mac架构上安装TensorFlow的流程,并向你介绍一些有用的代码技巧,可以简化日常任务。
读这本书你需要什么
本书目标读者
本书面向希望机器学习任务的结果更快、更高效的数据分析师、数据科学家和研究人员。对于那些想要寻找一个用TensorFlow进行复杂数值计算的清晰指南的人来说,他们会发现本书非常有用。本书也适用于想要在各种场景中应用TensorFlow的开发人员。本书期望读者有一些C++和Python的经验。
约定
在本书中,你会发现一些不同的文本样式,用以区别不同种类的信息。下面举例说明。正文中的代码段、数据库表名、文件夹名称、文件名、文件扩展名、路径名、虚拟URL、用户输入和Twitter句柄如下所示:“我们可以通过使用include指令包括其他上下文。”
代码段的格式如下:
>>> import tensorflow as tf
>>> tens1 = tf.constant([[[1,2],[2,3]],[[3,4],[5,6]]])
>>> print sess.run(tens1)[1,1,0]
5
当我们想提醒你注意代码块的特定部分时,相关的行或部分会加粗显示:
>>> import tensorflow as tf
>>> tens1 = tf.constant([[[1,2],[2,3]],[[3,4],[5,6]]])
>>> print sess.run(tens1)[1,1,0]
5
命令行输入写成如下的形式:
# cp /usr/src/asterisk-addons/configs/cdr_mysql.conf.sample
/etc/asterisk/cdr_mysql.conf
新术语和重要词语以粗体显示。例如,你在屏幕上看到的字,在菜单栏或对话框中,出现在文本中,如下所示:“单击下一步按钮可以转到下一个界面。”
这个图标表示警告或需要特别注意的内容。
这个图标表示提示或者技巧。
读者反馈
欢迎提出反馈。如果你对本书有任何想法,喜欢它什么,不喜欢它什么,请让我们知道。要写出真正对大家有帮助的书,了解读者的反馈很重要。
一般的反馈,请发送电子邮件至feedback@packtpub.com,并在邮件主题中包含书名。
如果你有某个主题的专业知识,并且有兴趣写成或帮助促成一本书,请参考我们的作者指南http://www.packtpub.com/authors。
客户支持
现在,你是一位自豪的Packt图书的读者,我们会尽全力帮你充分利用你手中的书。
下载示例代码
你可以从异步社区(www.epubit.com.cn)下载本书最新版的示例代码。
当你下载完之后,请确保你使用如下最新版的软件来解压该文件:
●WinRAR / 7-Zip for Windows;
●Zipeg / iZip / UnRarX for Mac;
●7-Zip / PeaZip for Linux。
本书的代码同时维护于GitHub上https://github.com/PacktPublishing/Building-Machine- Learning-Projects-with-TensorFlow。我们在https://github.com/PacktPublishing/上维护了很多数据的代码和视频。欢迎查看!
勘误
虽然我们已尽力确保本书内容正确,但错误仍旧在所难免。如果你在我们的书中发现错误,不管是文本还是代码,希望能告知我们,我们不胜感激。这样做可以减少其他读者的困扰,帮助我们改进本书的后续版本。如果你发现任何错误,请访问http://www.packtpub.com/ submit-errata提交,选择你的书,单击勘误表提交表单的链接,并输入详细说明。勘误一经核实,你的提交将被接受,此勘误将被上传到本公司网站或添加到现有勘误表。从http://www.packtpub.com/support选择书名就可以查看现有的勘误表。
如果想要查看已经提交的勘误表,请登录https://www.packtpub.com/books/content/support 并在搜索框中输入书名,你所查找的信息就会显示在Errata部分了。
侵权行为
互联网上的盗版是所有媒体都要面对的问题。Packt非常重视保护版权和许可证。如果你发现我们的作品在互联网上被非法复制,不管以什么形式,都请立即为我们提供位置地址或网站名称,以便我们可以寻求补救。
请把可疑盗版材料的链接发到copyright@packtpub.com。非常感谢你帮助我们保护作者,以及保护我们给你带来有价值内容的能力。
问题
如果你对本书内容存有疑问,不管是哪个方面,都可以通过questions@packtpub.com联系我们,我们将尽最大努力来解决。
TensorFlow是一个开源软件库,用于使用数据流图进行数值计算。图中的节点表示数学运算,而图边表示在它们之间传递的多维数据数组(张量,tensor)。
该库包括各种功能,使你能够实现和探索用于图像和文本处理的前沿卷积神经网络(CNN)和循环神经网络(RNN)架构。由于复杂计算以图形的形式表示,TensorFlow可以用作一个框架,使你能够轻松开发自己的模型,并在机器学习领域中使用它们。
它还能够在最不同的环境中运行,从CPU到移动处理器,包括高度并行的GPU计算,并且新的服务架构能够运行所有命名选项的非常复杂的混合,见表1-1。
表1-1 TensorFlow
1.1 TensorFlow的主要数据结构——张量
TensorFlow基于张量数据管理。张量是数学领域的概念,并且被开发为向量和矩阵的线性代数项的泛化。
具体到TensorFlow中,一个张量就是一个张量类的实例,是绑定了相关运算的一个特定类型的多维数组。
1.1.1 张量的属性——阶、形状和类型
之前已经介绍过,TensorFlow使用张量数据结构来表征所有的数据。所有的张量都有一个静态的类型和动态的维数。所以你能够实时地改变一个张量的内部结构。
张量的另一个属性就是只有张量类型的对象才能在计算图的节点中传递。
我们开始来讨论张量的其他属性(从此处开始,我们所有说的张量都是TensorFlow中的张量对象)。
1.张量的阶
张量的阶(rank)表征了张量的维度,但是跟矩阵的秩(rank)不一样。它表示张量的维度的质量。
阶为1的张量等价于向量,阶为2的向量等价于矩阵。对于一个阶为2的张量,通过t[i, j]就能获取它的每个元素。对于一个阶为3的张量,需要通过t[i, j, k]进行寻址,以此类推,见表1-2。
表1-2 张量的阶
在下面这个例子中,我们创建了一个张量,并获取其元素:
>>> import tensorflow as tf
>>> tens1 = tf.constant([[[1,2],[2,3]],[[3,4],[5,6]]])
>>> print sess.run(tens1)[1,1,0]
5
这个张量的阶是3,因为该张量包含的矩阵中的每个元素,都是一个向量。
2.张量的形状
TensorFlow文档使用三个术语来描述张量的维度:阶(rank),形状(shape)和维数(dimension number)。表1-3展示了它们彼此之间的关系。
表1-3 三者之间的关系
图1-1的例子中,我们创建了一个三阶张量,并打印出它的形状。
图1-1 三阶张量
3.张量的数据类型
除了维度,张量还有一个确定的数据类型。你可以把表1-4中的任意一个类型指派给向量。
表1-4 张量数据类型
1.1.2 创建新的张量
我们既可以创建我们
....
本站仅展示书籍部分内容
如有任何咨询
请加微信10090337咨询