Press "Enter" to skip to content

Tag: MLOps

MLOps覆盖整个机器学习生命周期:论文摘要

这篇AI论文对MLOps领域进行了广泛的研究。 MLOps是一门新兴的学科,专注于自动化整个机器学习生命周期。调查涵盖了广泛的主题,包括MLOps流水线、挑战和最佳实践。它深入探讨了机器学习过程的各个阶段,从模型需求分析、数据收集、数据准备、特征工程、模型训练、评估、系统部署和模型监控等开始。此外,它还讨论了整个生命周期中的业务价值、质量、人类价值和伦理等重要考虑因素。 该论文旨在全面调查MLOps,并强调其在自动化机器学习生命周期中的重要性。调查涵盖了多个主题,包括MLOps流水线、挑战、最佳实践以及机器学习过程的各个阶段。 本文在下图中提供了一个概览: https://arxiv.org/abs/2304.07296:机器学习流程 模型需求分析 为了启动一个机器学习项目,利益相关者必须分析和确定模型需求。本节概述了四个考虑因素:业务价值、模型质量、人类价值(隐私、公平性、安全性和问责制)以及伦理。鼓励利益相关者定义目标,评估用于识别价值和问题的工具,优先考虑需求,涉及相关利益相关者,并确定必要的功能。 数据收集和准备 数据准备阶段在确保机器学习任务的高质量数据方面起着至关重要的作用。本节介绍了数据收集、数据发现、数据增强、数据生成和ETL(提取、转换、加载)过程。强调了数据质量检查、数据清洗、数据合并、数据匹配以及进行探索性数据分析(EDA)以获得数据集洞察的重要性。 特征工程 特征工程对于提高预测建模性能至关重要。本节重点介绍了特征选择和提取、特征构建、特征缩放、数据标记和特征填充等技术。提到了与每种技术相关的具体算法和方法,包括主成分分析(PCA)、独立成分分析(ICA)以及标准化和归一化。 模型训练 模型训练阶段涵盖了不同类型的机器学习模型,包括有监督学习、无监督学习、半监督学习和强化学习。本节讨论了模型选择,包括为特定问题选择适当模型的过程。还探讨了模型选择的方法,如交叉验证、自助法和随机拆分。还讨论了超参数调优,即优化模型参数的过程。 模型评估 模型评估侧重于使用各种指标评估模型的性能。本节介绍了常见的评估指标,如准确率、精确率、召回率、F值和ROC曲线下的面积(AUC)。强调同时考虑模型性能和业务价值的重要性。 系统部署 系统部署涉及选择适当的ML模型操作平台,集成系统,进行系统集成测试,并将系统发布给最终用户。解释了部署策略,包括金丝雀部署和蓝绿部署。还讨论了部署ML系统所面临的挑战,以及实现顺畅部署过程的提示。 模型监控 本文强调在ML系统中进行模型监控的重要性。强调开发人员在ML模型监控和维护方面缺乏知识和经验。本节探讨了模型监控的各个方面,包括漂移检测、模型监控质量、合规性、系统日志记录和模型解释(XAI)。提供了监控数据分布变化、确保模型性能、符合行业特定标准和法规、用于ML流水线的系统日志记录以及实现模型透明度的洞察。 结论 本文通过讨论MLOps的未来以及需要解决的可扩展性和可靠性挑战来总结。它强调了对机器学习模型进行持续监控和维护的重要性,以实现长期成功。 总之,这份综合调研涵盖了MLOps领域内整个机器学习生命周期。它为MLOps管道、挑战、最佳实践、模型需求分析、数据准备、特征工程、模型训练、评估、系统部署和模型监控提供了宝贵的见解。通过详细研究这些主题,本调研旨在帮助研究人员和从业者全面了解MLOps及其实际意义。

Leave a Comment

机器学习简化和标准化的顶级工具

