Command Palette
Search for a command to run...
TensorFlow 发布的第四年,哪些最重要?@GDD 2019

GDD 进行到第二天,开发者们依然热情不减, TensorFlow RoadShow 现场座无虚席。距离 2015 年 TensorFlow 面世,如今已过去四年,围绕 TensorFlow,谷歌打造了一整套生态系统,用户群体也越来越广大。那么这一次,谷歌的 TensorFlow 团队,又为我们带来了什么呢?
昨日,GDD 大会上,谷歌对最近的动态和新品,做了详尽的展示。在 GDD 的第二天,则是将重心倾注在了已发布四年的 TensorFlow 。
今日凌晨,苹果召开了新品发布会,推出了三摄 iPhone 11 系列,此外 iPad 、 Apple Arcade 、 Apple TV+、 iApple Watch Series 5 等新品也随之发布。
如果说苹果在用新品刺激着消费者群体,那么在大洋的另一边,谷歌开发者大会则还在低调而沉稳地进行,详细地介绍着自己在技术上最新进展,给开发人员带来最实际的帮助。
特设的 TensorFlow RoadShow,排满了整整一天的日程。那么今日的 GDD 上,TensorFlow 团队又带来了哪些看点呢?
TensorFlow:最受欢迎的机器学习框架
在 TensorFlow RoadShow 上,其亚太区产品经理梁信屏首先出场,展开了《机器学习的现在和未来》的分享,并陈述了 TensorFlow 的发展概况。

从 2015 年发布以来,TensorFlow 一直在完善和更新,截至目前,有超过4100 万的下载量,超过5 万次提交量,9900 次代码改动请求,以及1800 多位贡献者。

介绍完这些情况,随即开启了 TensorFlow 的全面展示,其团队的工程师们,对 TensorFlow 的进展做了详细介绍。
划重点:TensorFlow 2.0
备受瞩目的 2.0 版本终于在 2019 年面世。今年 6 月份, TensorFlow 2.0 Beta 版本发布,在今天的 GDD 上,工程师宣称 TensorFlow 2.0 RC 现已可用。相比于 1.0 版本,新版围绕易用性、高性能、可扩展,三个方面进行了升级。
其中最吸引人的地方在于,使用Keras 作为高阶 API ,优化默认Eager Execution,移除重复的功能,提供了统一 API 。

介绍完 2.0 的具体情况后,谷歌工程师梁艳慧也详细介绍了从版本 1.0 升级到 2.0 的方法。
在谷歌内部,已经开始了内部的版本迁移,官方网站也提供了详细的代码迁移指南与工具。如果用户十分需要或者依赖于某个 1.0 版本的 API,可以根据指南轻松地将其迁移至 2.0 版本。
那么 TensorFlow 2.0 具体在哪些方面值得关注呢?谷歌的工程师们从以下几个角度做出了详细的介绍。
TF.Text:训练 NLP 模型
作为机器学习中一个重要的方向,自然语言处理有着很大的市场需求。 TF 官方推出和升级了TF.Text,为 TensorFlow 2.0 提供了强大的文本处理功能,且兼容动态图模式。

其中最常见的功能就是文本的词条化(Tokenization)。词条化是将字符串分解为 token 的过程。这些 token 可能是单词、数字和标点符号,或是几种元素的组合。
TF.Text 的 Tokenizer 一种用于识别文本的新型张量, Ragged Tensors 。并提供了三个新的 Tokenizer 。其中最基本的是空白 Tokenizer,可以在 ICU 定义的空白字符(例如空格,制表符,换行符)上拆分 UTF-8 字符串。
TF.Text 库还包括归一化、 n-gram 和标记序列约束等功能。使用 TF.Text 有许多好处,例如用户不需要关注训练和预测的一致性,并且不需要自己管理预处理脚本。
TensorFlow Lite:在端上部署机器学习
两位谷歌资深软件工程师王铁震与刘仁杰,介绍了 TensorFlow Lite 的功能更新以及技术细节。

第一:几乎没有延迟,可以提供稳定、及时的用户体验;
第二:不需要连接网络,可以在没有网络或者是网络很差的环境中使用;
第三:隐私保护,不会把数据传到云端,所有的处理能够在端上进行。
鉴于这些优势,目前基于 TensorFlow Lite 在端上部署机器学习的应用,已有有了很大的市场,而且在 2.0 中,部署模型的能力也得到了强化。
比如,闲鱼 APP 在租房场景,用 TensorFlow Lite 自动对图片打标签,提高了租房效率;科沃斯机器人将 TensorFlow Lite 部署在扫地机器人中,实现自动避障等等。 TensorFlow Lite 在谷歌产品中也被广泛应用,如 Google 相册、输入法、云助理等。
根据统计,有超过 20 亿的移动设备,已经安装了基于 TensorFlow Lite 的应用。
不过,在端上部署机器学习仍然有着不少的挑战,比如相对云端来说,端上算力少、内存少,而且端上部署需要考虑耗电量的问题。 TensorFlow Lite 也针对这些挑战做出了优化改善,以期将机器学习更容易地在端上进行部署。
TensorFlow Lite 最终实施端口,不仅能够部署在安卓和 iOS,还适用于在嵌入式系统(如树莓派)、硬件加速器(如 Edge TPU)、微控制器(MCU)中。

如何在 TensorFlow Lite 中部署自己的模型?刘仁杰介绍道,这只需要按照三个步骤:训练 TF 模型、转换到 TF Lite 格式、部署模型到端侧设备,根据 TF 2.0 的集成库,只需不多的代码调用就可实现。
TensorFlow.js:可制作微信小程序的平台
TensorFlow.js 是为 JavaScript 定制的深度学习平台。可以运行已有模型、对已有模型进行再训练、以及训练新的模型。

在现场演示中,他们展示了一款基于 TensorFlow.js 的虚拟试装程序 Modiface 。通过这个框架,打造出了最小最快的虚拟试妆的小程序。据悉,后续还将实现发型转换、年龄转化模拟、肤质检测等功能。

目前,TensorFlow.js 已经支持图像分类、物体识别、姿态识别、语音命令识别、文本分类等功能,比如推出的微信小程序插件,使用一个 API 就可以实现丰富的功能。
期待谷歌以及 TensorFlow 带来更多惊喜
除了上述提到的 TensorFlow 的一些功能,还对 Tf.distribute 、 TensorFlow 优化工具包、以及 TensorFlow 的一些企业应用案例做了介绍。最后,梁信屏再次登台,分享了 TensorFlow 的社区情况。

随着 TensorFlow RoadShow 的结束,谷歌开发者大会也结束了所有日程,圆满落幕。对所有的技术开发人员来说,这场盛会所带来的干货,应该比观看苹果发布会要直观的多。
让我们期待 TensorFlow 的下一次突破,也希望谷歌能够在 AI 赛道上,更加给力。明年 GDD,我们再约!












