业界 | TensorFlow 2.0 Alpha 版来了!吴恩达配套课程同步上线

2019 年 3 月 9 日 AI研习社

AI 科技评论按:3 月 7 日凌晨,谷歌 TensorFlow 开发者峰会(TensorFlow Dev Summit 2019)在美国加州举行。自今年 1 月份谷歌放出 TensorFlow 2.0 开发者预览版,开发者们如今终于迎来了万众期待的 TensorFlow 2.0 Alpha 版的正式发布。也许是为了呼应谷歌此前将 TensorFlow 2.0 称作重要的「里程碑」,TensorFlow 的 Logo 也从过去的三维积木状变成了扁平化风格的「T」和「F」字母拼接。

除了发布 TensorFlow 2.0 Alpha 版,谷歌在本次大会上还发布了「一箩筐」围绕 TensorFlow 的其他软件的更新和最新成果,包括:经过更新的 TensorFlow Lite 1.0、TensorFlow js 1.0 和 Swift for TensorFlow 0.2 ,端到端的机器学习平台 TensorFlow Extended (TFX) 以及两款面向隐私问题的 TensorFlow Federated 开源框架和 TensorFlow Privacy 开源库。

另外值得一提的是,随着 TensorFlow 2.0 Alpha 版的到来,谷歌还发布了两门深度学习课程:Udacity 的《TensorFlow 深度学习简介》和 Deeplearning.ai 的《TensorFlow:从基础知识到掌握专业化》系列课程。

TensorFlow 2.0 Alpha 版:强调简单易用性

今年 1 月份,谷歌就放出 TensorFlow 2.0 开发者预览版,引起了开发者们的满腔期待。而不到两个月后随之而来的 TensorFlow 开发者峰会,其最受关注的环节莫过于 TensorFlow 2.0  Alpha 版的发布。

据悉,针对 TensorFlow 2.0,TensorFlow 团队听取了开发者关于「简化 API、减少冗余并改进文档和示例」的建议来进行设计,将 TensorFlow 2.0 Alpha 版的更新重点放在简单和易用性上,主要进行了以下更新:

  • 使用 Keras 和 eager execution,轻松建立简单的模型并执行

  • 在任何平台上的实现生产环境的模型部署

  • 为研究提供强大的实验工具

  • 通过清除不推荐使用的 API 和减少重复来简化 API

同时,在过去的几年中,谷歌陆续在 TensorFlow 中添加了许多组件,而 TensorFlow 2.0 Alpha 版中则将这些组件将打包成了一个综合性平台,支持从训练到部署的机器学习工作流,其新架构的简化概念图如下所示:

而更简单化的新框架更是带来了更加简洁的工作流,即:先使用 tf.data 创建的输入管道读取训练数据;然后使用 tf.keras 或 Premade Estimators 构建、训练和验证模型;接着用 eager execution 进行运行和调试;再使用 Distribution Strategy API 在不更改模型定义的情况下,基于 CPU、GPU 等不同硬件配置上分布和训练模型;最后将模型导出到 SavedModel 保存。其工作流如下图所示:

此外,TensorFlow 2.0 Alpha 版还带来了一些新的功能,允许研究人员和高级用户使用丰富的扩展进行实验,如 Ragged Tensors、TensorFlow Probability、Tensor2Tensor 等。

为了简化代码迁移到 TensorFlow 2.0 的过程,谷歌还提供一个转换工具和指导文档用来更新 TensorFlow 1.x Python 代码以使用与 TensorFlow 2.0 兼容的 API,并将无法自动转换的代码标记出来。

在 API 方面的更新也是 TensorFlow 2.0 Alpha 版的一大亮点,其将 Keras API 指定为构建和训练深度学习模型的高级 API,并舍弃掉其他 API。另外值得一提的是,Keras 提供了几个模型构建 API,例如可以利用 Sequential API 构建模型,然后使用「compile」和「fit」,tensorflow.org 中所有常见的」tf.keras」示例均可在 2.0 中便捷使用。

TensorFlow 2.0 Alpha 版的另一个最明显的改变就是将用于机器学习的实验和研究平台——Eager execution 设置为默认优先模式,这就意味着任何运算在调用后就会立即运行,从而不再需要预先定义静态图,就可以通过「tf.Session.run()」执行图的各个部分,让执行过程变得更加简单和快捷。

此外,Eager execution 还有助于原型制作、调试和监控运行中的代码,用户可使用 Python 调试程序检查变量、层及梯度等对象,并利用装饰器「@tf.function」中内置的 Autograph 直接获取图表优化和效率,这整个过程不仅能够保留 TensorFlow1.x 基于静态计算图执行的所有优点:性能优化、远程执行,以及序列化、导出和部署的能力,同时还增加了用简单 Python 表达程序的灵活性和易用性。