人工智能和机器学习作为世界从技术中受益的领域的创新领导者。选择使用哪种工具可能会很困难,因为市场上有很多流行的工具来保持竞争力。 选择机器学习工具就是选择未来。由于人工智能领域的一切都发展得如此迅速,保持“老狗,老把戏”和“刚做出来昨天”的平衡非常重要。 机器学习工具的数量正在扩大;随之而来的要求是评估它们并理解如何选择最好的工具。 在本文中,我们将介绍一些知名的机器学习工具。此评测将涵盖机器学习库、框架和平台。 Hermione 最新的开源库Hermione将使数据科学家更容易、更快地设置更有序的脚本。此外,Hermione还提供了数据视图、文本向量化、列归一化和反归一化等主题的课程,这些课程有助于日常工作。有了Hermione,您只需遵循一套程序,剩下的事情都会由她来处理,就像魔术一样。 Hydra 名为Hydra的开源Python框架使创建复杂的研究应用程序变得更加容易。Hydra的命名来源于其管理许多相关任务的能力,就像一个有着许多头的九头蛇一样。其主要功能是能够动态地组合层次结构配置,并通过配置文件和命令行进行覆盖。 另一个特性是动态命令行选项补全。它可以从各种来源进行层次化配置,并且配置可以从命令行提供或更改。此外,它可以启动程序以在远程或本地运行,并使用一个命令执行多个任务,并带有不同的参数。 Koalas Koalas项目将pandas DataFrame API集成到Apache Spark之上,以提高数据科学家在处理大量数据时的生产力。 Pandas是事实上的(单节点)Python DataFrame实现,而Spark是大规模数据处理的事实上的标准。如果您已经熟悉pandas,您可以使用此软件包立即开始使用Spark,并避免任何学习曲线。一个代码库同时兼容Spark和Pandas(测试、较小的数据集)(分布式数据集)。 Ludwig Ludwig是一个声明式机器学习框架,为定义机器学习流程提供了一种简单灵活的数据驱动配置方法。Linux基金会AI&Data托管Ludwig,可用于各种人工智能活动。 在配置中声明输入和输出特征以及适当的数据类型。用户可以指定其他参数来预处理、编码和解码特征,从预训练模型中加载数据,构建内部模型架构,调整训练参数或进行超参数优化。 Ludwig将根据配置的显式参数自动创建端到端的机器学习流程,对于那些没有指定设置的情况,会回退到智能默认值。 MLNotify 使用开源程序MLNotify,只需一行导入语句,即可在模型训练结束时向您发送在线、手机和电子邮件通知。MLNotify是一个附加到知名机器学习库的fit()函数的Python库,在过程完成后通知用户。 每个数据科学家都知道,在训练了数百个模型后,等待训练结束是很乏味的。因为训练需要一些时间,您需要来回切换以偶尔检查它。一旦训练开始,MLNotify将为您打印出特定的跟踪URL。您有三种输入代码的选项:扫描QR码、复制URL或浏览https://mlnotify.aporia.com。然后,您可以看到训练的进展。训练结束后,您将立即收到通知。您可以启用在线、手机或电子邮件通知,以在训练结束后立即收到提醒。 PyCaret 通过开源的基于Python的PyCaret模块,可以自动化机器学习的工作流程。PyCaret是一个简短、简单易懂的Python低代码机器学习库,可以让您花更多时间进行分析,而不是开发。有许多数据准备选项可用。从特征工程到缩放。PyCaret的设计是模块化的,每个模块都有特定的机器学习操作。…

Leave a Comment

2023年超参数优化的顶级工具/平台

