编者注:文中超链接如果不能访问可以点击“阅读原文”访问本文原页面;读者可以查看将于2019年9月23至26日在纽约举办的Strata数据大会上的议题——模型开发、管理和运维,来获得更多的信息。

我们过去几年的调查表明,很多不同行业的机构对机器学习(ML)越来越感兴趣。有几个因素促成人们在产品和服务中运用机器学习。首先,机器学习社区已经在企业感兴趣的许多领域实现了研究的突破,并且大部分研究都通过预发表和专业会议演示进行了公布。我们也开始看到研究人员共享出在流行的开源框架中编写的示例代码,有些甚至共享出了预先训练好的模型。企业和机构现在还可以从更多的应用案例从中吸取灵感。非常有可能在你感兴趣的行业或领域里,你可以找到许多有趣的机器学习的应用并借鉴参考。最后,建模工具正在被改进和优化,同时自动化工具已经可以让新用户去解决那些曾经是需要专家才能解决的问题。

随着机器学习进入落地阶段,人们很自然地希望改进那些面向企业运用机器学习的工具。在之前的博文中,我们概述了在企业和机构内运用机器学习所需的基础技术,并且一些早期迹象表明模型开发和模型管理的工具已经开始获得用户的青睐。

图1 主要面向模型开发、管理和运维的工具的集合。图片来源:Ben Lorica

模型开发

企业越来越认真地看待机器学习的一个明确迹象就是:专门为管理机器学习模型开发生命周期而设计的工具(例如MLflow和Comet.ml)越来越受欢迎。为什么传统的软件工具不胜任了?在之前的一篇博文中,我们注意到一些区分一个项目是否是机器学习项目的关键属性:

  • 不像传统的软件,其主要目的是满足功能需求。机器学习的目标是优化一个指标。

  • 质量不仅仅依赖于代码,还包括数据、调参、规律地升级和再训练。

  • 参与机器学习的人总是希望能对新的库、算法和数据源进行尝试。因此工具就需要能把这些新的组件引入生产系统中。

MLflow等工具被更多地采用表明,实际上对新工具的需求是非常强烈的。这些机器学习开发工具专门用于帮助开发人员、机器学习工程师和数据科学家等团队进行协作、管理和再现机器学习的实验。模型开发类别中的许多工具允许用户系统地进行建模实验(例如超参数调优和网络架构搜索),同时重点关注于管理、跟踪和再现这些实验的便利性上。

模型管理

我们也开始见到有的公司对模型管理工具和能力有需求。正如长期以来,企业已经将数据视为资产一样,随着机器学习对企业和机构的运营变得越来越重要,模型必将被视为重要的资产。更确切地说,需要管理和保护为专门的应用构建或调优的模型(实际上这意味着模型+数据):

  • 用于授权和安全的数据库:谁读/写了某个模型?

  • 一个目录或者数据库,用来记录模型信息,包括某个模型什么时候被测试、训练和部署的。

  • 一个验证数据集的目录,以及对存储的模型的准确度测量结果。

  • (模型、特征向量和数据的)版本控制,以及能够进行前推、回滚或者允许多版本的能力。

  • 用于全面审计追踪的元数据和工件。

  • 谁批准并把模型发布到生产环节,谁能够监控模型的表现并收到告警,以及谁对模型负责。

  • 对于所有的参与者(运维、机器学习工程师、数据科学家和业务方)提供的可以定制页面展示的管理仪表盘。

模型运维、测试和监控

随着机器学习在产品和服务中应用的激增,我们需要一系列的角色、最佳实践和工具来在实际生产环境中部署、管理、测试和监控机器学习模型。已经出现了一些针对模型运维和测试的工具,它们主要可被用于部署和监控机器学习的模型。但很明显,我们仍处于提供这些领域解决方案的早期阶段。

