TensorFlow 作为谷歌主导的开源深度学习框架,以其强大的性能和完善的生态支持,在开发者社群和工程实践中广为流行。
无数AI大厂、创业公司和个人开发者们都在使用 TensorFlow 开发和部署深度学习模型,TensorFlow 甚至成为人工智能的代名词。
CSDN发布的《2019-2020中国开发者调查报告》显示,TensorFlow 是目前 AI 工程师首选的深度学习框架。
然而,一片阴云始终萦绕在AI初学者的脑际,那就是——
TensorFlow 怎么这么难?
确实,相对于一些其他的深度学习框架,TensorFlow 往往给人留下“入门门槛高”的刻板印象。在旧版本的 TensorFlow 开发中,你不仅需要了解人工智能的相关知识,还要接受“计算图”“会话”“占位符”等各种新概念的考验,使得 TensorFlow 的学习曲线变得相当陡峭。除此以外,各种复杂琐碎的 API 也让人头痛,说 TensorFlow 是人工智能开发中的 C++ 也不为过。
谷歌的工程师们显然也注意到了这一问题。于是,在将近两年的迭代开发后,全新的 TensorFlow 2 在去年10月横空出世。TensorFlow 2 不仅使用与 PyTorch 类似的“即时执行模式”建立模型,还更为深入地整合了易用的深度学习高层框架 Keras。二者的强强联合使得 TensorFlow 2 的使用变得简明而优雅,学习门槛大为降低。
与此同时, TensorFlow 进一步强化了其在性能和生态上的巨大优势。无论是日益丰富的预训练模型库 TensorFlow Hub、谷歌的模型训练专用硬件 TPU,还是前沿的量子机器学习库 TensorFlow Quantum,开发者们几乎可以在 TensorFlow 开源生态内进行一切 AI 相关的研究、开发和部署工作。
对于初学者来讲,当你想学一个深度学习框架,我们究竟想要学到什么?
如果你是学生和研究者,你的预期是?
可能已经“啃”完了吴恩达(Andrew Ng)的机器学习公开课或者斯坦福大学的 UFIDL Tutorial,或是正在学习深度学习课程。你也可能已经了解了链式求导法则、梯度下降法和损失函数的概念,并且对卷积神经网络(CNN)、循环神经网络(RNN)和强化学习的理论也有了大致的认识。然而,你依然不知道这些模型如何在计算机中具体实现。
这时,你希望能有一个程序库,帮助你把书本上的公式和算法运用于实践,并建立模型,进行训练。
如果你是开发者和工程师,你的关注点是?
如果你是一位在 IT 行业沉淀多年的开发者或者工程师,也许已经遗忘了部分大学期间学到的数学知识(“多元函数……求偏微分?那是什么东西?”)。然而,你可能希望在产品中加入一些与人工智能相关的功能,抑或需要将已有的深度学习模型部署到各种场景中(模型的调用与部署)比如,
如何导出训练好的模型?
如何在本机使用已有的预训练模型?
如何在服务器、移动端、嵌入式设备甚至网页上高效运行模型?
......
所以,想要充分了解深度学习框架TensorFlow,不仅需要了解框架的特性和生态,更需要结合自己实际需求来进行针对性的训练和学习。
推荐大家阅读这本分为基础篇、部署篇、大规模训练篇、扩展篇、高级篇,被谷歌开发者社区官方推荐的“豹书”,针对不同的读者受众,做了针对的阅读路线设计和安排,让新手更易入门。
谷歌开发者社区官方推荐
基于 TensorFlow 2.2 快速入门
3 位 ML GDE 共同创作
与市面上的TensorFlow图书相比,“豹书”有什么特色?
来自谷歌的官方支持:本书由谷歌认证的机器学习领域技术专家撰写,撰写过程中与谷歌 TensorFlow 开发团队直接交流,并获得 TensorFlow 工程师的大量建议和支持。
在社区中久经锤炼:本书内容在中国谷歌开发者社区(Google Developers Groups)和 TensorFlow 用户组(TensorFlow User Group)教学活动中广泛使用,并在社区开发者的大量反馈中反复增订。
行文简明易懂:包含大量基础示例,语言简洁平实,充分考虑入门学习曲线、读者层级和阅读习惯。本书的中文版本为中文读者量身定制,做到充分的本地化。
主题覆盖全面:包含 TensorFlow 的模型建立、训练、部署、保存和数据处理等主要知识点。并由 JavaScript 和 Android 领域专家李卓桓和朱金鹏主笔,介绍了 TensorFlow 在服务器、移动端及 JavaScript 等主要场景下的部署详解。
内容及时前沿:全书基于 2020 年 5 月发布的 TensorFlow 2.2 版本撰写,并包含 TPU 加速模型训练、Swift for TensorFlow、TensorFlow Quantum 量子机器学习等 TensorFlow 前沿进展的专题教学。
进阶开发指导:为进阶的 TensorFlow 开发者提供了专门的高级章节,详解从 TensorFlow 1.x 版本过渡到 TensorFlow 2 的技术细节,TensorFlow 性能优化技巧,在 Android 平台下进行高级 TensorFlow 开发等主题。
全彩印刷:代码全部高亮,全彩图示,保证良好的阅读体验。
来自谷歌的推荐
“本书简单明了,适合快速入门,是难得的适合 TensorFlow 初学者阅读的好作品,强烈推荐给大家!虽然社区里已有不少 TensorFlow 英文教程和中文教程,但是本书出自经验丰富的 ML GDE,有 TensorFlow 团队工程师的建议,历经多次迭代,在社区实践中反复锤炼,这些都让本书别具一格。”
——李双峰 Google TensorFlow 中国研发负责人
“This book includes the latest information on TensorFlow and guides the readers toward its features including Eager Execution which will make developer’s codes a lot more intuitive. This book covers TensorFlow extensively, and also includes the latest information on advanced technologies including quantum computing……This is a truly meaningful outcome and will remain as a great, helpful resource for many more developers to come.”
——Soonson Kwon, Global ML Ecosystem Programs Lead in Google
以及还有谷歌传奇人物 Jeff Dean 的转推推荐。
——Rajat Monga, Engineering Director of TensorFlow
来自学界和工业界的赞誉
“本书在简洁高效介绍 TensorFlow 相关概念和功能的同时,也有从研究人员和开发人员的角度对TensorFlow 自身特点的思考、实践和经验总结……希望更多人工智能研究人员和开发人员通过阅读本书,成为更好的数据科学家、机器学习算法工程师和人工智能实践者。”
——童云海,北京大学信息科学技术学院教授,北京大学图书馆副馆长
“本书以简洁的方式讲解 TensorFlow 2,为你开启深度学习编程进阶之旅。”
——汪军, 伦敦大学学院计算机科学系教授
“本书不仅仅是一本 TensorFlow 2 工具书,它除了有零门槛的入门章节与简明的用法示例外,还兼有基础理论的介绍以及面向应用场景的扩展章节。本书摒弃了传统软件工具书严肃刻板的教学风格,围绕实际代码案例展开经验分享式叙述,是一本适合读者温习机器学习理论、了解 TensorFlow 用法并开拓视野的优秀技术书。”
——吴康隆,加利福尼亚大学戴维斯分校博士研究生,《简单高效LaTeX》作者
“一直想写一本关于 TensorFlow 2 的书,可惜忙于创业无暇投入。有幸从 0 到 1 见证了好友锡涵、卓桓和金鹏的新书落地,作为一个过来人,深知不易。本书从算法科学家的视角切入,由浅入深带你逐步掌握 TensorFlow 2 的核心模块和常见用例。本书作为官方文档的补充学习材料,具有独特的参考价值。”
——彭靖田,品览联合创始人兼CTO,《深入理解TensorFlow:架构设计与实现原理》作者
作者介绍
李锡涵,谷歌开发者专家(机器学习领域),伦敦大学学院攻读计算机博士学位,究方向为强化学习在优化领域的实际应用,北京大学信息科学技术学院智能科学系理学硕士,本科毕业于浙江大学竺可桢学院混合班。曾在多智能体会议AAMAS和自然语言处理会议COLING上发表学术论文。开源在线入门手册《简单粗暴TensorFlow 2》作者。本书封面插图作者。
李卓桓,谷歌开发者专家(机器学习领域)。清华大学本科,中欧国际工商学院EMBA,北京邮电大学计算机博士在读。现任PreAngel合伙人,Plug and Play Ventures Partner,关注种子期AI创业项目。
zixia BBS、叽歪网创始人,曾任优酷网首席科学家、水木清华BBS站长、ChinaRen系统工程师。拥有丰富的互联网创业投资和编程经验,著有《Linux网络编程》《反垃圾邮件完全手册》《智能问答与深度学习》《Chatbot从0到1:对话式交互设计实践指南》等技术书。GitHub 8000+ Star 开源项目 Wechaty 作者。
朱金鹏,华为高级软件工程师,前谷歌开发者专家(机器学习领域),从事Android系统和运行时设计开发9年,在Android系统、运行时、机器学习等领域都有较深入的研究和探索。积极参与谷歌技术社区活动并进行技术分享。欢迎关注作者的微信公众号 deepinthinking。
作者后记
市面上 TensorFlow 相关的中文技术书以及资料大多基于传统的计算图与会话机制,这让不少初学者,尤其是刚学过机器学习课程的大学生望而却步。
因此,在 TensorFlow 正式支持即时运行模式之际,我认为有必要出现一本全新的入门手册,帮助初学者及需要快速迭代模型的研究者,以 “即时执行” 的视角快速入门 TensorFlow。这也是我编写本手册的初衷。
在我撰写这本手册时,我尤其注重详略和编排上的处理,希望将 TensorFlow 中最高频使用的功能和知识点,以一个循序渐进、符合学习习惯的方式来展示给大家。这样即使是在仅 2~3 个小时的现场教学活动中,参与者也能迅速掌握 TensorFlow 的开发要领。
示例代码也经过了反复推敲,使其尽可能地简短而富有表现力。这本手册的名称《简明的 TensorFlow 2》一方面突出 TensorFlow 2 的简明特色,另一方面也体现了我在编写过程中对“简明性”的追求。
谷歌开发者专家项目中的其他成员、谷歌开发者关系团队和 TensorFlow 工程团队为这本手册的编写提供了大量关键的帮助。
JavaScript 和 Android 领域的领域专家李卓桓和朱金鹏以他们在业界的出色实力,为本书添加了大量实际部署和应用层面的专题。
TensorFlow的工程师们(尤其是Tiezhen Wang)也为本书的各种技术细节和专题选取提供了大量意见。这使得本手册从 2018 年发布的小型入门指南逐渐成长为一本内容全面的 TensorFlow 技术手册和开发指导。
本书封面的雪豹插图也由我亲自绘制。雪豹是主要分布于我国高海拔山地的大型猫科动物,有“雪山之王”之称。希望本书也能带领你勇攀 TensorFlow 的高峰,进一步领略机器学习的精彩。
图灵官方小店
享受正版低价折扣