超参数是用于调节算法在创建模型时的行为的参数。这些因素无法通过常规训练来发现。在训练模型之前,必须对其进行分配。 选择产生最佳性能的超参数组合的过程被称为机器学习中的超参数优化或调整。 根据任务的不同,有几种自动优化方法,每种方法都有其优点和缺点。 随着深度学习模型的复杂性增加,用于优化超参数的工具数量也在增加。对于超参数优化(HPO),通常有两种类别的工具包:依赖云计算资源的开源工具和服务。 下面展示了用于ML模型的顶级超参数优化库和工具。 贝叶斯优化 基于贝叶斯推断和高斯过程,一种名为BayesianOptimisation的Python程序使用贝叶斯全局优化来找到未知函数的最大值,迭代次数最少。这种方法最适用于高成本函数优化,其中在探索和开发之间取得正确平衡至关重要。 GPyOpt GPyOpt是一个基于贝叶斯优化的Python开源包。它使用GPy构建,GPy是一个用于建模高斯过程的Python框架。该库可以创建湿实验、自动设置模型和机器学习方法等。 Hyperopt Hyperopt是一个用于串行和并行优化的Python模块,可以包含条件、离散和实值维度的搜索空间。对于希望进行超参数优化(模型选择)的Python用户,它提供了并行化的技术和基础设施。该库支持的贝叶斯优化技术基于回归树和高斯过程。 Keras Tuner 使用Keras Tuner模块,我们可以找到机器学习模型的理想超参数。该库包含了HyperResNet和HyperXception两个预构建的可自定义的计算机视觉程序。 度量优化引擎(MOE) 度量优化引擎(MOE)是一个用于最佳实验设计的开源黑盒贝叶斯全局优化引擎。当评估参数需要时间或金钱时,MOE是一种有用的系统参数优化方法。它可以帮助解决各种问题,例如通过A/B测试最大化系统的点击率或转化率,调整昂贵批处理作业或机器学习预测方法的参数,设计工程系统或确定实验的理想参数。 Optuna Optuna是一个用于自动超参数优化的软件框架,非常适用于机器学习。它提供了一个用户API,具有命令式、按运行定义搜索空间的设计,可以动态构建超参数的搜索空间。该框架提供了许多库,用于平台无关的架构、简单的并行化和Pythonic的搜索空间。 Ray Tune Ray Tune是一个用于耗时任务(如深度学习和强化学习)的超参数优化框架。该框架具有多种用户友好的功能,包括可配置的试验变体创建、网格搜索、随机搜索和条件参数分布,以及可扩展的搜索算法实现,包括Population Based Training(PBT)、Median…

Leave a Comment

机器学习(ML)实验追踪和管理的顶级工具(2023)

在机器学习项目中,获得单个模型训练运行的良好结果是一回事,但保持机器学习试验的良好组织并从中得出可靠结论是另一回事。 实验跟踪为这些问题提供了解决方案。机器学习中的实验跟踪是保留每个实验的所有相关数据的实践。 实验跟踪由机器学习团队以多种方式实施,包括使用电子表格、GitHub或内部平台。然而,使用专门用于管理和跟踪机器学习实验的工具是最高效的选择。 以下是机器学习实验跟踪和管理的顶级工具 Weight & Biases Weight & Biases是一个用于模型管理、数据集版本控制和实验监控的机器学习框架。实验跟踪组件的主要目标是帮助数据科学家记录模型训练过程的每个步骤,可视化模型并比较试验。 Weight & Biases可以在本地和云端使用。Weights & Biases在集成方面支持多种不同的框架和库,包括Keras、PyTorch环境、TensorFlow、Fastai、Scikit-learn等。 Comet 数据科学家可以使用Comet ML平台跟踪、比较、解释和优化实验和模型,从训练到生产的整个模型生命周期。对于实验跟踪,数据科学家可以记录数据集、代码更改、实验历史和模型。 Comet提供给团队、个人、学术机构和企业使用,适用于希望进行实验、促进工作并快速可视化结果的所有人。它可以在本地安装或用作托管平台。 Sacred + Omniboard 机器学习研究人员可以使用开源程序Sacred配置、安排、记录和复制实验。尽管Sacred缺乏出色的用户界面,但您可以将其与一些仪表盘工具(如Omniboard,还可以使用其他集成,如Sacredboard或Neptune)进行链接。 尽管Sacred缺乏其他工具的可扩展性,并且没有为团队协作而设计(除非与其他工具结合使用),但它对于独立研究有很多可能性。 MLflow…