有三个常见问题会在模型发布到生产环境后降低机器学习的价值。第一个是概念漂移。由于现实世界的变化,生产环境中的模型的准确性会随着时间的推移而降低,这是由于训练模型的数据与需要预测的数据之间的差距变得越来越大。第二个问题是地域。当模型被部署到新的地理位置、新的用户群或商业客户时,之前训练的模型通常不会以预期的准确度工作。对每个客户、地理区域、人口统计群体进行在线准确性测量对于偏差监控和确保面对不断增长的客户群时的准确性非常重要。第三是数据质量。由于机器学习模型对输入数据的含义很敏感,传统数据质量工具经常忽略的数据分布变化会对模型的准确性造成严重影响。

除了需要监控当前部署的模型是否按预期运行之外,另一个挑战确保新的模型在生产环境中确实有更好的表现。一些新出现系统允许将“现有模型”与“挑战者模型”进行比较,包括让挑战者处于“暗启动”或“离线”模式(这意味着挑战者模型是对生产流量进行评估但尚未部署到生产环境中)。其他值得注意的项目包括:

  • 用于持续集成和持续测试模型的工具。模型返回有效值,并不意味着模型“正确”。它必须满足准确度的要求。在部署模型之前,需要有一种方法来针对给定的度量指标和验证集来测试这一点。

  • 在线测量每个模型的准确性(用户在“真实场景”中得到的准确度是多少?)。与此相关的是需要监控偏差、地区效应和相关风险。例如,指标得分需要根据人口统计数据(男性和女性是否获得类似的准确度?)或语言区域(德语和西班牙语用户是否获得类似的准确度?)进行细分。

  • 能够针对不同客户进行服务质量管理的能力,包括速率限制、请求大小限制、计量、机器人检测和IP地理围栏。

  • 有能力扩展(并且是自动扩展)、确保模型安全、监控模型和排除运行中模型的故障。扩展有两个维度:模型能服务的流量上限和需要的模型数量。

模型运维和测试仍然是一个新生的领域,相关的系统性的检查表才刚刚出现。来自谷歌2017年的一篇论文中的概述让我们可以判断模型运维和测试还需要多少工具。本文附带一份28项的检查表,详细说明了想拥有可靠的生产级机器学习系统需要考虑的事项:

  • 特征和数据:包括七点内容:检查隐私控制、特征验证、探索特征的必要性和特征的成本以及其他与数据相关的测试。

  • 模型的开发测试:七项健全性检查,包括:检查更简单的模型是否足够用、对于关键数据切片(例如,地区、年龄、新近度、频率等)的表现、模型老化的影响以及其他重要的因素。

  • 基础设施测试:七个考虑因素,包括:模型训练的可重复性、模型可以轻松回滚、端到端模型管道的集成测试、针对金丝雀过程的模型测试。

  • 监控:作者列出了确保模型按预期工作的七点内容,包括:对模型老化的测试,性能指标(训练、推断、吞吐量),验证训练和服务代码会生成类似的结果,以及其他基本项。

新角色

围绕机器学习的讨论往往涉及到数据科学家和模型构建专家的工作。随着许多公司开始进入机器学习的落地实施阶段,这种情况开始发生变化。机器学习工程师、数据工程师、开发人员和领域专家对机器学习项目的成功至关重要。目前,很少有(如果有的话)团队拥有如同Google 2017年的论文里所述检查表一样广泛内容的检查表。构建真实世界里的生产级机器学习模型的任务仍然需要把跨越许多功能领域的工具和团队拼凑在一起。然而,随着模型治理和模型运维和测试的工具开始变得精致并且变得更加广泛可用,专家(“MLops团队”)将会负责使用这些工具。自动化工具也将是一个重要组件,它们要能使企业和机构构建、管理和监控更多的机器学习模型。

图2 企业和机构对于管理机器学习的工具的需求。图片来源:Ben Lorica

我们开始看到出现了一些能让团队管理机器学习模型的开发生命周期的专用工具。像MLflow这样的工具可以被用来跟踪和管理机器学习实验(主要是离线阶段,并使用测试数据)。还有一些新工具则涵盖了模型管理、生产环境部署,模型服务和监控等方面,但目前他们倾向于只针对某个机器学习库(比如TFX)或建模工具(SAS模型管理器)。实际的情况是,企业需要对于语言库、建模工具和使用的环境更灵活的应用能力。幸运的是,初创公司和大企业已经开始构建用于在企业中实现机器学习的综合工具。

