报道

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 简化整个开发流程。

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

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

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

支持微信的 TensorFlow

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

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

  • 开源地址:https://github.com/tensorflow/tfjs-wechat

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 是近年发展最迅速的编程语言之一。

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

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

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

好玩的开发者日

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

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

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

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

工程AndroidTensorFlow开发者大会谷歌
相关数据
机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

TensorFlow技术

TensorFlow是一个开源软件库,用于各种感知和语言理解任务的机器学习。目前被50个团队用于研究和生产许多Google商业产品,如语音识别、Gmail、Google 相册和搜索,其中许多产品曾使用过其前任软件DistBelief。

云计算技术

云计算(英语:cloud computing),是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给计算机各种终端和其他设备。

语音识别技术

自动语音识别是一种将口头语音转换为实时可读文本的技术。自动语音识别也称为语音识别(Speech Recognition)或计算机语音识别(Computer Speech Recognition)。自动语音识别是一个多学科交叉的领域,它与声学、语音学、语言学、数字信号处理理论、信息论、计算机科学等众多学科紧密相连。由于语音信号的多样性和复杂性,目前的语音识别系统只能在一定的限制条件下获得满意的性能,或者说只能应用于某些特定的场合。自动语音识别在人工智能领域占据着极其重要的位置。

机器之心机构

机器之心,成立于2014年,是国内最具影响力、最专业、唯一用于国际品牌的人工智能信息服务与产业服务平台。目前机器之心已经建立起涵盖媒体、数据、活动、研究及咨询、线下物理空间于一体的业务体系,为各类人工智能从业者提供综合信息服务和产业服务。

姿态检测技术

姿态检测是指主体对主要行为者提出的主张的反应。它是假新闻评估的一套方法的核心部分。

5G技术

第五代移动通信系统(5th generation mobile networks),简称5G,是4G系统后的延伸。美国时间2018年6月13日,圣地牙哥3GPP会议订下第一个国际5G标准。由于物理波段的限制,5G 的网络也将会与其他通信技术并用,包含长距离的其他传统电信波段。

推荐文章
暂无评论
暂无评论~