这期内容当中小编将会给大家带来有关TensorFlow发布其新更新TensorFlow 2.4.0-rc4的示例分析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
TensorFlow最近发布了其新更新TensorFlow 2.4.0-rc4。TensorFlow Profiler现在支持对MultiWorkerMirroredStrategy 进行概要分析,该概要文件现在是一个稳定的API,并使用采样模式API跟踪多个工作进程。该策略可在多个可能具有多个GPU的工人之间进行同步分布式训练。一些重大的改进涉及处理同级失败和许多错误修复,这些错误修复可以在Keras的多员工训练中找到 。Keras Functional API内部的主要重构已完成。它提高了构建功能模型的可靠性,稳定性和性能。该更新还增加了对TensorFloat-32的支持在基于Ampere的GPU上。TensorFloat-32(TF32)是基于NVIDIA Ampere的GPU的数学模型,默认情况下启用。
重大变化
TF核心:
由于TensorFloat-32的缘故,一些float32运算在基于Ampere的GPU上运行时的精度较低,包括matmul和卷积 。例如,此类运算的输入从23位精度舍入到10位精度。在某些情况下,TensorFloat-32也可用于complex64 ops。因此现在可以禁用TensorFloat-32。
删除了许多不相关的API函数,例如C中用于字符串访问/修改的C-API函数。不属于TensorFlow公共API的模块被隐藏。
tf.keras:
现在 steps_per_execution 参数在compile()中稳定。它有助于在单个tf.function 调用中运行多个批处理 ,从而可以提高TPU或具有较大Python开销的小型模型的性能。Keras Functional API的内部结构已经进行了 重大重构。这种重构可能会影响依赖于某些内部细节的代码。
tf.data:
现在,tf.data.experimental.service.DispatchServer 和 tf.data.experimental.service.WorkerServer使用配置元组代替单个参数。可以分别使用 tf.data.experimental.service.DispatchServer(dispatcher_config) 和 tf.data.experimental.service.WorkerServer(worker_config) 完成此操作。这有助于同时处理多个参数。
tf.distribute:
在最新更新中,各种内置API均使用新功能进行了重命名。
错误修复和其他更改
使用python常量或NumPy值调用ops与tf.convert_to_tensor 行为一致 。现在,这避免了tf.reshape之类的操作 会截断诸如从int64到int32的输入。
增加了对调度程序容错的支持。
增加了对通过共享文件系统而不是通过RPC共享数据集图的支持。这样可以减轻调度程序的负担,从而提高分布式数据集的性能。
功能性API重构的改进:
功能模型的构建不需要维护全局工作空间图, 从而消除了内存泄漏,尤其是在构建许多模型或扩展模型时。
功能模型的构建应该平均快8-10%。
功能模型现在可以在第一个位置参数内的调用输入中包含非符号值。
现在,在功能性API构造期间无法可靠转换为Keras层的几种TF ops应该可以正常工作,例如 tf.image.ssim_multiscale。
当Functional API构造出错时(或无法将操作自动转换为Keras图层时)的错误消息应该更准确并且更易于理解。
总体而言,TensorFlow的新功能非常必要,因为它添加了必要的元素以增强性能并删除不相关的元素。引入的改进将有助于开发更可靠和改进的ML模型。
上述就是小编为大家分享的TensorFlow发布其新更新TensorFlow 2.4.0-rc4的示例分析了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。