相关内容:

  • “现代深度学习:工具和技术”:人工智能圣何塞大会上的一个教学课程。

  • 《成为一个机器学习企业意味着对基础技术的投资》

  • 《用于机器学习开发和模型管理的特殊工具正变得非常重要》

  • 《在调优机器学习模型成为真正的产品和服务过程中学到的经验教训》

  • Harish Doddi的《简化机器学习生命周期管理》

  • Ira Cohen的《应用机器学习来获取关于机器学习算法的洞察》

  • Ameet Talwalkar的《对于神经网络架构搜索的随机搜索和可再现》

  • 《机器学习的深度自动化》

  • 《我们需要构建机器学习工具来增强机器学习工程师》

  • 《管理机器学习的风险》

Ben Lorica是O’Reilly Media公司的首席数据科学家,同时也是O’Reilly Strata数据会议和人工智能会议的内容日程主管。他曾在多种场景下应用商业智能、数据挖掘、机器学习和统计分析技术,这些场景包括直销、消费者与市场研究、定向广告、文本挖掘和金融工程。他的背景包括在投资管理公司、互联网初创企业和金融服务公司就职。

Harish Doddi是Datatron Technologies的联合创始人兼首席执行官。在此之前,他先在Oracle任职。后来在推特从事开源技术方面的工作,包括Apache Cassandra和Apache Hadoop,并建立了推特的照片存储平台Blobstore。在Snapchat,他关注于Snapchat的后端。他还在Lyft研究了激增定价模型。Harish拥有斯坦福大学的计算机科学硕士学位,专业方向是系统和数据库,他还拥有海德拉巴得国际信息技术学院的计算机科学学士学位。

David Talby是Pacific AI的首席技术官。他正在帮助各类快速发展的公司应用大数据和数据科学技术来解决医疗保健、生命科学和相关领域的实际问题。David在构建和运营互联网规模的数据科学和业务平台以及构建世界一流的敏捷分布的团队方面拥有丰富的经验。在加入Pacific AI前,他曾在微软的Bing Group工作,负责Bing Shopping在美国和欧洲的业务运营。他还在在西雅图和英国为亚马逊工作。在那里他建立并管理分布的团队,帮助扩展亚马逊财务系统。David拥有计算机科学博士学位和计算机科学与工商管理硕士学位。

This article originally appeared in English: "What are model governance and model operations?".

