[论文解读] TensorFlow: A system for large-scale machine learning
TensorFlow 提供了一个基于数据流图的系统,用于具有可变状态、分布式执行以及面向研究和生产用途的可扩展的大规模机器学习。
TensorFlow is a machine learning system that operates at large scale and in heterogeneous environments. TensorFlow uses dataflow graphs to represent computation, shared state, and the operations that mutate that state. It maps the nodes of a dataflow graph across many machines in a cluster, and within a machine across multiple computational devices, including multicore CPUs, general-purpose GPUs, and custom designed ASICs known as Tensor Processing Units (TPUs). This architecture gives flexibility to the application developer: whereas in previous "parameter server" designs the management of shared state is built into the system, TensorFlow enables developers to experiment with novel optimizations and training algorithms. TensorFlow supports a variety of applications, with particularly strong support for training and inference on deep neural networks. Several Google services use TensorFlow in production, we have released it as an open-source project, and it has become widely used for machine learning research. In this paper, we describe the TensorFlow dataflow model in contrast to existing systems, and demonstrate the compelling performance that TensorFlow achieves for several real-world applications.
研究动机与目标
- 激励需要一个可扩展的机器学习系统,能够在大规模数据集和模型上进行训练。
- 引入一个统一的数据流图模型,以捕捉计算和可变状态。
- 展示跨 CPU、GPU 和 TPU 的分布式执行和设备放置。
- 通过内置微分、对大模型的支持和容错能力,展示对研究的可扩展性。
提出的方法
- 定义一个单一的数据流图来表示计算和可变状态。
- 使用变量和队列来在图内实现状态以及跨并发执行的协调。
- 实现分布式执行,按设备子图进行,并实现跨设备的 Send/Recv 通信。
- 通过 Switch 和 Merge 提供动态控制流,以支持非严格求值。
- 允许用户级可扩展性,用于微分、优化算法和大规模稀疏嵌入。
- 通过图内检查点和灵活的同步方案实现容错。
实验结果
研究问题
- RQ1如何让一个单一的数据流图模型在大规模条件下同时支持训练和推理?
- RQ2哪些机制能够实现跨异构体系结构的高效分布式训练和设备放置?
- RQ3如何将可变状态和协调暴露给研究人员,以实现新的优化方法和模型架构?
- RQ4哪些策略(例如同步与异步更新、备份工作者)能提升训练吞吐量和鲁棒性?
主要发现
- TensorFlow 能在大型集群上实现数据并行训练,步长时间适用于大规模学习(如 Subsection 6.3 所示)。
- 系统同时支持异步和同步副本协调,备份工作者将吞吐量提升高达 15%。
- 动态控制流和图内状态允许在不修改运行时的情况下对新模型和优化算法进行灵活实验。
- 通过将计算与参数同置以及基于分片的策略,促进稀疏嵌入和大模型处理。
- 检查点和容错在图级实现,使策略选择与迁移学习工作流更加灵活。
- 数据流模型提供跨设备的可移植性,包括 CPU、GPU、TPU,以及跨生产/移动端推理。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。