Leave a Comment

生成式人工智能和MLOps:高效和有效的人工智能开发的强大组合

人工智能在几乎所有可能的领域都取得了显著的进展。它给创造力提供了翅膀,提升了分析和决策能力。在过去几个月中,生成式人工智能变得越来越受欢迎。从组织到人工智能研究人员,每个人都在探索生成式人工智能在产生独特和原创内容方面的巨大潜力,而且还可以在各个领域产生这些内容。 什么是生成式人工智能? 生成式人工智能是指使用算法来生成、操纵和合成数据的任何类型的过程。它可以解释为人工智能的一个子集,通过从现有数据中学习来生成新数据。新内容具有一定的创造力和独特特征,可以是图像或可读文本形式的数据,并生成之前不存在的内容。 生成式人工智能如何被使用? 生成式人工智能自引入以来一直在快速发展。大型语言模型(LLMs)的发展可以说是生成式人工智能突然增长的主要原因之一。LLMs是设计用于处理自然语言和生成类似人类回应的人工智能模型。OpenAI的GPT-4和Google的BERT是近年来取得重大进展的杰出示范,从聊天机器人和虚拟助手的开发到内容创作。生成式人工智能被应用于内容创作、虚拟助手的开发、人类模仿聊天机器人、游戏等领域。生成式人工智能也被应用于医疗保健行业,为患者生成个性化的治疗计划,提高医疗诊断的准确性等。 什么是MLOps? 随着每个公司都试图将AI ML的潜力融入其服务和产品中,MLOps变得越来越受欢迎。MLOps(机器学习运营)是机器学习工程的一个重要功能,主要关注将ML模型投入生产,并进行后续维护和监控的流程优化。它结合了DevOps和ML的特点,帮助组织以最少的资源和最高的效率设计稳健的ML流水线。 MLOps在提升生成式人工智能能力方面的优势 生成式人工智能的训练和部署模型的复杂性需要大量的计算资源和专用基础设施。与生成式人工智能结合使用时,MLOps可以通过提供一个管理生成式人工智能模型的开发和部署的优秀框架,以及自动化所涉及的流程来解决这些挑战。对于组织来改善基础设施,整合MLOps可以帮助它们在生成式人工智能应用中包括参数优化、自动化部署和扩展等功能而无需额外的人工成本。 MLOps为生成式人工智能提供的主要优势是效率、可扩展性和风险降低。除此之外,MLOps还可以在以下方面做出贡献: 数据管理:MLOps可以帮助管理用于训练生成式人工智能模型的大量数据,确保数据质量高、多样性,并符合所需领域的要求。 模型开发:MLOps可以在整个模型开发过程中提供帮助,包括训练、测试和验证,并提供版本控制、代码审核等工具。 部署:MLOps可以帮助自动化部署生成式人工智能模型,简化生产过程。 扩展:MLOps可以帮助处理不断增长的流量。包括提供管理基础设施和数据量的工具。 监控和维护:MLOps可以通过检测问题、检查性能异常等方式监控工作中的生成式人工智能模型的性能。 结论 由于更多数据的可用性、计算技术的进步以及生成独特和创新内容的能力,生成式人工智能正变得越来越受欢迎。通过引入MLOps,它可以在管理生成式人工智能模型的生命周期中发挥关键作用,从而充分发挥产品和应用的潜力。

Leave a Comment

实际应用的MLOps示例:Brainly视觉搜索的端到端MLOps管道

在系列文章“真实世界的MLOps示例”的第二篇中,Brainly的机器学习工程师Paweł Pęczek将为您介绍Brainly视觉搜索团队中的端到端机器学习运营(MLOps)过程由于要在MLOps方面取得成功需要更多的技术和流程,他还将分享以下细节:…(继续)

Leave a Comment