本文转载自公众号“读芯术”(ID:AI_Discovery)

人工智能(AI)和机器学习(ML)已然“渗透”到了各行各业,企业们期待通过机器学习基础架构平台,以推动人工智能在业务中的利用。

理解各种平台和产品算得上是一项挑战。机器学习基础架构空间拥挤、混乱又复杂。许多平台和工具涵盖了整个模型构建工作流程的多种功能。

为了理解其生态,我们可将机器学习工作流程大致分为三个阶段:数据准备,模型构建和生产。了解工作流各个阶段的目标和挑战有助于人们正确地选出最适合企业业务需求的机器学习基础架构平台。

机器学习基础架构平台图

机器学习工作流程的每个主要阶段都具有许多垂直功能。其中一些功能是较大的端到端平台的一部分内容,还有一些功能则是某些平台的主要关注点。

本文将带你走进机器学习的第二阶段——模型构建。

什么是模型构建?

模型构建的第一步从了解业务需求开始。模型需要处理哪些业务需求?

这一步骤在机器学习工作流程的计划和构想阶段展开。在此阶段,与软件开发生命周期类似,数据科学家收集需求,考虑可行性,并为数据准备、模型构建和生产制定计划。他们还使用数据来探索各种模型构建实验,这些实验是在计划阶段所考虑的。

机器学习基础架构平台图

特征探索和选择

数据科学家探索各种数据输入选项以选择特征,是该实验过程的一部分。特征选择是为机器学习模型查找特征输入的过程。

对于新模型,理解可用的数据输入、输入的重要性以及不同特征之间的关系可能是一个漫长的过程。在这里,可以对更易解释的模型、更短的训练时间、特征获取的成本以及过度拟合的减轻做出许多决策。找出正确且合适的特征是一个连续不断的迭代过程。

  • 在特征提取方面的机器学习基础架构公司有:Alteryx/ Feature实验室、Paxata(DataRobot)。

模型管理

数据科学家可以尝试多种建模方法。对于某些任务,一些类型的模型比其他模型更适用(例如,基于树的模型解释性更佳)。

作为构思阶段的一部分,该模型是监督、无监督、分类或回归等都是显而易见的。但建模方法、超参数以及特征的选择取决于实验。

一些自动机器学习(AutoML)平台会尝试附带各种参数的不同模型,这有助于建立基线方法。即使手动完成,探索各种选项也可以为模型构建者提供有关模型可解释性的见解。

实验跟踪

尽管各种类型的模型之间有许多优点和折衷点,但通常来说,此阶段涉及许多实验。许多平台可以跟踪这些实验、建模依赖和模型存储。这些功能可被大致归为模型管理。

一些平台主要关注实验跟踪。其他一些具有训练或服务组件的公司拥有模型管理组件,用于比较各种模型的性能,跟踪训练/测试数据集,调整和优化超参数,存储评估指标以及实现详细的沿袭和版本控制。

与用于软件的Github相似,这些模型管理平台应能实现版本控制、历史沿袭和可重复性。

各种模型管理平台之间的折衷在于集成成本。一些更轻量级的平台虽然仅提供实验跟踪,但可以轻松地与当前环境集成,并导入到数据科学notebook中。其他一些平台则需要进行更繁重的集成,并且需要模型构建者转移至其平台上,以便进行集中的模型管理。

在机器学习工作流程的这一阶段,数据科学家通常要花时间在notebook中建立、训练模型,将模型权重存储在模型库中,然后在验证集上评估模型结果。

这一阶段有许多平台提供训练所需的计算资源。根据团队存储模型对象的不同方式,模型还具备许多存储选项。

  • 机器学习基础架构AutoML:H20、SageMaker、DataRobot、Google Cloud ML、MicrosoftML
  • 模型管理方面的机器学习基础架构公司:Domino Data Labs、SageMaker
  • 超参数选项方面的机器学习基础架构公司:Sigopt、Weightsand Biases、SageMaker
  • 实验跟踪方面的机器学习基础架构公司:权重和偏差、Comet ML、MLFlow、Domino、Tensorboard