整体而言,TensorFlow 2.0 Alpha 版具有以下三大特性:

  • 第一,易用性,其主要体现在使用 tf.keras 作为高级 API,且将 Eager execution 作为默认模式。

  • 第二,简洁性,其主要体现在 TensorFlow 2.0 Alpha 版删除了重复的功能,并且不同 API 的调用语法也变得一致、直观,同时它的兼容性更加完善。

  • 第三,灵活性,其主要体现在 TensorFlow 2.0 Alpha 版提供了完整的低级 API,并可以在 tf.raw_ops 中访问内部操作,同时还提供了变量、checkpoint 以及层的可继承接口。

开发者峰会上,TensorFlow 工程总监 Rajat Monga 也向大家呈现了 TensorFlow 这几年来的「战绩」:自 2015 年 11 月推出以来,TensorFlow 总下载量超过 4100 万次,提交了 5 万多次代码更新,目前已有 1800 多名来自全世界的贡献者。

而随着更加顺从民意、使用更加简单的 TensorFlow 2.0  Alpha 版的发布,TensorFlow 又将收获怎样的成绩呢?大家可以拭目以待。

  • TensorFlow 2.0 Alpha 版官方网址:https://www.tensorflow.org/alpha

  •  TensorFlow 2.0 Alpha 版开源地址:https://github.com/orgs/tensorflow/projects/4

注:针对不同级别的开发者,TensorFlow 2.0 Alpha 版设置了两版教程:

  • 初学者版:使用的是 Keras Sequential API,这是最简单的 TensorFlow 2.0 入门方法。

  • 资深人士版:展示如何命令式地编写正向传递、如何使用 GradientTape 编写自定义训练循环,以及如何使用 tf.function 一行代码自动编译代码。

两门深度学习课程:配套 TensorFlow 2.0 Alpha 版

伴随着 TensorFlow 2.0 Alpha 版的发布,谷歌还特别应景地一同发布了配套的深度学习课程:Deeplearning.ai 的《TensorFlow:从入门到精通》(「TensorFlow: From Basics to Mastery Specialization」)和优达学城的《TensorFlow 深度学习简介》(「Intro to TensorFlow for Deep Learning」)。

《TensorFlow:从入门到精通》是 Deeplearning.ai 的一系列实践课程,由吴恩达老师参与开发并执教,目的在于帮助大家了解:

  • 如何在 TensorFlow 中构建机器学习模型

  • 利用深度神经网络和卷积神经网络构建图像识别算法了解

  • 如何在移动设备和网络上部署模型

  • 学习图像识别以外的物体检测、文本识别等,进入等

  • 扩展针对自定义学习/训练的基本 API

除了吴恩达老师,该课程的另一重量级教师为 Laurence Moroney 博士。

该课程分四周进行,课程安排为:

  • 第一周:介绍一种新的变成范式

  • 第二周:计算机视觉简介

  • 第三周:利用卷积神经网络增强计算机视觉

  • 第四周:利用真实世界的图像

课程链接地址:https://www.deeplearning.ai/tensorflow-specialization/

《TensorFlow 深度学习简介》则是优达学城的免费课程,它自 2016 年推出以来,目前已有超过 40 万名学生参加,而今天则正式成为 Deeplearning.ai TensorFlow 系列课程的一部分。该课程从实践的角度讲解了软件深度学习知识,以及在移动设备、云端和浏览器上实际运行 TensorFlow 模型,让学生掌握创建 AI 应用所需的所有技能。

该课程目前已经更新了 4 堂课,分别为:第一堂课:课程大纲介绍;第二堂课:机器学习简介;第三堂课:训练 MNIST 模型;第四堂课:CNN 简介。目前,该 4 堂课已全部上线,而第 5 堂课则还未更新。

课程链接地址:https://www.udacity.com/course/intro-to-tensorflow-for-deep-learning--ud187

「一箩筐」其他软件迎来重大更新

正式发布 TensorFlow.js 1.0 、TensorFlow Lite 1.0 

实际上,除了 TensorFlow 2.0  Alpha 版,本次峰会的另一亮点便是正式发布 TensorFlow.js 1.0 和 TensorFlow Lite 1.0 了。

自 2018 年发布以来,TensorFlow.js 被大量采用,目前其下载量达 30 万次,Github 星标数量超过 1 万,项目贡献者超过 100 个。本次正式发布的 TensorFlow.js 1.0 版本,在先前版本的基础上进行的更新包括:增加了一个针对 Web 开发人员的面向图像、文本、语音等常见机器学习任务的现成模型库;添加了运行 JS 的更多平台,例如桌面 app、移动端本地的平台等。另外,该版本在性能上有了较大的提升。

