机器学习模型部署都有哪些坑?剑桥研究者梳理了99篇相关研究

机器学习1年前 (2023)发布 aixure
69 0 0
导读:机器之心报道 参与:小舟 在生产环境中部署机器学习模型是一个复杂的过程,需要考虑诸多因素,也存在很多挑战。近日,来自剑桥的研究者梳理了该流程常见的问题。 近年来,机器学习在学术研究领域和实际应用领域得到越来越多的关注。但是,在生产系统中部署机…

机器之心报道

参与:小舟

在生产环境中部署机器学习模型是一个复杂的过程,需要考虑诸多因素,也存在很多挑战。近日,来自剑桥的研究者梳理了该流程常见的问题。

近年来,机器学习在学术研究领域和实际应用领域得到越来越多的关注。但是,在生产系统中部署机器学习模型存在许多问题和担忧。近日,来自剑桥的研究者做了一项调查,综述了在各个用例、行业和应用中部署机器学习解决方案的报告,并提取了机器学习部署工作流程各阶段需要实际考量的因素。

论文地址:https://arxiv.org/pdf/2011.09926.pdf

该调查表明,机器学习从业者在部署模型的每一个阶段都面临挑战。该论文的意义是制定研究议程,以探索解决这些挑战的方法。

该调查主要考虑了三种类型的论文:

用例研究型论文:这类论文提供单个机器学习部署项目的经过,通常会深入讨论作者面临的每个挑战以及克服方式。

综述文章:这类文章描述了机器学习在特定领域或行业中的应用,通常总结了在所涉及领域中部署机器学习解决方案最常遇到的挑战。

经验总结型论文:作者通常会回顾他们在生产中部署机器学习模型的经验。

为确保本次调查聚焦当前挑战,剑桥大学研究人员仅考虑近 5 年发表的论文,只有少数例外。此外,他们还引用了其他类型的论文,例如实践指导报告、访谈研究、规则制度。需要注意的是,该论文没有进行新的访谈。

机器学习部署流程

该论文使用 Ashmore 等人 [14] 提出的机器学习部署工作流程定义。根据该定义,在工业环境中开发 ML 解决方案的过程包含 4 个阶段:

数据管理:重点是准备构建机器学习模型所需的数据。

模型学习:模型选择和训练。

模型验证:确保模型符合特定功能和性能要求。

模型部署:将训练好的模型集成到运行模型所需的软件基础架构中。此阶段还涵盖模型维护和更新的问题。

以上每个阶段还可以进一步细分。但需要注意的是其顺序与现实场景未必完全相符,这些阶段并行执行或存在反馈循环是很正常的。

本文探讨了每个阶段会出现的常见问题,以及会对各阶段带来影响的跨领域问题,参见下表:

数据处理

数据是任何机器学习解决方案中不可或缺的部分,训练和测试数据对解决方案整体效果的影响不比算法少。创建高质量数据集通常是生产级机器学习流程的第一步。该论文介绍了数据管理的四个步骤:数据收集、数据预处理、数据增强和数据分析。

数据收集

数据收集旨在发现和了解可用数据,以及组织数据的存储结构。发现和寻找数据本身就是一项挑战,特别是在大型生产环境中。查找数据源并了解其结构是主要任务,对于后续数据科学家开展实际应用开发具有重要作用。

数据预处理

预处理步骤通常涉及一系列数据清洗步骤:插补缺失值、将数据缩减为有序且简化的形式、从原始格式映射为更便于处理的格式。

数据增强

数据增强的原因有多种,其中最重要的原因之一是数据缺少标签。现实世界中的数据通常没有标签,缺少标注数据的可能因素有三个:专家访问受限、缺乏高方差(high-variance)数据、数据量过大。

数据分析

数据分析旨在发现数据中的潜在偏差或意外分布。高质量工具对于任何类型的数据分析都至关重要,其中数据剖析(data profiling)的可视化是极具挑战性的。

模型学习

近年来,机器学习方法的研究倾向于在模型学习阶段更好地选择和使用各种模型和方法。六年来,机器学习顶会 NeurIPS 的论文提交量翻了两番,从 2014 年的 1678 篇到 2019 年的 6743 篇。尽管如此,模型学习阶段仍然受到许多实际因素的影响。本文主要阐明了与模型选择、训练和超参数选择 3 个步骤有关的问题。

模型选择

在许多实际例子中,模型选择通常取决于模型的一个关键特性:复杂度。尽管深度学习和强化学习在研究界越来越受欢迎,但实际情况中往往会选择比较简单的模型。常用的模型包括:浅层网络架构,基于 PCA 的简单方法、决策树、随机森林。

ѵ

© 版权声明

相关文章

暂无评论

暂无评论...