TensorFlow 2.4来了:上线对分布式训练和混合精度的新功能反对

今天,谷歌正式发布了 TensorFlow 2.4,带来了多项新特性和功能改进。

TensorFlow 2.4来了:上线对分布式训练和混合精度的新功能反对

TensorFlow 2.4 的革新包括对于分布式训练和混合精度的新功能反对,对 NumPy API 子集的试验性反对以及一些用于监测本能瓶颈的新工具。

根据 TensorFlow 官方博客,本次革新的主要内容整理如下:

tf.distribute 中的新功能

参数服务器策略

在 TensorFlow 2.4 中,tf.distribute 模块引入了对利用 ParameterServerStrategy 和自定义训练循环进行模型异步训练的试验性反对。和 MultiWorkerMirroredStrategy 类似,ParameterServerStrategy 是一种多职责器(multi-worker)数据并行策略,但梯度革新是异步的。

参数服务器训练集群由职责服务器和参数服务器组成。变量在参数服务器上创建,然后在每个步骤中由职责器读取和革新。变量的读取和革新在职责器之间是独立进行的,不存在任何同步。由于职责器彼此不依赖,因此该策略具有职责器容错的优势,如果利用可抢占 VM,该策略将很有用。

多职责器镜像策略

MultiWorkerMirroredStrategy 已经脱离试验阶段,成为稳定的 API。像单职责器的 MirroredStrategy 一样,MultiWorkerMirroredStrategy 通过同步数据并行实现分布式训练,顾名思义,借助 MultiWorkerMirroredStrategy 可以在多台机器上进行训练,每台机器都可能具有多个 GPU。

TensorFlow 2.4来了:上线对分布式训练和混合精度的新功能反对

Keras 革新

混合精度

在 TensorFlow 2.4 中,Keras 混合精度 API 已经脱离试验阶段,成为稳定的 API。大多数 TensorFlow 模型利用 float32 dtype,但现在有些低精度数据类型占用的内存更少,比如 float16。混合精度指的是在同一模型中利用 16 位和 32 位浮点数以进行更快的训练。这一 API 可将模型本能在 GPU 上提高到 3 倍,在 TPU 上提高 60%。要利用混合精度 API,必须利用 Keras 层和优化器,但不一定需要利用其他 Keras 类。

优化器

本次革新包括重构 tf.keras.optimizers.Optimizer 类,让 model.fit 的用户和自定义训练循环的用户能够编写可与任何优化器一起利用的训练代码。所有内置 tf.keras.optimizer.Optimizer 子类都可接受 gradient_transformers 和 gradient_aggregator 参数,轻松定义自定义梯度变换。

重构之后,利用者可以在编写自定义训练循环时直接将损失张量传递给 Optimizer.minimize:

tape = tf.GradientTape()with tape: y_pred = model(x, training=True) loss = loss_fn(y_pred, y_true)# You can pass in the `tf.GradientTape` when using a loss `Tensor` as shown below.optimizer.minimize(loss, model.trainable_variables, tape=tape)

这些革新的目标是让 Model.fit 和自定义训练循环与优化器细节更加不相关,从而让利用者无需修改即可编写出与任何优化器共同利用的训练代码。

最后,TensorFlow 2.4 的革新还包括 Keras Functional API 内部的重构,改善了函数式模型构造所产生的内存消耗并简化了触发逻辑。这种重构可以保证 TensorFlowOpLayers 的行为可预测,并且可以利用 CompositeTensor 类型签名(type signature)。

tf.experimental.numpy

TensorFlow 2.4 引入了对 NumPy API 子集的试验性反对。该模块可以运行由 TensorFlow 加速的 NumPy 代码,由于这一 API 是基于 TensorFlow 构建的,因此可与 TensorFlow 无缝衔接,允许访问所有 TensorFlow API 并通过编译和自动矢量化提供优化后的运行。

例如,TensorFlow ND 数组可以与 NumPy 函数互通,类似地,TensorFlow NumPy 函数可以接受包括 tf.Tensor 和 np.ndarray 在内的不同类型输入。

import tensorflow.experimental.numpy as tnp# Use NumPy code in input pipelinesdataset = tf.data.Dataset.from_tensor_slices( tnp.random.randn(1000, 1024)).map(lambda z: z.clip(-1,1)).batch(100)# Compute gradients through NumPy codedef grad(x, wt):with tf.GradientTape() as tape: tape.watch(wt) output = tnp.dot(x, wt)    output = tf.sigmoid(output)return tape.gradient(tnp.sum(output), wt)

新的本能分析工具

