资深数据科学家撰写,从实战角度系统讲解TensorFlow基本概念及各种应用实践。真实的应用场景和数据,丰富的代码实例,详尽的操作步骤,为你深度实践TensorFlow提供翔实指导。
本书由资深数据科学家撰写,从实战角度系统讲解TensorFlow基本概念及各种应用实践。真实的应用场景和数据,丰富的代码实例,详尽的操作步骤,带你由浅入深系统掌握TensorFlow机器学习算法及其实现。
全书共11章,第1章介绍TensorFlow的基本概念;第2章介绍如何在计算图中连接算法组件,创建一个简单的分类器;第3章重点介绍如何使用TensorFlow实现各种线性回归算法;第4章介绍支持向量机(SVM)算法;第5章介绍如何使用数值度量、文本度量和归一化距离函数实现最近邻域算法;第6章讲述如何使用TensorFlow实现神经网络算法;第7章阐述TensorFlow实现的各种文本处理算法。第8章扩展神经网络算法;第9,解释在TensorFlow中如何实现递归神经网络(RNN)算法;第10章介绍TensorFlow产品级用例和tips;第11章展示TensorFlow如何实现k-means算法、遗传算法和解决常微分方程(ODE)等。
Nick McClure 资深数据科学家,目前就职于美国西雅图PayScale公司。曾经在凯撒娱乐集团工作。他在蒙大拿大学和圣本尼迪克与圣约翰大学学院的应用数学专业获得学位。他热衷于数据分析、机器学习和人工智能。Nick有时会把想法写成博客(http://fromdata.org/)或者推特(@nfmcclure)。
目 录
译者序
作者简介
审校者简介
前言
第1章 TensorFlow基础 1
1.1 TensorFlow介绍 1
1.2 TensorFlow如何工作 1
1.3 声明张量 3
1.4 使用占位符和变量 6
1.5 操作(计算)矩阵 7
1.6 声明操作 10
1.7 实现激励函数 12
1.8 读取数据源 14
1.9 学习资料 19
第2章 TensorFlow进阶 20
2.1 本章概要 20
2.2 计算图中的操作 20
2.3 TensorFlow的嵌入Layer 21
2.4 TensorFlow的多层Layer 23
2.5 TensorFlow实现损失函数 26
2.6 TensorFlow实现反向传播 30
2.7 TensorFlow实现随机训练和批量训练 34
2.8 TensorFlow实现创建分类器 37
2.9 TensorFlow实现模型评估 40
第3章 基于TensorFlow的线性回归 45
3.1 线性回归介绍 45
3.2 用TensorFlow求逆矩阵 45
3.3 用TensorFlow实现矩阵分解 47
3.4 用TensorFlow实现线性回归算法 49
3.5 理解线性回归中的损失函数 52
3.6 用TensorFlow实现戴明回归算法 55
3.7 用TensorFlow实现lasso回归和岭回归算法 58
3.8 用TensorFlow实现弹性网络回归算法 60
3.9 用TensorFlow实现逻辑回归算法 62
第4章 基于TensorFlow的支持向量机 66
4.1 支持向量机简介 66
4.2 线性支持向量机的使用 67
4.3 弱化为线性回归 72
4.4 TensorFlow上核函数的使用 77
4.5 用TensorFlow实现非线性支持向量机 82
4.6 用TensorFlow实现多类支持向量机 85
第5章 最近邻域法 90
5.1 最近邻域法介绍 90
5.2 最近邻域法的使用 91
5.3 如何度量文本距离 95
5.4 用TensorFlow实现混合距离计算 98
5.5 用TensorFlow实现地址匹配 101
5.6 用TensorFlow实现图像识别 105
第6章 神经网络算法 109
6.1 神经网络算法基础 109
6.2 用TensorFlow实现门函数 110
6.3 使用门函数和激励函数 113
6.4 用TensorFlow实现单层神经网络 117
6.5 用TensorFlow实现神经网络常见层 120
6.6 用TensorFlow实现多层神经网络 126
6.7 线性预测模型的优化 131
6.8 用TensorFlow基于神经网络实现井字棋 136
第7章 自然语言处理 143
7.1 文本处理介绍 143
7.2 词袋的使用 144
7.3 用TensorFlow实现TF-IDF算法 149
7.4 用TensorFlow实现skip-gram模型 155
7.5 用TensorFlow实现CBOW词嵌入模型 162
7.6 使用TensorFlow的Word2Vec预测 167
7.7 用TensorFlow实现基于Doc2Vec的情感分析 172
第8章 卷积神经网络 181
8.1 卷积神经网络介绍 181
8.2 用TensorFlow实现简单的CNN 182
8.3 用TensorFlow实现进阶的CNN 188
8.4 再训练已有的CNN模型 196
8.5 用TensorFlow实现模仿大师绘画 199
8.6 用TensorFlow实现DeepDream 205
第9章 递归神经网络 211
9.1 递归神经网络介绍 211
9.2 用TensorFlow实现RNN模型进行垃圾短信预测 212
9.3 用TensorFlow实现LSTM模型 218
9.4 Stacking多个LSTM Layer 226
9.5 用TensorFlow实现Seq2Seq翻译模型 229
9.6 TensorFlow实现孪生RNN预测相似度 235
第10章 TensorFlow产品化 243
10.1 简介 243
10.2 TensorFlow的单元测试 243
10.3 TensorFlow的并发执行 247
10.4 分布式TensorFlow实践 250
10.5 TensorFlow产品化开发提示 252
10.6 TensorFlow产品化的实例 254
第11章 TensorFlow的进阶应用 257
11.1 简介 257
11.2 TensorFlow可视化:Tensorboard 257
11.3 Tensorboard的进阶 260
11.4 用TensorFlow实现遗传算法 262
11.5 TensorFlow实现k-means算法 266
11.6 用TensorFlow求解常微分方程问题 270
The Translator’s Words
译 者 序
2017年3月底,华章公司的编辑邀请我翻译这本书。当时收到原书目录和样章时,大体浏览了一遍,感觉翻译难度不大。因为TensorFlow比较火,加上自身对机器学习及其算法有一定功底,前期也翻译了不少国外优秀的技术文章(可参见公众号:神机喵算),加之国内可学习的TensorFlow资料太少,所以我希望做出一些努力来帮助对TensorFlow感兴趣的读者。
Google公司开发的TensorFlow深度学习库因其简单易学、应用场景广泛已经快成为各家公司开展人工智能研究的标配了。TensorFlow采用数据流图进行数值计算。节点代表计算图中的数学操作,计算中的边表示多维数组,即张量。TensorFlow灵活的架构使其可以在多种设备(台式机、服务器或移动设备)的CPU或者GPU上进行计算。自从TensorFlow诞生以来,其开发版更新和功能优化非常快,当前已经发布到1.2.0。并且基于TensorFlow开发的深度学习库也越来越多,其中比较优秀的是Keras。Keras是基于TensorFlow或者Theano的,由Python编写的高级神经网络API,并且TensorFlow也提供支持Keras的API。
本书详细讲解了TensorFlow的方方面面,毫不夸张地说,如果读者能够坚持踏踏实实做完本书所有实战项目,则基本可以开始使用TensorFlow实际工作。最后本书还给出了TensorFlow产品级应用的最佳实践,以及扩展用法。
总之,本书适合广大对TensorFlow感兴趣的初中级读者。随着AI的兴起,会有越来越多的读者学习TensorFlow,希望本书能帮到大家。如果想进一步学习,那就要多看机器学习算法相关的书籍或者论文,并把TensorFlow的源代码研读几遍。
最后,感谢家人和朋友的帮助和支持。由于本人水平有限,加之翻译时间仓促,书中难免会出现错误。读者可通过本人公众号——神机喵算,反馈问题,发现问题后,我一定会虚心接受批评并立即改正,并实时在公众号更新勘误,避免其他读者再入“坑”。
曾益强
2017年6月
About the Author
作者简介
Nick McClure,资深数据科学家,目前就职于美国西雅图PayScale公司,曾经在Zillow公司和Caesar抯 Entertainment公司工作,获得蒙大拿大学和圣本尼迪克与圣约翰大学的应用数学专业学位。
他热衷于数据分析、机器学习和人工智能。Nick有时会把想法写成博客(http://fromdata.org/)或者发推特(@nfmcclure)。
感谢父母,他们总是鼓励我追求知识。也感谢朋友和同事能够给出很好的建议。本书的完成得益于开源社区的不懈努力,以及TensorFlow相关项目的良好文档说明。
这里,要特别感谢Google公司TensorFlow开发人员。他们给出了优秀的官方文档、教程和示例。
About the REVIEWERS
审校者简介
Chetan Khatri,具有5年工作经验的数据科学研究者。他现在是印度Accion Labs公司技术部门的负责人,曾就职于印度手游巨头Nazara Games公司,领导负责游戏与电信业务。
他在 KSKV Kachchh大学计算机科学和数据分析专业取得硕士学位,致力于数据科学、机器学习、AI和IoT等方面的学术和会议演讲交流。他在学术研究和工业实践两方面都有特长,所以在排除两者间的隔阂方面有不错的成就。他是Kachchh大学多门课程的合作者,比如数据分析、IoT、机器学习、AI和分布式数据库。他也是Python社区(PyKuth)的建立者之一。
目前,他正致力于智能IoT设备与机器学习、增强学习和分布式计算方面的结合。
感谢Kachchh大学计算机科学学院Devji Chhanga教授引导我走上数据分析研究的道路。
感谢Shweta Gorania教授介绍遗传算法和神经网络算法。
最后,感谢家人的支持。
PREFACE
前 言
2015年11月,Google公司开源TensorFlow,随后不久TensorFlow成为GitHub上最受欢迎的机器学习库。TensorFlow创建计算图、自动求导和定制化的方式使得其能够很好地解决许多不同的机器学习问题。
本书介绍了许多机器学习算法,将其应用到真实场景和数据中,并解释产生的结果。
本书的主要内容
第1章介绍TensorFlow的基本概念,包括张量、变量和占位符;同时展示了在TensorFlow中如何使用矩阵和各种数学操作。本章末尾讲述如何访问本书所需的数据源。
第2章介绍如何在计算图中连接第1章中的所有算法组件,创建一个简单的分类器。接着,介绍计算图、损失函数、反向传播和训练模型。
第3章重点讨论使用TensorFlow实现各种线性回归算法,比如,戴明回归、lasso回归、岭回归、弹性网络回归和逻辑回归,也展示了如何在TensorFlow计算图中实现每种回归
算法。
第4章介绍支持向量机(SVM)算法,展示如何在TensorFlow中实现线性SVM算法、非线性SVM算法和多分类SVM算法。
第5章展示如何使用数值度量、文本度量和归一化距离函数实现最近邻域法。我们使用最近邻域法进行地址间的记录匹配和MNIST数据库中手写数字的分类。
第6章讲述如何使用TensorFlow实现神经网络算法,包括操作门和激励函数的概念。随后展示一个简单的神经网络并讨论如何建立不同类型的神经网络层。本章末尾通过神经网络算法教TensorFlow玩井字棋游戏。
第7章阐述借助TensorFlow实现的各种文本处理算法。我们展示如何实现文本的“词袋”和TF-IDF算法。然后介绍CBOW和skip-gram模型的神经网络文本表示方式,并对于Word2Vec和Doc2Vec用这些方法来做预测。
第8章扩展神经网络算法,说明如何借助卷积神经网络(CNN)算法在图像上应用神经网络算法。我们展示如何构建一个简单的CNN进行MNIST数字识别,并扩展到CIFAR-10任务中的彩色图片,也阐述了如何针对自定义任务扩展之前训练的图像识别模型。本章末尾详细解释TensorFlow实现的模仿大师绘画和Deep-Dream算法。
第9章解释在TensorFlow中如何实现递归神经网络(RNN)算法,展示如何进行垃圾短信预测和在莎士比亚文本样本集上扩展RNN模型生成文本。接着训练Seq2Seq模型实现德语-英语的翻译。本章末尾展示如何用孪生RNN模型进行地址记录匹配。
第10章介绍TensorFlow产品级用例和开发提示,同时介绍如何利用多处理设备(比如,GPU)和在多个设备上实现分布式TensorFlow。
第11章展示TensorFlow如何实现k-means算法、遗传算法和求解常微分方程(ODE),还介绍了Tensorboad的各种用法和如何查看计算图指标。
阅读本书前的准备
书中的章节都会使用TensorFlow,其官网为https://www.tensorflow.org/,它是基于Python 3(https://www.python.org/downloads/)编写的。大部分章节需要访问从网络中下载的数据集。
本书的目标读者
本书适用于有经验的机器学习读者和Python程序员。有机器学习背景的读者会发现TensorFlow的代码很有启发性;有Python编程经验的读者会觉得代码注释极具参考性。
模块说明
在本书中,你会频繁看到开始、动手做、工作原理、延伸学习和参考这几个模块。
为了系统地学习相关技术,下面简单解释一下:
开始
该节告诉读者该技术的内容,描述如何准备软件或者前期的准备工作。
动手做
具体的操作步骤。
工作原理
详细解释前一节发生了什么。
延伸学习
附加资源,以供读者延伸学习。
参考
提供有用的链接和有帮助的资源信息。
下载示例代码
读者可登录华章网站(www.hzbook.com)下载本书示例代码文件。
我一直对机器学习领域很感兴趣,但因为工作比较忙,总是没有时间系统地学习。最近偶然发现了《TensorFlow机器学习实战指南》这本书,真的太惊喜了!这本书的编写风格非常吸引人,它不是那种枯燥乏味的技术手册,而是像一个经验丰富的老师在和你聊天,循循善诱地引导你学习。最让我喜欢的是,它非常注重概念的理解,不会上来就讲代码,而是先用通俗易懂的语言解释清楚每一个概念背后的逻辑,然后再给出相应的代码实现。这让我这种初学者也能轻松跟上节奏。我特别喜欢书中关于神经网络基础的讲解,它从最简单的感知机讲起,然后逐步构建出多层感知机、卷积神经网络、循环神经网络等等,每一个模型的讲解都非常清晰,而且配有精美的插图,让我能够直观地理解模型的结构和工作原理。书中的代码示例也写得非常规范,而且都附带了详细的注释,让我能够清楚地知道每一行代码的作用。我尝试着跟着书中的例子去运行代码,然后修改一些参数,观察结果的变化,这个过程让我对模型的行为有了更直观的感受。书中的案例也选择得非常贴切,涵盖了图像识别、自然语言处理等多个热门领域,让我能够感受到TensorFlow在不同领域的应用潜力。这本书真的帮我打下了坚实的TensorFlow基础,让我对机器学习有了更浓厚的兴趣,也给了我继续深入学习的信心。
评分作为一名在学术界摸爬滚打多年的研究者,我一直对TensorFlow在实际部署和生产环境中的应用充满好奇。《TensorFlow机器学习实战指南》这本书,可以说是在这个方面给了我极大的启发。我一直以为TensorFlow只是一个适合原型开发和实验的工具,但这本书向我展示了它在应对大规模数据集、构建高性能模型、甚至是在边缘设备上部署方面的强大能力。书中的一些章节,特别是关于模型优化和部署的部分,让我大开眼界。作者详细讲解了如何使用TensorFlow Lite进行移动端和嵌入式设备的部署,以及如何利用TensorFlow Serving进行高吞吐量的模型服务。这些内容对于我将研究成果转化为实际产品非常有价值。我特别欣赏书中对于模型可解释性的探讨,它并没有回避这个重要但常常被忽视的议题,而是提供了多种利用TensorFlow工具进行模型解释的方法。这对于提升模型的透明度和可信度至关重要。另外,书中对于分布式训练的讲解也让我受益匪浅,它让我认识到,在处理海量数据时,单机训练已经远远不够,而TensorFlow提供的分布式训练方案,能够有效地解决这个问题。我还在书中看到了关于模型量化和剪枝等方面的技术介绍,这些都是提升模型效率的关键手段。总的来说,这本书不仅仅是教你如何使用TensorFlow,更是教你如何利用TensorFlow去解决实际生产环境中的复杂问题。它为我打开了新的思路,也让我对TensorFlow的未来发展有了更深的认识。
评分我最近刚入手了《TensorFlow机器学习实战指南》,说实话,我之前对深度学习的一些概念总是有点雾里看花的感觉,特别是涉及到具体的框架实现,更是觉得复杂难懂。这本书的出现,完全颠覆了我的看法。它不像我之前看过的很多书那样,上来就扔一堆公式和理论,而是从一个非常实际的应用场景出发,然后逐步引出所需的TensorFlow知识点。这种“问题驱动”的学习方式,让我感觉自己不是在被动地接受信息,而是在主动地解决一个接一个的挑战。书中的代码示例非常具有指导意义,不仅仅是代码本身,更重要的是作者对每一行代码的解释都非常到位,他会告诉你为什么这么写,这样写有什么好处,甚至还会提供一些替代的写法以及它们之间的差异。我尝试着跟着书中的例子去敲代码,然后自己去修改一些参数,观察结果的变化,这个过程让我对模型的工作原理有了更深刻的理解。我印象特别深刻的是关于模型调优的那一部分,作者详细讲解了学习率、批量大小、正则化等各种超参数对模型性能的影响,并且给出了很多实用的调优技巧。我之前一直为模型的过拟合问题头疼,看完这一章后,我找到了很多有效的解决方法。此外,书中对于数据管道的讲解也非常细致,它让我意识到,在机器学习项目中,数据预处理和特征工程的重要性绝不亚于模型本身。书中的插图也相当精美,将复杂的网络结构描绘得一目了然,这对于我这样的视觉学习者来说,简直是太友好了。我非常肯定这本书的实践性,它让我相信,理论与实践是可以完美结合的,而这本书正是做到了这一点。
评分这本书简直是为我量身定做的!作为一名正在转型到机器学习领域的数据分析师,我一直被TensorFlow的强大和灵活性所吸引,但苦于找不到一本既能讲解理论又能指导实践的优秀教材。终于,在朋友的推荐下,我翻开了《TensorFlow机器学习实战指南》。从我拆开包装的那一刻起,我就能感受到它带来的专业与细致。封面设计简洁大气,但内涵却十分丰富。我迫不及待地翻开第一页,映入眼帘的是清晰的目录和序言,作者用平实的语言阐述了本书的写作初衷和目标读者,这让我立刻感到亲切。随后的章节更是让我惊喜连连,每一个概念的引入都循序渐进,概念的解释清晰易懂,而且紧接着就是精彩的代码示例,这些示例不仅仅是简单的“Hello World”,而是涵盖了数据预处理、模型构建、训练、评估等一系列真实项目会遇到的关键环节。作者并没有止步于理论的堆砌,而是将大量的篇幅用于讲解如何将这些理论知识转化为实际可行的代码,这一点对于我这种动手能力要求较高的人来说,简直是福音。书中的图表运用得恰到好处,将复杂的算法原理和模型结构可视化,大大降低了理解难度。而且,作者似乎非常了解初学者的痛点,在每个重要的知识点之后,都会有“注意事项”或者“常见问题解答”之类的提示,这真的太贴心了!我尤其喜欢它在介绍不同模型的章节,它会从模型的起源、核心思想讲起,然后深入到具体的实现细节,并且还会探讨不同模型的优缺点以及适用场景,这让我在选择合适的模型时有了更清晰的思路。总而言之,这本书的内容深度和广度都超出了我的预期,它不仅仅是一本技术手册,更像是一位经验丰富的导师,一步步引导我迈向TensorFlow的精通之路。
评分我是一位有一定Python编程基础,但对机器学习了解不深的开发者。《TensorFlow机器学习实战指南》这本书,完美地填补了我知识体系中的空白。它的结构安排非常合理,从最基础的概念入手,逐步深入到复杂的模型和技术。我特别欣赏作者在讲解中的“实战”精神,每一个理论点后面都紧跟着相应的代码实现,而且这些代码都经过了精心设计,易于理解和修改。书中的内容覆盖了TensorFlow的核心API,包括数据加载、模型构建、训练、评估以及部署等各个环节。我尤其喜欢它关于数据预处理和特征工程的章节,它让我意识到,在机器学习项目中,数据的好坏直接决定了模型的上限。书中提供的多种数据预处理技术和技巧,对我来说非常实用。而且,作者在讲解不同模型(如CNN、RNN、Transformer等)时,都非常注重其背后的数学原理和实际应用场景,这让我不仅仅是学会了如何“使用”TensorFlow,更是理解了“为什么”要这样做。这本书还包含了一些关于模型部署和优化的内容,这让我看到了将机器学习模型应用到实际项目中的可能性。我尝试着跟着书中的教程去搭建一个简单的图像识别模型,整个过程非常流畅,并且最终得到了一个不错的结果,这极大地增强了我的信心。这本书的内容详实,讲解清晰,代码示例丰富,是我学习TensorFlow过程中不可多得的优质资源。
评分当天买自己喜欢的商品,明天就可以到达客户的家中,为什
评分每年的京东读书节都会囤点书,快递很赞,书还没看先不说
评分423读书日优惠多多,真心划算,而且快递也是相当给力
评分代码有点多啊,满满的代码
评分强烈推荐!真正的深入浅出,很容易看下去,不像有些书,纯粹的列公式,晒程序。
评分大家制之作,内容不错,好书要一起分享!
评分书很不错啦 看不懂 看不懂是我自己有问题。。。。。。
评分上11点前动动手指,购买的商品,第二天上午就送到单位或
评分技术畅销书《白话大数据与机器学习》姊妹篇,YY大数据专家撰写,李学凌、朱频频、王庆法、王海龙联袂推荐
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.coffeedeals.club All Rights Reserved. 静流书站 版权所有