作为一个面向移动和嵌入式设备打造的轻量级、跨平台解决方案,TensorFlow Lite 主要解决的问题是:机器学习在手机、汽车、可穿戴设备等终端设备上面临着有限的计算力、内存以及电池容量等诸多限制。

自 2017 年 5 月的谷歌 I/O 开发者大会被首次提出以来,TensorFlow Lite 目前已部署到超 20 亿移动设备中,并已应用到谷歌搜索、谷歌助手、Pixel Visual Core 等诸多原生谷歌应用和服务、以及谷歌合作伙伴的产品中。TensorFlow Lite 对于谷歌的重要性不言而喻,本次正式发布 TensorFlow Lite 1.0 可谓是众望所归。

TensorFlow.js 1.0 版本开源地址:https://github.com/tensorflow/tfjs/releases

为 TensorFlow 家族再添两位新成员

另外,谷歌还为 TensorFlow 家族再添了两位新成员:TensorFlow Federated(TFF)开源框架和 TensorFlow Privacy 机器学习开源库。

 TensorFlow Federated(TFF)是一个开源框架,适用于面向分散式数据执行机器学习和其他计算。它采用一种联合学习(Federated Learning,FL)的机器学习方法,可在多个客户端上训练共享的全局模型,同时在本地保存训练数据。

TensorFlow Privacy 则是一个 TensorFlow 机器学习开源库,能够让开发人员更容易培训具有强大隐私保障的 AI 模型。谷歌表示,计划将 TensorFlow Privacy 发展成为培训机器学习模型的最佳技术中心,并提供强大的隐私保障。

  • TensorFlow Federated 开源地址:https://github.com/tensorflow/federated

  • TensorFlow Privacy 开源地址:https://github.com/tensorflow/privacy

对 2019 年度 TensorFlow 开发者峰会感兴趣的同学,可前往峰会官网:https://www.tensorflow.org/dev-summit 回看视频并查看相关信息。

点击阅读原文,与更多人交流使用心得

登录查看更多
4

相关内容

TensorFlow 2.0中有多处更改,让用户使用更高效。TensorFlow 2.0删除冗余 APIs,使API更加一致(统一 RNNs,统一优化器),并通过Eager execution模式更好地与Python运行时集成。
【干货书】高级应用深度学习,294页pdf
专知会员服务
153+阅读 · 2020年6月20日
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
69+阅读 · 2020年1月17日
谷歌机器学习速成课程中文版pdf
专知会员服务
145+阅读 · 2019年12月4日
【干货】谷歌Joshua Gordon 《TensorFlow 2.0讲解》,63页PPT
专知会员服务
27+阅读 · 2019年11月2日
Tensorflow官方视频课程-深度学习工具 TensorFlow入门
深度学习与NLP
12+阅读 · 2019年3月12日
官方解读:TensorFlow 2.0 新的功能特性
云头条
3+阅读 · 2019年1月23日
TF Boys必看!一文搞懂TensorFlow 2.0新架构!
引力空间站
18+阅读 · 2019年1月16日
官方解读:TensorFlow 2.0中即将到来的所有新特性
机器之心
5+阅读 · 2019年1月15日
PyTorch 1.0 稳定版正式发布!
新智元
3+阅读 · 2018年12月8日
快讯 | Facebook将推出PyTorch 1.0,整合Caffe2 + PyTorch
大数据文摘
3+阅读 · 2018年5月3日
发布TensorFlow 1.4
谷歌开发者
7+阅读 · 2017年11月23日
Arxiv
6+阅读 · 2019年8月22日
Arxiv
21+阅读 · 2019年3月25日
Arxiv
12+阅读 · 2019年2月28日
Rapid Customization for Event Extraction
Arxiv
7+阅读 · 2018年9月20日
VIP会员
相关资讯
Tensorflow官方视频课程-深度学习工具 TensorFlow入门
深度学习与NLP
12+阅读 · 2019年3月12日
官方解读:TensorFlow 2.0 新的功能特性
云头条
3+阅读 · 2019年1月23日
TF Boys必看!一文搞懂TensorFlow 2.0新架构!
引力空间站
18+阅读 · 2019年1月16日
官方解读:TensorFlow 2.0中即将到来的所有新特性
机器之心
5+阅读 · 2019年1月15日
PyTorch 1.0 稳定版正式发布!
新智元
3+阅读 · 2018年12月8日
快讯 | Facebook将推出PyTorch 1.0,整合Caffe2 + PyTorch
大数据文摘
3+阅读 · 2018年5月3日
发布TensorFlow 1.4
谷歌开发者
7+阅读 · 2017年11月23日
Top
微信扫码咨询专知VIP会员