减少机器学习的时间成本可以缩短模型训练的等待时间,加快模型更新周期。分布式机器学习使机器学习实践者能够将模型训练和推理时间缩短几个数量级。在本实用指南的帮助下,您将能够将您的Python开发知识应用到分布式机器学习的实现中,包括多节点机器学习系统。首先,您将探索分布式系统如何在机器学习领域工作,以及分布式机器学习如何应用于最先进的深度学习模型。随着学习的深入,您将看到如何使用分布式系统来增强机器学习模型训练和服务速度。在优化本地集群或云环境中的并行模型训练和服务管道之前,您还将掌握应用数据并行和模型并行方法。读完这本书,您将获得构建和部署高效数据处理管道所需的知识和技能,用于以分布式方式进行机器学习模型训练和推理。
https://www.packtpub.com/product/distributed-machine-learning-with-python/9781801815697
读者
这本书是为数据科学家,机器学习工程师,和机器学习从业者在学术界和工业界。本文假设您基本了解机器学习概念和Python编程的工作知识。有使用TensorFlow或PyTorch实现机器学习/深度学习模型的经验者优先。如果你对使用分布式系统来提高机器学习模型训练和服务速度感兴趣,你会发现这本书很有用。
内容目录:
第1章,分割输入数据,展示了如何将机器学习训练或服务负载分配到输入数据维上,称为数据并行。第2章Parameter Server和All-Reduce描述了数据并行训练过程中常用的两种模型同步方案。第3章,构建数据并行训练和服务管道,阐述了如何实现数据并行训练和服务流程。第4章,瓶颈和解决方案,描述了如何使用一些高级技术来提高数据并行性能,例如更高效的通信协议,减少内存占用。第5章,模型分割,介绍了一般的模型并行方法。第6章,管道输入和层拆分,展示了如何利用管道并行提高系统效率。第7章,实现模型并行培训和服务流程,详细讨论了如何实现模型并行培训和服务流程。第8章,实现更高的吞吐量和更低的延迟,涵盖了在模型并行中减少计算和内存消耗的高级方案。第9章,数据和模型并行的混合,将数据和模型并行结合在一起作为一种高级的并行模型训练/服务方案。第10章,联邦学习和边缘设备,讨论了联邦学习和边缘设备如何参与这个过程。第11章,弹性模型训练和服务,描述了一个更有效的方案,可以改变在飞行中使用的加速器的数量。第12章,进一步加速的高级技术,总结了几个有用的工具,如性能调试工具,工作多路复用,和异构模型训练。