TensorFlow 1.x最后一更、Android 10最新特性,这是谷歌开发者日

简介: 教程、体验、实战?谷歌开发者日能满足你对开发工具与开发体验的所有好奇心。

2019 谷歌开发者大会于 9 月 10 日和 11 日在上海举办,大会将分享众多开发经验与工具。在第一天的 KeyNote 中,谷歌发布了很多开发工具新特性,并介绍而它们是如何构建更好的应用。值得注意的是,TensorFlow 刚刚发布了 2.0 RC01 版和 1.15,谷歌表示 1.15 是 1.x 的最后一次更新了。


除此之外,微信小程序的 TensorFlow.js 插件、Android 10 的发布、Flutter 1.9 的发布都非常吸引人,其中 Flutter 是最主流的跨平台 UI 框架之一。


TensorFlow 从 1.x 到 2.0 RC


在 KeyNote 中,非常令人惊奇的是,谷歌高级软件工程师 Anna Goldie 用中文向大家介绍了 TensorFlow 2.0 近来的发展。TensorFlow 2.0 不仅发布了 Release Candidate,与此同时,谷歌还发布了 TensorFlow 1.x 的最后一版 1.15。Goldie 表示,谷歌同样也为微信小程序配置了 TensorFlow.js 插件。所有这些更新,都是为了能更高效地构建与应用机器学习模型。


TensorFlow 2.0 相信大家已经非常熟悉了,机器之心之前也介绍过 2.0 的很多新特性。但是在刚刚发布的 TF 2.0 RC01 版中,它重点还是放在优化 Keras 和 Eager Execution 的能力,它希望通过这这两种 API 简化整个开发流程。


微信图片_20211201225710.jpg


整个 TF 2.0 RC 版去除了很多不必要的 API,例如它统一了 tf.train.Optimizers 和 tf.keras.Optimizers,以后可能只需要使用第二种 API 了,尽管第一种在以前是最为常见的。总体而言,整个 TF 2.0 的 API 会改动很多,甚至 tf.app、tf.flags 和 tf.logging 在 RC 版中都去除了。


微信图片_20211201225713.png


此外,非常令人惊讶的是,TF 2.0 RC 版准备对 tf.Session 下手了,它以前在 1.x 中是必不可少的模块。谷歌表示,以前都是通过声明式的编程来构建并执行静态计算图,但是最新的 RC 版已经不再鼓励使用这种方式了,我们可以正常地写 Python 函数,然后再加上 tf.function 装饰器就能将其转化为计算图。这种方式转化的计算图还经过了一系列性能优化,它的表现更好。


在谷歌开发者日 KeyNote 过后,我们发现 TensorFlow 发布了 1.x 的最后一版。1.x 以后就不会再针对新特性进行更新了,不过至少在一年内,它还是会针对 Issue 或 Bug 进行维护的。


微信图片_20211201225717.jpg


支持微信的 TensorFlow


除了常规平台上的框架更新,Goldie 在 KeyNote 中还介绍了用于微信小程序的 TensorFlow.js 插件,该插件封装了 TensorFlow.js 库,用于提供给第三方小程序调用。


我们可以在小程序管理后台的「第三方服务-插件管理」中添加插件,就能直接在小程序上部署机器学习模型。更便捷的是,我们可以直接从 tfjs 模型库调用预训练模型,不论是视觉、语音还是自然语言相关的能力。此外,为了方便国内开发者的使用,该插件的 URL 调用参数都提供了国内镜像,这样才能流畅地打造整个小程序。



Android 10 与 Flutter


几天前谷歌发布了 Android 10,它利用前沿机器学习技术,帮助折叠屏和 5G 的实际应用,从而提供更好的移动端体验。KeyNote 重点介绍了 Android 10 的两大更新主题,即用户与开发。其中用户主要体现在原生支持 5G 以及更强大的安全与隐私控制,而开发主要体现在编程语言与工具的创新。


对于 Android 10 的 5G 平台支持,我们可调用网络连接 API 判定设备是否可以高速联网,以及当前的网络是否计费,这样开发调用 5G 网络的 APP 就会方便很多。因为 5G 网络能大幅度降低网络延迟并提高数据传输速度,那么它对机器学习模型的宽容度会增加很多,更多适合用云计算的大模型也能通过 API 直接调用。