模型评估

一旦实验模型在具有选定特征的训练数据集上经过训练,就可以在测试集上进行评估了。

在这一阶段,数据科学家试图了解模型的性能以及需要改进的地方。一些更高级的机器学习团队拥有自动回测框架,可供其利用历史数据来评估模型性能。

每个实验都试图击败或超越基准模型的性能,并考虑如何对计算成本、可解释性和归纳能力做出权衡。在一些更规范的行业中,此评估过程还可以包括外部审核员执行的合规性和审核,以确保模型的可重复性、性能和需求。

  • 用于模型评估的机器学习基础工具/架构:Fiddler AI、Tensorboard、Stealth Startups
  • 用于试生产验证的机器学习基础架构:Fiddler AI、ArizeAI

管理以上所有任务的平台

许多以AutoML或模型构建为中心的公司只选定一个平台,用以处理一切事物。因此许多平台争相成为公司在数据准备、模型构建和生产中使用的唯一人工智能平台,这样的公司有DataRobot、H20、SageMaker等。

该集合分为低代码解决方案和以开发人员为中心的解决方案。Datarobot公司似乎专注于无代码/低代码选项,该选项允许商务智能(businessintelligence, BI)或财务(Finance)团队从事数据科学项目。

这与SageMaker和H20公司形成鲜明对比,它们似乎迎合了当今更为常见的数据科学组织——数据科学家或开发者第一团队。

这两种情况下的市场都很大,并且可以共存,但值得注意的是,并非所有的机器学习基础架构公司都向相同的人或团队出售产品。

近期,该领域中的许多新成员可以被视为机器学习基础架构食物链中特定部分的优秀解决方案。比较好的模拟将是软件工程领域,其软件解决方案GitHub、集成开发环境(IDE)以及生产监控并非都是相同的端到端系统。

它们是不同的软件,这一点并非空穴来风,它们提供了迥然不同的功能,并且具有明显的区别。

挑战

与软件开发并行不同的是,由于缺乏对模型所训练数据的版本控制,模型的可重复性通常被视为一个挑战。

在理解模型的性能方面存在许多挑战。如何比较实验并确定哪种模型版本是性能和折衷的优质平衡?稍差的模型是一种折衷方案,但它更易于解释。一些数据科学家使用内置的模型可解释性特征或使用SHAP/ LIME,来探索特征的重要性。

另一性能挑战是不知道实验阶段的模型性能如何转化到现实世界中。

通过确保训练数据集中的数据是模型在生产中可能看到的数据的代表性分布,以防止过度拟合训练数据集,可以很大程度地缓解这种情况。这是交叉验证和回测框架发挥作用之处。

接下来发生了什么?

对数据科学家来说,确定何时将模型投入生产的标准是很重要的。如果生产环境中已部署了预先存在的模型,则可能是新版本的性能更高的时候。无论如何,设置标准对于将实验转移至实际环境中至关重要。

一旦模型受过训练,模型图像/权重将存储在模型库中。这时,负责将模型部署到生产中的数据科学家或工程师通常可以获取模型并用于服务。

在一些平台上,该部署甚至可以更简单,并且可以使用外部服务能调用的RESTAPI来配置已部署的模型。

