2020 年 TensorFlow 开发者峰会总结
感谢各位来参加我们的 2020 年的 TensorFlow 开发者峰会的线上直播!虽然我们无法在现场与您相见,但我们希望今年的活动比以往更易参与。
欢迎在知乎问题与我们一起讨论分享您的收获
https://www.zhihu.com/question/378610205录播
https://www.bilibili.com/video/av95867255/
TensorFlow 2.2
我们在去年的峰会中发布了 TensorFlow 2.0。自此我们一直在与社区和用户共同努力,希望能带来更多惊喜,我们本周发布了 TensorFlow 的最新版本:TensorFlow 2.2.0-RC。
相较于去年的 2.0,TensorFlow 2.2 做出了进一步改善。我们专注于改善与提升 TensorFlow Core 性能,在保证性能评估易于进行的同时保持评估度量的一致性。我们开发了新的性能评估工具:Performance Profiler,希望对您有帮助。我们提升了 TensorFlow 生态系统的整体兼容性,包括 TensorFlow Extended 这类关键库等。
最后,为确保核心 API 的一致性,新版本仅做了一些必要更改,因此在当您将代码从 1.x 迁移时无须有太多顾虑。相关的更多信息,请参阅发行说明。
TensorFlow 生态系统
TensorFlow 2.2 是不断延伸的 TensorFlow 生态系统与代码库中的一部分,我们的目标只有一个:帮助您实现机器学习 (ML) 的目标, 每个人都能找到适合的工具。
研究人员可以应用丰富的库推进最前沿的机器学习研究,机器学习工程师或者数据科学家可以使用各种工具优化模型改善世界,更重要的是不论您的用户在什么应用环境,这个丰富的生态系统均可以提供更好的 AI 体验。
TensorFlow 社区对整个生态系统做出了贡献,与我们一同践行我们的目标:构建负责任的 AI。
用 TensorFlow 做前沿科研
在过去几年间,TensorFlow 一直在助力推动机器学习在众多子领域中的最前沿发展。
如最近发布的 T5 论文:统一的文本到文本 Transformer 来探索迁移学习的局限性 (Explore the limits of transfer learning with a unified text-to-text transformer)。文中,我们介绍了在 C4 数据集(可从 TensorFlow Datasets 上下载)上预训练的 T5 模型能够在许多常见的 NLP 基准上获得目前最佳 (SOTA) 结果,Transformer 也足够灵活,可以进行微调以适应各种下游任务,如:翻译、语法检查和摘要生成。
T5 模型使用最新的迁移学习将各种语言问题转换为文本到文本格式
此外,去年我们在 NeurIPS 上看到了上百篇使用 TensorFlow 进行研究的论文和学术海报。
首先,我们在 TensorBoard.dev 上得到了研究人员们的积极反馈,TensorBoard.dev 是我们去年推出的工具,可让研究人员在网站上上传与分享实验结果,生成的 URL 支持快速超参数可视化。其次,我们在 TensorBoard 引入了新的 Performance Profiler 工具,可对模型性能进行连续监测。
研究人员告诉我们他们希望能 快速 修改模型,并将训练扩展到加速的硬件上,尤其在管理数据提取、转换和加载时。由此,我们创建了 tf.data API 中的 TensorFlow Datasets,以便研究人员可以快速访问最佳 (SOTA) 数据集。无论使用这些数据集还是个人数据集,您可使用基于 TFRecord 的基础体系结构构建并行化,通过 tf.distribute 打造最佳输入流水线,从而实现更高效的基于训练基础架构的 GPU 或 TPU。
最后,TensorFlow 生态系统包含 Add-ons 和扩展组件,可以增强您的实验并使用您喜欢的开源库。诸如 TFProbability 和 TF Agents 之类的扩展组件可与最新版本一起使用。TensorFlow 可与 Google Research 之类的实验库(如 JAX)配合使用,例如使用 TensorFlow data 流水线将数据输入到 JAX 中。如果您对前沿计算感兴趣,请查看 TensorFlow Quantum 用于快速构建混合量子经典 ML 模型的原型库。
机器学习的应用
全球范围内有很多公司,无论他们规模或大或小,都信任并在他们的机器学习工作中使用 TensorFlow,我们深知任重道远。
我们的用户提到了微调超参数(见:使用 Keras Tuner 调节超参数),在去年年初,新开源的 Keras Tuner 就邀请用户来尝试使用。我们也在研究一组新的、轻量级的预处理层,现在正在实验中。
在 TensorFlow Hub: 轻松找模型 (演讲:见文末) 介绍中,Sandeep 今天谈到了我们将如何扩展 TensorFlow Hub。现在我们有超过 1000 个可用的模型,包括文档、代码段等。您可以下载、使用、重新训练并微调这些模型,如添加 Keras 层一般简单易上手。TFHub 上的一些发布者已创建了自定义组件来展示他们的工作,您可以在浏览器中直接上传图像或音频片段试用模型,无需额外安装。
为了帮助您构建模型,Google Colab 提供了托管的 Python 笔记本环境,可访问 GPU 和 TPU 资源,以便训练 TensorFlow 模型。在免费服务之上,我们新推出了 Colab Pro ,让您可以访问更快的 GPU、更长的运行时间和更多的内存。您可以在 Colab 笔记本上查看 Colab Pro 的优势。在峰会中,Tim Novikoff 介绍了 Colab 的潜力:经验和技巧 (演讲)。
我们还知道,从一个已训练的模型到一个业务关键流程,远远不止是创建一个模型架构、训练和测试。大规模生产建设涉及到更复杂的有关联的管理过程,以保持模型运行、联结和更新。考虑到这一点,我们创建了 TensorFlow Extended(TFX)。下面是使用 TFX 构建的生产系统的高级体系结构示例:
为了让在生产中使用 TensorFlow 更方便,我们推出了 Google Cloud AI Platform Pipelines。专为构建端到端生成流水线而设计,就像我们上面展示的那样,构建在 KubeFlow、TFX 和 Google Cloud 之上。您可使用 AI Platform Pipelines,TensorFlow 的自定义版本,有更多功能上的优化与对企业的长期技术支持,我们还有一个教程指导您如何将 Cloud AI Platform Pipelines 与 TFX 结合使用。
部署
TensorFlow 致力于让模型与计算在各种硬件上都能高效运行。
对于 TFLite,我们介绍了很多新特性。我们使模型作者能够在创建和转换模型时提供 metadata,以便更好的支持模型交换,让模型更容易被理解以及自动化。开发者可以通过代码生成工具,运行一个命令自动生成 TFLite 模型的 Java 类。我们新增了对 Android Studio 的集成,很快就可以在 Canary Channel 中使用,仅需轻松拖放到 Android Studio 中,鼠标单击几下即可生成 Java 类。我们还有一个新的 Model Maker,它可以让开发人员只需要几行代码就可以对已有的模型进行微调。我们介绍了最新开发的 Core ML Delegation 来利用苹果手机中的 Apple Neural Engine,如此用户可以使用 TensorFLow Lite 在最新的 iPhone 和 iPad 中加速浮点模型推理。最后,我们将继续专注于性能改善,以在手机的 CPU,GPU,DSP 和 NPU 上为您的模型提供最快的执行速度。
借助 TensorFlow.js,我们希望能让 JavaScript 开发者和 Web 开发者能更轻松地构建和使用机器学习。我们推出了几种用于人脸、手部追踪以及 NLP 的新模型,您可立即下载并在您的 Web 或 Node.js 应用程序中使用这些模型。我们改善了模型的性能,增加了新的后端以及与 TensorFlow 2.0 模型训练的更无缝集成。
最后,我们展示了可加速核心循环的新运行库:TensorFlow RunTime (TFRT),即将开源。我们还介绍了 MLIR,我们的共享编译器基础设施,可统一运行机器学习计算的基础设施。作为一个具体的变更,2 月份我们发布了 TF → TFLite Converter,可提供更好的错误消息提示、支持控制流 (Control Flow) 和统一的量化工作流。结合 TFRT 和 MLIR 的特性,为硬件和低级库提供更稳定的选择,也可更进一步支持更多功能。
社区
当然,社区是 TensorFlow 的核心。我们期待一个更加活跃的社区,作为开发者的您有多种方法可以参与其中,如:
TensorFlow User Groups (TFUG) 是一个快速发展的社区!在我们推出 TFUG 的短短 7 个月内,全球共成立了 73 个 TFUG,其中成员最多的是韩国,拥有 46,000 多个成员。在 2019 年的 TensorFlow Roadshow 之后,我们在拉丁美洲:巴西和阿根廷建立了最早的 TFUG。我们一直在期待更多的成员的加入,所以,如果您想在您当地成立 TFUG,请联系 tfug-help@tensorflow.org! 我们也有一些致力于各种主题的兴趣小组 (Special Interest Groups, SIG) ,其中 SIG: Graphics 是最新成立的,即将在 3 月底开放。要了解更多关于 SIG 及其工作方式的信息,请查看 Playbook。 最后,如果您是机器学习和 TensorFlow 领域的 KOL,那么不妨考虑成为一名谷歌开发者专家 (Google Developer Expert),在参与活动演讲、发布内容的过程中,为开发者、产品和技术社区提供支持。
如果您对挑战赛感兴趣,我们发起了一个新的 Dev Post 挑战赛:负责任的 AI 开发,以及在 Google Summer of Code,学生可以与开源组织展开为期 3 个月的编程项目合作。TensorFlow 团队是其中一个参与组织,请查看 Summer of Code 网站了解更多信息。
教育
如果您来自学校或其他教育机构,我们有帮您创建教学内容来指导您使用 TensorFlow 进行机器学习的项目,并可为您提供各种资源以帮助您取得成功。我们发布了一项奖学金支持计划,希望能帮助在传统上代表性不足的 AI 社区。详情可在 TensorFlow 网站上找到。
我们与 Coursera 和 deeplearning.ai 合作,发布了 TensorFlow: In Practice 课程,介绍如何构建计算机视觉、NLP 等模型以及序列建模。 TensorFlow: Data and Deployment课程,指导如何使用 TensorFlow.js、TensorFlow Lite、TensorFlow service 等等。 Machine Learning Crash Course 现已更新,支持 TensorFlow 2.0。 Udacity 上发布了 Intro to Deep Learning Course 与 Introduction to TensorFlow Lite course 课程。
TensorFlow 开发者认证
我们很高兴对您的 TensorFlow 代码和建模能力进行评估,为专业的 TensorFlow 开发者提供正式认证与证书!为了提供更多机会给跨背景、经历和视角的人们,我们提供有限数量的教育材料和 / 或考试费用补贴。详情请访问 tensorflow.google.cn/certificate。
我们将以建模能力,从简单的线性回归到更高级的场景为测试,如:计算机视觉、NLP 和 序列建模。如果您计划参加考试,可以参考 deeplearning.ai 的 TensorFlow: In Practice 课程大纲。获得证书后,您可以在 LinkedIn、GitHub 和新的 TensorFlow Certificate Network 上分享您的证书!
回顾
如您所见,过去是忙碌的一年,我们在这一年有了诸多进展。当然,这也是您成为 TensorFlow 开发者的好时机!想要了解关于 TensorFlow 的更多信息,请访问 tensorflow.google.cn,关注我们的官方微信公众号 TensorFlow_official,关注我们的 Weibo (Google 开发者)、Bilibili (Google 中国) 等社交媒体平台,还有,不要忘记订阅我们的 YT 频道!
互动话题
好学的你在收看本届 Summit 后
一定有写学习笔记~
在本文留言回复学习笔记的链接
我们将随机挑选三个评论并发
【TensorFlow 定制徽章及手机支架】一套
(活动截止时间:3月20日中午12:00)
我不会告诉你徽章是 TFWorld 特别纪念
2020 TensorFlow 开发者峰会的所有话题,请查看我们在 Bilibili 上的播放列表。
Bilibili 播放列表
原声:https://www.bilibili.com/video/av95867255/同传:https://www.bilibili.com/video/av95867255?p=5
Part 1
18:00 活动正式开始
18:00 主题演讲
50:00 用 TensorFlow 和 Keras 学会“阅读”
66:00 TensorFlow Hub: 轻松找模型
74:34 TensorBoard.dev 助力机器学习
80:18 借助 TensorFlow 2.x 让 Kaggle 用户用上 TPU
85:47 TensorFlow 2 中的性能检测
89:21 QA & 中场休息视频
Part 2
01:49 MLIR: 使用编译器加速 TensorFlow
11:54 TFRT: 新的 TensorFlow 运行库
22:10 TFX: 2020 年 TensorFlow 在生产环境中的进展 (AIRBUS应用案例)
46:46 TensorFlow Enterprise:在 Google Cloud 上的 TensorFlow 生产环境实践
57:21 TensorFlow Lite: 移动端及 IoT 设备上的机器学习
72:00
82:10 TensorFlow.js: 不止于网页端的机器学习探索
93:00 QA & 中场休息视频
Part 3
03:36 参与 TensorFlow 社区
13:09 用 TensorFlow 开发负责任的 AI 应用:公平与隐私
34:47 TensorFlow Quantum: 为混合量子 - 经典机器学习构筑的软件平台
Part 4
01:30 用 TensorFlow 做前沿科研
17:27 可微分凸优化层
26:39 运用 tf.data 进行大规模 TensorFlow 数据处理
39:30 拓展 TensorFlow 2 模型至多机 GPU 应用
55:35 开发 Colab 潜力
62:10 NASA:喷气推进实验室
69:44 QA & 中场休息视频
如果您想详细了解 本文提及 的相关内容,请参阅以下文档。这些文档深入探讨了这篇文章中提及的许多主题:
Performance Profiler
https://tensorflow.google.cn/tensorboard/tensorboard_profiling_kerasTensorFlow Extended
http://tensorflow.google.cn/tfx统一的文本到文本 transformer 来探索迁移学习的局限性
https://arxiv.org/abs/1910.10683TensorFlow Datasets
https://tensorflow.google.cn/datasets/catalog/c4上百篇
https://arxiv.org/search/?query=tensorflow&searchtype=all&source=headerTensorFlow Datasets
https://tensorflow.google.cn/datasetstf.distribute
https://tensorflow.google.cn/api_docs/python/tf/distributeTF Probability
https://tensorflow.google.cn/probabilityTF Agents
https://github.com/tensorflow/agentsJAX
https://github.com/google/jaxKeras Tuner
https://keras-team.github.io/keras-tuner/
实验中
https://tensorflow.google.cn/api_docs/python/tf/keras/layers/experimental/preprocessing/TextVectorization
TensorFlow Hub
https://tfhub.dev/
Google Colab
https://colab.research.google.com/
Colab 笔记本
https://colab.research.google.com/notebooks/pro.ipynb
Colab Pro
https://colab.research.google.com/signup
TensorFlow Extended
https://tensorflow.google.cn/tfx
Google Cloud AI Platform Pipelines
https://cloud.google.com/ai-platform/pipelines/docs?hl=nb
KubeFlow
https://www.kubeflow.org/
教程
https://tensorflow.google.cn/tfx/tutorials/tfx/cloud-ai-platform-pipelines
Metadata
https://tensorflow.google.cn/lite/convert/metadata代码生成工具
https://tensorflow.google.cn/lite/guide/codegen
Canary Channel
http://tools.android.com/preview-channelModel Maker
https://github.com/tensorflow/examples/tree/master/tensorflow_examples/lite/model_makerTensorFlow.js
http://tensorflow.google.cn/jsPlaybook
https://tensorflow.google.cn/community/sig_playbookGoogle Developer Expert
https://developers.google.com/community/expertsDev Post 挑战赛
http://responsible-ai.devpost.com
Summer of Code
https://summerofcode.withgoogle.com/TensorFlow 网站
https://blog.tensorflow.org/2020/02/request-for-proposals-faculty-awards-to-support-machine-learning-courses-universities.htmlTensorFlow: In Practice 课程
https://www.coursera.org/specializations/tensorflow-in-practiceTensorFlow: Data and Deployment课程
https://www.coursera.org/specializations/tensorflow-data-and-deploymentMachine Learning Crash Course
http://g.co/machinelearningcrashcourseIntro to Deep Learning Course 课程
https://cn.udacity.com/course/intro-to-tensorflow-for-deep-learning--ud187Introduction to TensorFlow Lite course 课程
https://cn.udacity.com/course/intro-to-tensorflow-lite--ud190TensorFlow: In Practice 课程大纲
https://www.coursera.org/specializations/tensorflow-in-practiceTensorFlow Certificate Network
https://tensorflow.google.cn/certificate