谷歌开发者大会2018实录——TensorFlow篇

简介:

作者:闲鱼技术-楚丰,仝辉

摘要

在9月21日结束的Google开发者大会上,闲鱼团队作为Google的合作伙伴参加了此次会议,不仅在Flutter方面与谷歌以及国内开发者进行了深度交流,同时闲鱼技术开发专家陈永新作为本次大会的演讲嘉宾,分享了闲鱼基于TensorFlow Lite的端计算应用实践。在闲鱼的展台上还展示了闲鱼基于TensorFlow的黑科技:UI2Code,吸引了络绎不绝的开发者前来围观。

gdd5.JPG

TensorFlow 趋势

TensorFlow自2015年发布以来,已经成为世界上使用最广泛的机器学习框架,满足了广大的用户和用例需求。在此期间,TensorFlow随着计算硬件、机器学习研究和商业部署的快速发展而得到进步。

为了反映这些快速变化,本次的谷歌开发者大会介绍了TensorFlow和lite的一些新特性,重点关注易用性。以下是TensorFlow的新特性:

1.Eager execution,动态图机制,允许直接执行图,将更方便调试。

也将会是未来TensorFlow 2.0版本的默认开启选项。它将用户对编程模型的期望与TensorFlow更好地结合起来,并且使TensorFlow更易于学习和应用。

2.通过交换格式的标准化和API的一致性,支持更多平台和语言,并改善这些组件之间的兼容性和奇偶性。

3.将删除已弃用的API并减少重复数量,避免给用户造成混淆。

4.TensorFlow Lite转换工具添加post-training模型量化(post-training quantization)。

对于相关的机器学习模型,这可以实现最多4倍的压缩和3倍的执行速度提升。此外,模型主要由卷积层组成,执行速度提高10-50%的同时减少了内存和计算需求,预计大多数模型的功耗也会降低。

5.TensorFlow Lite从contribute目录移动到主目录,正式加入TensorFlow主工程。

TensorFlow Lite在闲鱼客户端上的应用

闲鱼客户端如何应用TensorFlow Lite

闲鱼自研了一个基于TensorFlow Lite的框架,主要对三方面进行了定制:拓展性、安全性和动态化。

1.拓展性:在拓展性方面利用TensorFlow Lite的自定义OP,将我们所需的一些数据预处理等作为一个自定义OP,整合到同一个模型,这样可以一个业务就是一个模型,能够做到业务之间保持独立。

2. 安全性:通过自定义的加密头等方式,将模型进行加密,在客户端运行该模型时,动态解析出原始模型,做到数据不落盘,最大程度保证了数据安全。

3. 动态化:通过服务端动态下发模型和OP的方式,实现了线上更新模型和算法,极大地方便了灰度测试、算法升级等需求。

应用一:视频封面

在视频封面这个案例中,利用TensorFlow Lite,可以将原先传统算法做的事,在端上用用AI模型来完成。传统基于规则的做法,选取视频封面的时候,是由算法同学设计一个基础算法,同时再处理各种Case,最终选取一张封面。对于遗漏忘处理的情况,则需要发版更新算法,维护成本太高。
而使用AI模型,则可以通过动态下发模型和OP的方式随时灰度和升级。

应用二:视频指纹

在这个案例中,展示了一种对 TensorFlow Lite 较“另类”的用法:将它当做一个计算框架。TensorFlow Lite 本身就是一种计算流程的框架,因此,可以利用它支持自定义OP的特性,将我们算法的各个环节作为一个个自定义OP,然后利用模型将这些计算环节“串联”起来,这样,整个TensorFlow Lite就俨然成为了一个天然的端计算框架。这样既可以对单个计算环节(自定义OP)做更新,还能随时调整整个计算流程(即调整模型)。

应用三:智能租房

最后这个案例是比较传统的TensorFlow Lite的用法,使用了较流行的SSD模型,在租房环节,通过自能识别图片中的家具(冰箱、电视等),以此自动地给用户发布的房屋打上标签,不仅简化了用户操作,还丰富了商品信息,为后台数据搜索推荐等提供了更有效的信息。

TensorFlow 在闲鱼工程效率上的应用

UI2Code

关于UI2Code的介绍,可以参考前面的一篇文章《Google开发者大会将揭晓哪些黑科技》

该项目展示的是从一张图片,直接生成UI代码的过程。该图片可以是设计师的视觉产出,也可以是手机上随便打开一个软件然后截图得到。
这里针对大家关心最多的几个问题做一下说明:

1.“UI2Code”和微软刚刚开源的“Sketch2Code”有什么区别

Sketc2Code 关注的是如何快速的将设计师的灵感,变成“近似”的UI代码,可以理解成是给设计师用的创作工具,生成的代码也并不是为了直接作为线上代码使用。

而我们的 UI2Code 关注的是1比1像素级别的“精确”还原,目的是为了节省开发人员重复机械的视觉还原工作,将没有创造性的重复性工作交给机器,这样开发人员就可以去关注更重要的逻辑性问题。它生成的UI代码是“接近”生产可用的,开发人员只要做一些数据绑定或者细微的调整即可。

2.“UI2Code”是如何使用TensorFlow的?

实际上该项目是一个复杂的工作流程,在流程的某些节点上,我们使用TensorFlow来完成深度学习任务。比如,由于输入是一张纯图片,并无其它任何信息,因此,需要用深度学习来“理解”图片内容,包括哪些是文本,哪些是图片等等。