机器学习的中流砥柱:用于模型构建的基础架构工具有哪些?相关推荐

  1. 使用Nomad构建弹性基础架构: 容错和中断恢复

    这是Nomad构建弹性基础架构系列文章的第四篇也是最后一篇(第1部分,第2部分,第3部分).在本系列文章中,我们将探讨Nomad如何处理意外故障.停机和集群基础设施的常规维护,通常不需要操作员干预. ...

  2. 使用Nomad构建弹性基础架构: 作业生命周期

    这是Nomad构建弹性基础架构系列(第1部分,第2部分)中的第三部分.在本系列中,我们将探讨Nomad如何处理意外故障.停机和集群基础架构的日常维护,通常不需要操作员干预. 在本文中,我们将介绍Nom ...

  3. 使用Nomad构建弹性基础架构:计划和自我修复

    这是 使用Nomad构建弹性基础架构 系列文章的第二篇.在本系列中,我们将探讨Nomad如何处理意外故障.停机和集群基础设施的常规维护,通常不需要操作员干预. 在这篇文章中,我们将会看到Nomad客户 ...

  4. 使用Nomad构建弹性基础架构:重新启动任务

    Nomad是一个功能强大.灵活的调度器,适用于长期运行的服务和批处理任务.通过广泛的驱动程序,Nomad可以调度基于容器的工作负载.原始二进制文件.java应用程序等等.Nomad操作简单,易伸缩,与 ...

  5. 企业IT构建核心基础架构解决方案

    企业IT构建核心基础架构解决方案 提供了可用于在中型IT环境中规划,构建,部署和操作核心基础结构的指南.核心基础结构是IT基础结构的一部分,是实现直接满足公司商业要求的众多服务的前提条件. 企业IT构 ...

  6. 赋能制造业 思科助力“独角兽”企业构建信息化基础架构

    大家都知道,我国是制造大国,"Made in China"可以说是遍布全球随处可见.而近年来国家也在大力扶持制造业,诸如智能制造.中国制造2025等战略相继实施,且制造业业务也在不 ...

  7. 深入构建Kubernetes基础架构

    原文发表于kubernetes中文社区,为作者原创翻译 ,原文地址 更多kubernetes文章,请多关注kubernetes中文社区 目录 架构 入口点:DNS 内容分发网络(CDN) 负载均衡器 ...

  8. 机器学习:神经网络的模型构建

    什么是神经网络 神经网络是一种模拟人脑工作原理,从而实现类人工智能的机器学习技术,支持处理图像.文本.语音以及序列多种类型的数据,可以实现分类.回归和预测等. 简单的神经元:逻辑单元(Logistic ...

  9. 使用Docker Compose构建ZigBee基础架构

    For me, the first half of 2020 was a start for ZigBee and home automation basics. After the lockdown ...

最新文章

  1. XML简介及基本语法
  2. how to identify keywords for search on Google Scholar?
  3. java 大数据处理类 BigDecimal 解析
  4. 定义应用程序的基础--模式(Bridge-桥接,Factory-工厂)
  5. Linux下各种常见环境变量的配置
  6. Asp.NetWebForm的控件属性
  7. 大众考虑投资中国汽车零部件供应商 潜在目标包括国轩高科
  8. springboot监听器_Spring Boot中文参考指南(2.1.6)23.5、应用程序事件和监听器
  9. 【androidjniNDk】详细介绍每一步,让你轻松掌握android JNI NDk
  10. springboot异步任务
  11. 干货分享 | 工业信息数据库安全现状与技术分析
  12. python自回归模型_21向量自回归模型
  13. 奇*信往期秋招笔试知识点总结
  14. 巴菲特投资赚钱的赚钱宝典和赢家暗语
  15. Spring自定义消息转换器替换ResponseBody
  16. Android在recycleview中进行全选和取消全选
  17. 网络音乐是时候该聊聊“大数据”了
  18. 最常被遗忘的 Web 性能优化:浏览器缓存
  19. rpcx服务框架浅析3-服务发布流程
  20. 错误:App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insec

热门文章

  1. 机器学习 二分类分类阈值_分类指标和阈值介绍
  2. Oracle中,使 CREATE TABLE AS SELECT 支持ORDER BY
  3. android 弹出键盘 底部控件上移,如何设置底部控件view随着软键盘的弹出而上移...
  4. 《AI系统周刊》第5期:Cerebras发布可运行120万亿参数AI模型的CS-2芯片
  5. 智源出品 | 超大规模智能模型产业发展报告(附下载)
  6. 综述的综述!5 篇2020 年「图像分割算法」最佳综述论文详解
  7. 如果只推荐一本 Python 进阶的书,我要 Pick 它!
  8. 苹果出了新手机,我却盯上了他的手机壳
  9. 【连载】优秀程序员的 45 个习惯之习惯25
  10. 基于OpenPose的人体姿态检测两个群众