APP下载

TensorFlow 2.4正式支援多工作节点多GPU分散训练机器学习模型

消息来源:baojiabao.com 作者: 发布时间:2026-05-26

报价宝综合消息TensorFlow 2.4正式支援多工作节点多GPU分散训练机器学习模型

深度学习函式库TensorFlow释出最新版本2.4,该版本支援新的分散式训练策略,Keras还更新了混合精度功能,加速模型训练工作,此外,TensorFlow 2.4提供Python开发者,熟悉的数值运算函式库NumPy支援,而用于监控和诊断的分析工具也有更新,以支援新加入的功能。

TensorFlow中分散式训练模组tf.distribute更新两个重要策略,tf.distribute不同策略可让开发者以不同的方法分散运算。更新的策略分别是多工作节点镜像策略MultiWorkerMirroredStrategy API,进入稳定阶段,而参数服务器策略ParameterServerStrategy API和自定义训练循环,则开始提供实验性支援。官方提到,ParameterServerStrategy就像是MultiWorkerMirroredStrategy一样,是一种多工作节点资料平行策略,只不过梯度更新是以异步的方式。

一个参数服务器训练丛集,由多个工作节点与参数服务器组成,参数服务器会创建变数,供工作节点读取和更新,而变数读取和更新在所有工作节点中,皆独立进行,没有执行任何的同步作业,而由于工作节点互不相依,因此该策略有容错的优点,并且在先占式虚拟机器特别好用。

多工作节点镜像策略,则脱离实验阶段成为稳定API,MultiWorkerMirroredStrategy以同步资料平行性实作分散式训练,也就是说,开发者可以在多台具有多个GPU的机器上,执行训练工作。在同步训练中,每个工作节点运算前后不同的资料片段,并会在更新模型之前汇总梯度。

TensorFlow Profiler也开始支援多节点训练策略,TensorFlow Profiler是一套让开发者评估,TensorFlow模型训练效能和资源消耗的工具,供开发者探索模型操作时,硬件资源消耗以及瓶颈,以达到加快训练速度的目的。过去TensorFlow Profiler可用来监控单一主机多GPU的训练工作,而现在也可用来分析MultiWorkerMirroredStrategy训练工作。

在TensorFlow 2.4中,Keras混合精度已成为稳定API。大多数TensorFlow模型都使用float32资料类型,但是部分像是float16低精度类型,使用较少的内存,因此在同一个模型中,同时使用32和16位元浮点数,可以提升训练速度,官方提到,使用混合精度API可以让模型获得3倍效能,在TPU上效能提升60%。

另外,这个版本TensorFlow还加入支援NumPy API子集,tf.experimental.numpy模组可以执行,经TensorFlow加速的NumPy程式码,由于新模组是以TensorFlow为基础建构,因此可以与TensorFlow无缝互通,不只能够存取所有TensorFlow API,还透过编译和自动向量化,来提供最佳化执行效能。这项支援可以提供像是TensorFlow ND阵列与NumPy函式互通,或是TensorFlow NumPy函式接受tf.Tensor和np.ndarray输入等操作。

2020-12-21 16:52:00

相关文章