3.你们这个有对外提供服务吗?是否有开源计划?

目前该工具还只是闲鱼内部使用(实际上我们的团队已经用它有一段时间了,上线了多个导购页面),下半年会开始考虑开源计划。由于该工具里面有部分我们自有业务的东西,同时公司有严格的开源审核和披露的流程,因此还需要一段时间,大家可以关注我们的公众号:闲鱼技术,到时候有了进一步的消息会第一时间在上面公布。

gdd2.JPG

结语

本次大会闲鱼作为Google的合作伙伴,与广大开发者分享和交流了闲鱼在Flutter和TensorFlow等方向上的实践,我们希望同广大开发者一起,在技术的道路上,不断探索创新,用技术推动业务。当然我们也对人才求贤若渴,如果你也希望做一些很“酷”的事情,欢迎加入闲鱼!

简历投递:guicai.gxy@alibaba-inc.com

相关文章
|
11月前
|
机器学习/深度学习 算法 数据可视化
如何评价目前最流行的两个深度学习框架,谷歌公司的TensorFlow和脸书公司的PyTorch?
如何评价目前最流行的两个深度学习框架,谷歌公司的TensorFlow和脸书公司的PyTorch?
174 0
|
11月前
|
机器学习/深度学习 人工智能 算法
谷歌官方回应:我们没有放弃TensorFlow,未来与JAX并肩发展
谷歌官方回应:我们没有放弃TensorFlow,未来与JAX并肩发展
|
11月前
|
机器学习/深度学习 算法 PyTorch
放弃TensorFlow,谷歌全面转向JAX
放弃TensorFlow,谷歌全面转向JAX
106 0
|
机器学习/深度学习 存储 人工智能
High&NewTech:2021 年Google谷歌 I/O 开发者大会 Kemal 等三人主题演讲分享《TensorFlow 在机器学习领域的进展》
High&NewTech:2021 年Google谷歌 I/O 开发者大会 Kemal 等三人主题演讲分享《TensorFlow 在机器学习领域的进展》
High&NewTech:2021 年Google谷歌 I/O 开发者大会 Kemal 等三人主题演讲分享《TensorFlow 在机器学习领域的进展》
|
机器学习/深度学习 人工智能 TensorFlow
AI开发者大会之AI学习与进阶实践:2020年7月3日《如何转型搞AI?》、《基于AI行业价值的AI学习与进阶路径》、《自动机器学习与前沿AI开源项目》、《使用TensorFlow实现经典模型》
AI开发者大会之AI学习与进阶实践:2020年7月3日《如何转型搞AI?》、《基于AI行业价值的AI学习与进阶路径》、《自动机器学习与前沿AI开源项目》、《使用TensorFlow实现经典模型》
AI开发者大会之AI学习与进阶实践:2020年7月3日《如何转型搞AI?》、《基于AI行业价值的AI学习与进阶路径》、《自动机器学习与前沿AI开源项目》、《使用TensorFlow实现经典模型》
|
机器学习/深度学习 人工智能 自然语言处理
AI开发者大会:2020年7月3日10:30--10:50李双峰《TensorFlow的最新进展》
AI开发者大会:2020年7月3日10:30--10:50李双峰《TensorFlow的最新进展》
AI开发者大会:2020年7月3日10:30--10:50李双峰《TensorFlow的最新进展》
|
机器学习/深度学习 传感器 人工智能
提速20倍!谷歌AI发布TensorFlow 3D,智能汽车场景亲测好用
Google AI发布了TensorFlow 3D,将3D深度学习能力引入TensorFlow,加入3D稀疏卷积网络,在Waymo Open数据集上的实验表明,这种实现比预先设计好的TensorFlow操作提速「20倍」。
227 0
提速20倍!谷歌AI发布TensorFlow 3D,智能汽车场景亲测好用
|
机器学习/深度学习 小程序 5G
TensorFlow 1.x最后一更、Android 10最新特性,这是谷歌开发者日
教程、体验、实战?谷歌开发者日能满足你对开发工具与开发体验的所有好奇心。
224 0
TensorFlow 1.x最后一更、Android 10最新特性,这是谷歌开发者日
|
机器学习/深度学习 人工智能 算法
首届TensorFlow开发者大会:值得关注的亮点都在这里(附资源)
当地时间 2 月 15 日,谷歌在加州山景城召开了第一届年度 TensorFlow 开发者大会(TensorFlow Developer Summit 2017),这可算得上是 TensorFlow 开发者、支持者与爱好者的第一次盛会,谷歌也在此次会议上发布了开发者期待已久的 TensorFlow 1.0。
168 0
首届TensorFlow开发者大会:值得关注的亮点都在这里(附资源)
|
机器学习/深度学习 人工智能 分布式计算
第四范式戴文渊:谷歌TensorFlow让强者更强,「先知」平台让人工智能普惠各行各业
7 月 20 日,国内人工智能创业公司第四范式发布了「先知」平台,受到了业内广泛关注。机器之心对第四范式创始人兼 CEO 戴文渊进行了专访,他介绍了第四范式的「先知」平台和核心技术,并对迁移学习和人工智能行业发表了观点。
609 0
第四范式戴文渊:谷歌TensorFlow让强者更强,「先知」平台让人工智能普惠各行各业

热门文章

最新文章