另外对于开发者,Android 10 好不好很大程度在于开发工具是不是高效。KeyNote 介绍了非常多的开发工具,例如下图所示的 Kotlin 语言,如果要实现相同的功能,它的代码量远远少于一版的 Java 编程。Android 首席技术推广工程师 Chet Haase 表示,Kotlin 是近年发展最迅速的编程语言之一。


微信图片_20211201225720.gif


值得注意的是,Android 10 内置了很多机器学习特性,包括利用离线的语音识别模型自动生成视频字幕、利用本地的机器学习模型实现操作推荐等等,其中操作推荐即在通知中显示与当下场景相关的建议操作。


在 Android 之外,另一大亮点即最新稳定版 Flutter 1.9 的正式发布。Flutter 是谷歌开源并维护的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面。在 KeyNote 中,我们注意到 Flutter 目前还利用机器学习自动补全代码,这应该比较有意思。


微信图片_20211201225724.jpg


Flutter 团队产品经理樊舟颖表示,从去年 12 月到现在,Flutter 的用户已经增长了一倍多,且它在中国非常流行,有 1/5 的 Flutter 开发者都来自中国。1.9 目前是 Flutter 最大的一次版本更新,它合并了核心代码库与网页版 Flutter,甚至针对最新的 macOS Catalina,Flutter 也做好升级准备,顺利适配新平台。


好玩的开发者日


除了这些更新发布外,开发者日还发布了很多「好玩」的体验,包括*谷歌*艺术与文化 APP、Grow with Google 成长计划等等。其中谷歌艺术与文化通过「观妙中国」APP 允许爱好者足不出户欣赏高清艺术藏品,Grow with Google 则提供了一系列免费线上课程与学习工具,从而扩宽我们的数字化技能树。


在展区中,谷歌艺术与文化提供了智玩皮影、智舞窑变、智绘甲骨三大体验项目,它们都基于 TensorFlow 机器学习模型。例如智舞窑变,它会利用姿态检测模型识别人体的各种「舞姿」,然后根据你的姿态实时生成对应的瓷器形状及花纹。这些体验项目都挺受欢迎的,排队也就不会短啦。


微信图片_20211201225728.jpg


如上所示为展区的一角,我发现它还有另一个很吸引人的特色,即不同的主题都会配一个「Ask XXX」展台,我们可以问该主题的任何问题,如上 Google Cloud 就可以询问使用过程中的各种疑难杂症。


整体体验下来,谷歌开发者日的参与度非常高,KeyNote 的各个主题也有更详尽的专题演讲。甚至第二天整天都有 TensorFlow 的专题讲座,我们可以找到关于 TF 各种模块、各种功能特性的指南讲座。


文为机器之心报道,转载请联系本公众号获得授权