什么是模型管理和模型运维?相关推荐

  1. 运维组如何管理服务器资源,运维服务管理体系方案全套.doc

    项目概况 项目背景 近年来为适应业务发展的需求,XX企业进行了大规模的电子商务建设,包括采购桌面PC约300台,打印机约100台,这些应用系统及硬件设备的投入使用极大的推动了XX企业信息化建设的进程. ...

  2. FTP服务器管理【Linux运维之道之脚本案例】

    今天看到51CTO正在搞Linux Shell 脚本大赛,特地将自己的处女作发出来,希望能够得到分享. 这里说一下这个脚本的功能,这个脚本主要用来实现VSFTPD服务器的基础管理,主要用于方便运维管理 ...

  3. 智慧楼宇管理后台、运维配置、设备台账、设备管理、维保统计、巡检统计、维修工单、报修统计、电子巡更、智能楼宇运营、运营后台、智慧社区、楼宇设备监控管理端、智能社区管理系统、楼宇运维管理系统

    Axure智慧楼宇管理运营端.工单管理/报修管理/维保管理/楼宇运维管理系统/巡检管理/能源管理/智慧社区运营端/智能楼宇设备监控管理端/智能社区管理系统运营 Axure智慧楼宇管理运营端演示及下载地 ...

  4. 管理服务器维护外包,运维外包管理

    运维外包管理 内容精选 换一换 随着云计算和虚拟化技术的发展,IT基础架构的管理向自服务管理.IT服务自动化.横向扩展的服务器.存储及网络架构管理.以及对不同技术领域的统一管理的方向转变.新一代的数据 ...

  5. 【能效管理】变电所运维云平台在上海某医院的设计分析

    摘要:本文概述了变电所电力运维技术,分析了医院变电所中存在的技术设备老化和技术荷载不足的技术性问题,并从主变低压进出线路监测故障.环境监测故障.设备档案记录.运维排班记录.分析报告五个方面探讨了变电所 ...

  6. 智慧楼宇管理后台、运维配置、设备台账、设备管理、维保统计、巡检统计、维修工单、报修统计、电子巡更、智能楼宇运营、运营后台、智慧社区、楼宇设备监控管理端、智能社区管理系统、楼宇运维管理系统、rp原型

    Axure智慧楼宇管理运营端.工单管理/报修管理/维保管理/楼宇运维管理系统/巡检管理/能源管理/智慧社区运营端/智能楼宇设备监控管理端/智能社区管理系统运营 Axure智慧楼宇管理运营端演示及下载地 ...

  7. 如何实现机房集中监控管理,提高运维效率?

    目前企业的管理水平的不断提高,各企业都建立的大大小小的数据机房,小到20平,大到几百平米的不等.由于机房的大小不同.监测内容不同,费用也不尽相同,而数据机房存储着大量的珍贵数据,一旦丢失损毁会给企业造 ...

  8. 浪潮服务器修改ipmi账号密码,浪潮IPMI管理软件 实现运维精控化

    [IT168 专稿]8月27日,浪潮出击互联网存储服务器市场,在北京推出了两款基于英特尔至强5500处理器的双路机架式存储服务器--SA5212L和SA5212S,可在2U机架空间里配置12块硬盘.相 ...

  9. python开发k8s管理平台_运维开发和k8s运维如何选择,请各位大神指导一下?

    Python 可以称为大数据全栈式开发语言.因为 Python 在云基础设施,DevOps,大数据处理等领域都是炙手可热的语言.只要会 Python,就可以实现一个完整的大数据处理平台.从最底层数据采 ...

  10. 模型剖析 | 如何解决业务运维的四大难题?

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由织云平台团队 发表于云+社区专栏 前言 作为业务运维,你是否经常会碰到这样的问题: 新业务上线,开发同学会对服务做性能测试,但是换一种 ...

最新文章

  1. Lintcode 408 解题思路及c++代码
  2. smartforms不输出0
  3. yum 安装mariadb
  4. LeetCode 541. Reverse String II
  5. c语言添加收支情况,C语言编写一个计算个人所得税的程序,要求输入收入金额,能够输...
  6. php输出文件,数组
  7. typora绑定github博客_零基础搭建个人博客
  8. 【Java】Int类型逻辑运算符的详细描述---含代码
  9. 从直播CDN的原理说起,谈如何解决延时和连麦的老难题?
  10. 何川L3管理课_模块1_定目标
  11. C#实现Omron欧姆龙PLC的Fins Tcp协议
  12. 蓝牙室内定位技术,蓝牙定位信标应用场景及分析
  13. 如何在win10下安装IMSL6.0
  14. vue使用axios配置多域名
  15. PIO操作与DMA操作
  16. 中国篆刻艺术孙溟㠭作品《无有中无尽藏》
  17. CentOS系统下部署Hadoop2.0单机模式
  18. 学会做笔记-子弹笔记学习概要三
  19. 无法kill掉的僵尸进程
  20. Error in DESeqDataSet(se, design = design, ignoreRank) : some values in assay are negative

热门文章

  1. 水木周平戏说中国网络黑幽默!
  2. 网络API接口的使用
  3. 特殊句型之反义疑问句
  4. 小程序上传身份证正反照,竖排照片横向展示
  5. 说程序员吃青春饭的两种人:一种是外行,一种是这2样东西没学好
  6. 504PHP,php504错误怎么解决_后端开发
  7. 向日葵 远程开机 linux,教你使用向日葵开机棒轻松实现远程开机
  8. Java Foreach拉姆达表达式
  9. 人工智能在计算机领域的应用论文,人工智能应用领域论文 关于人工智能领域的大学论文...
  10. 个人博客的Travis持续集成之路