大规模机器学习系统架构设计与优化

1 下载量 105 浏览量 更新于2024-08-29 收藏 992KB PDF 举报
大规模机器学习系统中的NoFreeLunch 大规模机器学习系统中的NoFreeLunch是指在企业机器学习应用系统中,核心模型训练系统的设计和优化考虑。涂威威,第四范式先知平台核心机器学习框架GDBT的设计者,分享了其在大规模分布式机器学习系统架构、机器学习算法设计和应用等方面的经验。 **机器学习目标定义** 机器学习的经典定义是利用经验(数据)来改善系统性能。在应用过程中,首先要明确机器学习目标的定义,也就是用机器学习来做什么事情。以谷歌提升搜索广告业务收入为例,谷歌首先对提升收入的目标进行拆解,确定了机器学习的优化目标是广告点击率。 **机器学习系统设计** 在确定了机器学习具体的优化目标后,机器学习系统会循环执行四个系统:数据收集→数据预处理→模型训练→模型服务。在这四个系统中,与机器学习算法最相关的就是模型训练系统。 **计算框架设计** 在涂威威看来,计算框架设计上,没有普适的最好框架,只有最适合实际计算问题的框架。针对机器学习的兼顾开发效率和执行效率的大规模分布式并行计算框架是非常重要的。 **大规模分布式机器学习计算框架** 在工业应用中,有效数据、特征维度正在迅速攀升。在数据量方面,以往一个机器学习任务仅有几万个数据,如今一个业务的数据量已很容易达到千亿级别。在特征维度方面,传统的机器学习采用“抓大放小”的方式—只使用高频宏观特征,忽略包含大量信息的低频微观特征—进行训练,但随着算法、计算能力、数据收集能力的不断增强,更多的低频微观特征被加入到机器学习训练中,使模型的效果更加出色。 **机器学习技术发展** 机器学习技术也在工业应用中不断发展,最早期的机器学习工业应用只利用宏观特征、简单模型,到后来发展为两个不同的流派:以微软为代表的基于模型的机器学习和以谷歌为代表的基于数据的机器学习。 大规模机器学习系统中的NoFreeLunch是指企业机器学习应用系统中核心模型训练系统的设计和优化考虑,涵盖了机器学习目标定义、机器学习系统设计、计算框架设计、大规模分布式机器学习计算框架和机器学习技术发展等方面。