0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

TensorFlow 2.4来了 带来了多项新特性和功能改进

新机器视觉 来源:新机器视觉 作者:机器之心 2020-12-26 11:38 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

谷歌正式发布了 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

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:

pIYBAF_msJqARmysAABBsgUGUmE079.jpg

这些更新的目标是让 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 在内的不同类型输入。

o4YBAF_msK-AD0uIAABwAa2nu7U191.jpg

新的性能分析工具

TensorFlow Profiler 是度量 TensorFlow 模型的训练性能和资源消耗情况的工具,用来诊断性能瓶颈,最终加快训练速度。 此前,TensorFlow Profiler 支持多 GPU 单主机训练。到了 2.4 版本,使用者可以测试 MultiWorkerMirroredStrategy 的训练工作了,比如使用采样模式 API 按需配置,并连接到 MultiWorkerMirroredStrategy 工作器正在使用的同一服务器。


另外,你可以通过向捕获配置文件工具提供工作器地址来使用 TensorBoard 配置文件插件。配置之后,你可以使用新的 Pod Viewer tool 来选择训练步骤,并查看所有工作器上该步骤的 step-time 的细分。 TFLite Profiler TFLite Profiler 则支持在 Android 中跟踪 TFLite 内部信息,以识别性能瓶颈。

GPU 支持

TensorFlow 2.4 与 CUDA 11 和 cuDNN 8 配合运行,支持最新发布的英伟达安培架构 GPU,对于 CUDA 11 的新特性,可以参考英伟达开发者博客: https://developer.nvidia.com/blog/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

责任编辑:xj

原文标题:TensorFlow 2.4来了:上线对分布式训练和混合精度的新功能支持

文章出处:【微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据集
    +关注

    关注

    4

    文章

    1230

    浏览量

    26046
  • tensorflow
    +关注

    关注

    13

    文章

    331

    浏览量

    61851

原文标题:TensorFlow 2.4来了:上线对分布式训练和混合精度的新功能支持

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    蓝牙6.0核心特性解析:信道探测、厘米级定位与低功耗升级

    蓝牙6.0的发布时间是在2024年的9月初。具体来说,蓝牙技术联盟(Bluetooth SIG)在2024年9月3日发布蓝牙6.0的核心规范。这次更新带来了包括蓝牙频道探测在内的多项功能
    的头像 发表于 11-25 11:21 638次阅读

    CAN XL总线,ZLG致远电子来了

    导读2025年11月18日~21日,CiA在深圳、北京和上海三地圆满举办了“CANXL中国路演”,ZLG致远电子作为国内第一批CiA会员,带来了最新CANXL硬件软件方案并且发表总线技术演讲
    的头像 发表于 11-24 11:46 304次阅读
    CAN XL总线,ZLG致远电子<b class='flag-5'>来了</b>!

    无刷吸尘器在吸尘器领域带来了革命性的提升,其优势是全方位的【其利天下】

    无刷电机相对于传统有刷电机,在吸尘器领域带来了革命性的提升,其优势是全方位的。从研发的角度剖析无刷电机相对于有刷电机的优势,我们会发现这远不止是性能参数的提升,而是一场从“模拟机械”到“数字智能
    发表于 10-28 09:35

    汽车电气系统的发展演进为测试带来了哪些影响?

    随着汽车智能化进程加速,车辆电气系统方案持续演进。为满足日益严格的功能安全要求,主机厂逐渐引入智能配电、冗余配电等新型方案,这给电气系统的测试环节带来了显著影响。智能配电测试何为智能配电?下图分别
    的头像 发表于 09-01 15:13 365次阅读
    汽车电气系统的发展演进为测试<b class='flag-5'>带来了</b>哪些影响?

    什么是蓝牙BLE5.4

    蓝牙 v5.4 概述 (PAwR, EAD, ESL, LE Gatt) Bluetooth SIG 的 Bluetooth® v5.4 核心规范为支持 Bluetooth 的物联网设备带来了多项
    发表于 07-21 14:56

    所以你做出来了

    所以你做出来了吗,求
    发表于 06-16 01:43

    软件更新 | 你期待的新功能来了!TSMaster 202502 新版本亮点抢先看!

    备受期待的TSMaster202502最新版终于来了!在本月更新中,我们为用户带来了超多全新功能,旨在进一步提升软件的性能、灵活性与用户体验。接下来,我们将为您详细介绍本次更新的亮点内容,帮助
    的头像 发表于 03-07 20:03 1107次阅读
    软件更新 | 你期待的新<b class='flag-5'>功能来了</b>!TSMaster 202502 新版本亮点抢先看!

    为什么无法使用OpenVINO™模型优化器转换TensorFlow 2.4模型?

    已下载 ssd_mobilenet_v2_fpnlite_640x640_coco17_tpu-8 型号。 使用将模型转换为中间表示 (IR) ssd_support_api_v.2.4
    发表于 03-05 09:07

    dlp4500蓝色光投不出来了如何维修?

    dlp4500蓝色光投不出来了,应该是静电导致的,请问如何维修呢
    发表于 02-26 08:16

    新思科技LucidShape 2024.09新增功能

    LucidShape的最新版本2024.09带来了一系列新功能与增强功能,旨在解决光学开发者面临的最常见和最复杂的挑战。从微透镜阵列(MLA)的自动掩模计算,到高级分析功能
    的头像 发表于 01-21 09:16 964次阅读
    新思科技LucidShape 2024.09新增<b class='flag-5'>功能</b>

    $1999 的 RTX 5090 来了

    RTX 5090 NVIDIA GeForce RTX 5090 是有史以来最强大的 GeForce GPU,为游戏玩家和创作者带来了改变游戏规则的功能。以前所未有的 AI 能力应对最先进的模型
    的头像 发表于 01-13 10:03 3028次阅读
    $1999 的 RTX 5090 <b class='flag-5'>来了</b>

    小米汽车接入VLM视觉语言大模型,OTA更新带来多项升级

    小米汽车近日宣布,其SU7车型的1.4.5版OTA(空中升级)已经开始推送。此次更新带来了多项新增功能和体验优化,旨在进一步提升用户的驾驶体验。 其中最引人注目的是,小米汽车正式接入了VLM视觉语言
    的头像 发表于 12-24 09:52 1453次阅读

    与帝奥微解锁蔚智能驾驶新体验

    近日,NIO蔚走进帝奥微,携多款热门车型亮相,于上海研发中心为大家带来了一场专属体验试驾活动。
    的头像 发表于 12-19 11:34 1060次阅读

    SOLIDWORKS 2025引入了多项新增工具和增强功能

    在工程设计领域,SOLIDWORKS一直以其强大的功能和灵活的操作性赢得了广泛的认可。随着SOLIDWORKS 2025版本的发布,这款三维CAD设计软件再次以一系列令人瞩目的新增工具和增强功能,为全球设计师和工程师们带来了设计
    的头像 发表于 12-17 15:23 1107次阅读

    键盘就是电脑,树莓派500来了

    和 Raspberry Pi Monitor 给大家提供一个完整的桌面解决方案。 Raspberry Pi 500 处理器: 2.4GHz 四核 64 位 Arm Cortex-A76 内存: 8GB
    发表于 12-13 13:52