相关文章
|
21天前
|
Android开发 开发者 Kotlin
探索安卓开发中的新特性
【9月更文挑战第14天】本文将引导你深入理解安卓开发领域的一些最新特性,并为你提供实用的代码示例。无论你是初学者还是经验丰富的开发者,这篇文章都会给你带来新的启示和灵感。让我们一起探索吧!
|
1月前
|
安全 Android开发 iOS开发
安卓与iOS的较量:技术特性与用户体验的深度解析
在移动操作系统的战场上,安卓和iOS一直占据着主导地位。本文将深入探讨这两大平台的核心技术特性,以及它们如何影响用户的体验。我们将从系统架构、应用生态、安全性能和创新功能四个方面进行比较,帮助读者更好地理解这两个系统的异同。
52 3
|
2月前
|
Shell Linux 开发工具
"开发者的救星:揭秘如何用adb神器征服Android设备,开启高效调试之旅!"
【8月更文挑战第20天】Android Debug Bridge (adb) 是 Android 开发者必备工具,用于实现计算机与 Android 设备间通讯,执行调试及命令操作。adb 提供了丰富的命令行接口,覆盖从基础设备管理到复杂系统操作的需求。本文详细介绍 adb 的安装配置流程,并列举实用命令示例,包括设备连接管理、应用安装调试、文件系统访问等基础功能,以及端口转发、日志查看等高级技巧。此外,还提供了常见问题的故障排除指南,帮助开发者快速解决问题。掌握 adb 将极大提升 Android 开发效率,助力项目顺利推进。
52 0
|
12天前
|
监控 Android开发 iOS开发
深入探索安卓与iOS的系统架构差异:理解两大移动平台的技术根基在移动技术日新月异的今天,安卓和iOS作为市场上最为流行的两个操作系统,各自拥有独特的技术特性和庞大的用户基础。本文将深入探讨这两个平台的系统架构差异,揭示它们如何支撑起各自的生态系统,并影响着全球数亿用户的使用体验。
本文通过对比分析安卓和iOS的系统架构,揭示了这两个平台在设计理念、安全性、用户体验和技术生态上的根本区别。不同于常规的技术综述,本文以深入浅出的方式,带领读者理解这些差异是如何影响应用开发、用户选择和市场趋势的。通过梳理历史脉络和未来展望,本文旨在为开发者、用户以及行业分析师提供有价值的见解,帮助大家更好地把握移动技术发展的脉络。
|
17天前
|
前端开发 Java 数据库
💡Android开发者必看!掌握这5大框架,轻松打造爆款应用不是梦!🏆
在Android开发领域,框架犹如指路明灯,助力开发者加速应用开发并提升品质。本文将介绍五大必备框架:Retrofit简化网络请求,Room优化数据库访问,MVVM架构提高代码可维护性,Dagger 2管理依赖注入,Jetpack Compose革新UI开发。掌握这些框架,助你在竞争激烈的市场中脱颖而出,打造爆款应用。
86 3
|
2天前
|
开发工具 Android开发 iOS开发
移动应用开发的艺术:探索Android与iOS的操作系统特性
【9月更文挑战第33天】在数字时代的浪潮中,移动应用已成为我们日常生活不可或缺的一部分。本文将深入探讨两个主流移动操作系统——Android和iOS——的独特特性,并分析它们如何影响移动应用的开发过程。我们将通过比较这两个系统的设计哲学、用户界面(UI)设计、开发工具以及市场策略,来揭示开发者如何在这些不同的平台上打造出色的用户体验。无论你是开发者还是对移动技术感兴趣的读者,这篇文章都将为你提供宝贵的见解。
|
25天前
|
IDE Java Android开发
安卓与iOS开发环境的差异及其对开发者的影响
在数字时代的浪潮中,移动应用成为人们生活的延伸。两大操作系统——安卓与iOS,如同两座技术高峰,各自占据着半壁江山。本文将探索这两个平台的开发环境差异,并讨论这些差异如何塑造开发者的编程习惯与职业选择。我们将从工具和语言、用户界面设计、系统架构、市场定位以及开发社区和资源五个方面进行比较,旨在为开发者提供一份实用的指南,帮助他们在不断变化的技术世界中,找到适合自己的发展路径。
38 3
|
28天前
|
安全 定位技术 Android开发
探索Android 12的隐私保护特性
随着数字化生活的深入,个人隐私保护成为用户关注的焦点。本文将介绍Android 12新推出的隐私保护功能,包括隐私仪表板、近似位置访问和麦克风/相机指示器等,帮助读者了解如何通过这些工具来增强自己的数据安全。
|
27天前
|
移动开发 开发工具 Android开发
安卓与iOS开发:平台差异及其对开发者的影响
在移动开发的大潮中,安卓和iOS两大阵营各领风骚。本文将探讨这两个平台的关键差异,包括开发环境、编程语言、用户界面设计、应用分发以及商业模式等方面。通过比较分析,我们旨在为开发者提供一个清晰的指导,帮助他们根据项目需求和个人偏好做出明智的平台选择。同时,文章也将分享一些跨平台开发工具的使用经验,以期最大化开发效率和市场覆盖。
|
1月前
|
安全 Android开发 iOS开发
安卓与iOS的较量:技术特性与用户体验的深度剖析
在移动操作系统的战场上,安卓和iOS一直是两个重量级选手。本文将深入探讨两者的技术架构、安全性、应用生态以及用户体验等方面的差异,并尝试从用户和开发者的角度出发,分析这两个系统的优势与不足。通过比较,我们不仅能更好地理解各自的特点,还能洞察未来移动技术的发展趋势。

热门文章

最新文章

下一篇
无影云桌面