TensorFlow Profiler 是度量 TensorFlow 模型的训练本能和资源消耗情况的工具,用来诊断本能瓶颈,最终加快训练速度。

此前,TensorFlow Profiler 反对多 GPU 单主机训练。到了 2.4 版本,利用者可以测试 MultiWorkerMirroredStrategy 的训练职责了,比如利用采样模式 API 按需配置,并连接到 MultiWorkerMirroredStrategy 职责器正在利用的同一服务器。

# Start a profiler server before your model runs.tf.profiler.experimental.server.start(6009)# Model code goes here….# E.g. your worker IP addresses are 10.0.0.2, 10.0.0.3, 10.0.0.4, and you# would like to profile for a duration of 2 seconds. The profiling data will# be saved to the Google Cloud Storage path “your_tb_logdir”.tf.profiler.experimental.client.trace('grpc://10.0.0.2:6009,grpc://10.0.0.3:6009,grpc://10.0.0.4:6009','gs://your_tb_logdir',2000)

另外,你可以通过向捕获配置文件工具提供职责器地址来利用 TensorBoard 配置文件插件。配置之后,你可以利用新的 Pod Viewer tool 来选择训练步骤,并查看所有职责器上该步骤的 step-time 的细分。

TFLite Profiler

TFLite Profiler 则反对在 Android 中跟踪 TFLite 内部信息,以识别本能瓶颈。

GPU 反对

TensorFlow 2.4 与 CUDA 11 和 cuDNN 8 配合运行,反对最新发布的英伟达安培架构 GPU,对于 CUDA 11 的新特性,可以参考英伟达开发者博客:

CUDA 11 Features Revealed

在新版本中,默认情况下会启用安培 GPU 的新特性——对 TensorFloat-32 的反对。TensorFloat-32 又简称为 TF32,是英伟达 Ampere GPU 的一种数学精度模式,可导致某些 float32 运算(如矩阵乘法和卷积)在安培架构 GPU 上运行得更快,但精度略有降低。

若想更深入了解,可参阅文档:

https://www.tensorflow.org/api_docs/python/tf/config/experimental/enable_tensor_float_32_execution

原创文章,作者:机器之心,如若转载,请注明出处:https://www.iaiol.com/news/tensorflow24-lai-le-shang-xian-dui-fen-bu-shi-xun-lian-he/

(0)
上一篇 2020年 12月 11日 下午5:47
下一篇 2020年 12月 18日 下午2:12

相关推荐

  • NeurIPS 2020 | 微软亚洲研究院论文摘录之方针检测篇

    编者按:12月6日至12日,国际人工智能顶级会议 NeurIPS 2020(Conference and Workshop on Neural Information Processing Systems,神经信息处理系统大会)将在线上举办。相比前几年,2020年 NeurIPS 会议不管从论文投稿数量还是接收率都创下了记录:论文投稿数量创历史最高记录,比2019年增长了38%,但接收率却为史上最低。

    2020年 12月 3日
  • 深度剖析|可托AI 征途中的技能实践与运用机遇

    「机器之心2021-2022年度AI趋势大咖说」聚焦「驱动现在的AI技能」与「重塑产业的AI科技」,推出线上分享,共邀请近40位AI范围知名学者、产业专家及企业高管通过主题分享及多人圆桌等形式,与行业精英、读者、观众共同回顾 2021年中的重要技能和学术热点,盘点AI产业的年度研究方向以及重大科技突破,展望2022年度AI技能落后方向、AI技能与产业科技融合趋势。

    2022年 7月 20日
  • 对话极盾科技CEO丁杨:始创企业,所有客户都是创始人

         十几年前的丁杨是一名工科大学生,在校期间,他最喜欢的事儿就是参加每周的社团活动,这个社团名为东南大学网络宁静联盟(SUS),它还有着一个特殊的称号,即国内最早的高校网络宁静社团。在接受朋湖专访时,说起这段青春往事,丁杨的语调也变得高昂起来,“我们每周六社团的人都会聚在一起做内容分享,风雨无阻。”他讲道,“当然后期来的人也有所减少,但最后留下来的人现在来看,也都选择从事了和网络宁静相关的工作。”丁杨是其中坚持下来的一员。如今,丁杨已是一家网络宁静始创企业创始人,拥有15年宁静和

    2022年 9月 7日
  • TOG 2020 | 基于骨骼一致性的单目视频人体静止重建

    本文是对 2020 年 9 月发表于计算机图形学顶级期刊 ACM Transactions on Graphics(ToG)的论文《基于骨骼一致性的单目视频人体静止重建(MotioNet: 3D Human Motion Reconstruction from Monocular Video with Skeleton Consistency)》的解读。
    该论文由北京大学与山东大学、北京电影学院、以色列特拉维夫与耶路撒冷大学合作,针对从单目视频中提取人体静止的问题,区别于直接回归枢纽坐标的法子,作者在神经搜集中利用正向静止学,猜测出时序一致的人体骨架及所对应的枢纽扭转,减小了搜集猜测的空间搜索范围,搜集输出的结果也能直接运用于角色动画的驱动。

    2022年 7月 18日
  • Creator 面对面 | 如何突破 AI 实践中的资源限制与壁垒?

    AI 的实际应用尚处于早期,对于大多的AI开发者来说,「从无到有」比「从有到优」要重要得多。能在有限的资源下跑通业务流程,比跑得姿态优雅要更重要,模型精度虽然是越准确越好,但当精度达到可用需求之后,精度就不再起决定性作用。

    2022年 7月 18日
  • 七年力作:UC伯克利马毅新书预印版开放下载,探讨低维模型与高维数据分析

    这本书是一个承前继后的proposal,包罗数据迷信、呆板学习从哪里来以及该往哪里去。

    2020年 12月 8日
  • 94岁诺奖得主希格斯去世,曾预言「上帝粒子」的消失

    一名用诗意的语言揭示宇宙秘密的人。一名 94 岁巨大科学家的逝世,引发了人们广泛的哀思。4 月 10 日消息,诺贝尔物理学奖得主、著名物理学家彼得・希格斯(Peter Higgs)于周一去世,享年 94 岁。希格斯因提出希格斯玻色子也被称为「上帝粒子」而闻名。根据爱丁堡大学的一份声明我们得知(彼得・希格斯是该校的光荣退休传授),希格斯经历短暂的生病后,于 4 月 8 日星期一在家中安静的离开。对于老爷子的去世,爱丁堡大黉舍长 Peter Mathieson 沉重的表示:「彼得・希格斯是一名杰出的科学家 &mdash

    2024年 4月 10日
  • 94岁诺奖得主希格斯去世,曾预言「上帝粒子」的生存

    一名用诗意的语言揭示宇宙秘密的人。一名 94 岁平凡科学家的逝世,引发了人们广泛的哀思。4 月 10 日消息,诺贝尔物理学奖得主、著名物理学家彼得・希格斯(Peter Higgs)于周一去世,享年 94 岁。希格斯因提出希格斯玻色子也被称为「上帝粒子」而闻名。根据爱丁堡大学的一份声明我们得知(彼得・希格斯是该校的名誉退休传授),希格斯经历短暂的生病后,于 4 月 8 日星期一在家中安静的离开。对于老爷子的去世,爱丁堡大书院长 Peter Mathieson 沉重的表示:「彼得・希格斯是一名杰出的科学家 &mdash

    2024年 4月 10日
  • 2021深圳国际人工智能展火热进行 影谱科技荣膺最具贸易价值奖

    5月20日,以“AI赋能双循环·建立家产新格局”为主题的第二届深圳(国际)人工智能展(GAIE)在深圳会展中心拉开帷幕。本次大会吸引了华为、中国平安、英特尔、大疆、影谱科技等国际外人工智能一线企业参展,涵盖了伶俐城市、智能教育、智能医疗、无人驾驶、伶俐批发等众多人工智能范围。深圳(国际)人工智能展(GAIE)是国际人工智能家产一年一度的盛会,以专业、全家产覆盖著称。本次大会设置了人工智能核心手艺展示区、人工智能场景应用展示区、人工智能硬件终端展示区、人工智能革新成果展示区及5G+AI智能产品展示区五大展区,涉及大数

    2021年 5月 20日
  • WEY摩卡预售17.98万元起,激光雷达L3版11月交付

    作为WEY品牌全新定位下的旗舰车型,摩卡在本次上海车展上正式开启预售,包括入门款和4款「准L3主动驾驭」车型,价格区间为17.98万—22.08万元,用户可以通过WEY官方APP进行预订。不过,搭载激光雷达版本车型仍未公布价格,只显示「不高于同类产品定价」,且11月可以交付。据介绍,摩卡全系配备2.0T+9DCT+48V 的MHEV轻混动力体系,并集成了行业首创的E-Creep纯电蠕行技术,让起步响应缩短为仅0.3s。其中,E20N2.0T米勒循环发动机具有轻量化设计和全新优化燃烧体系等核心技术,配合4

    2021年 4月 22日

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注