学术工业界大佬联合打造:ML产品落地流程指南

文 | 白鹡鸰给小铁比了个心
编 | 小轶给白鸟鸟比了个赞

卖萌屋原创出品,本文禁止转载

前言

现在已经有了许多现成的ML开发部署工具,所以想要完成一个ML产品并不困难。但在实际开发过程中,人多手杂,免不了一顿兵荒马乱。相比之下,机械工业产品的开发,已经形成了一套完整的调研、开发、测试、复核流程。这种规范化的好处就是可以把各种风险降到最低。作为项目动辄上亿,时常涉及人命的NASA,为了保证开发过程万无一失,早于上世纪九十年代就提出了技术成熟度(Technology Readiness Level, TRL) 的概念,用于描述项目开发进度。如今,为了能够规范化ML产品开发部署,由Latent Science牵头,MIT, NASA, Oxford, Microsoft Research, Nvidia, Unity AI等12家工业&学术界巨头强强联手,推出了机器学习技术成熟度 (Machine Learning Technology Readiness Levels, MLTRL) 量表,用于说明他们眼中一个合格的ML产品要经过哪些考验才能上线。

这个指标既可以作为独立开发者们对自己工作进度的评估参照物,还可能成为未来各大公司内部报告和相互合作时的沟通标准。目前MLTRL还处于Arxiv预印状态,先一起看看吧~

论文题目
Technology Readiness Levels for Machine Learning Systems

论文链接 :
https://arxiv.org/abs/2101.03989

Arxiv访问慢的小伙伴也可以在 【夕小瑶的卖萌屋】 订阅号后台回复关键词 【0209】 下载论文PDF~

机器学习技术成熟度

由于MLTRL的理念来源于TRL,制定成员也包括TRL的创始者NASA,从图1可以看出,这两个指标的相似度很高。

▲通用的技术成熟度量表与机器学习领域技术成熟度量表对比

接下来是对各个等级较为详细的说明:

TRL 0:一个大胆的想法

重点:算法,数据
算法进度:★★★☆☆
代码进度:☆☆☆☆☆
测试进度:☆☆☆☆☆
团队沟通:★☆☆☆☆

所有的研究都源于一个大胆的想法,一个另辟蹊径的视角。这一阶段的主要工作是文献阅读,并且从数学方面验证想法的合理性,尤其需要注意你的研究基于了什么样的假设 。你应该拟定好接下来的研究计划,记得找几个更为丰富的研究者一起检查一遍,他们对可行性的判断可能会更准确,而且可以协助你找到想法中存在的漏洞。此外,还应该确认清楚是否有足够的数据支持接下来的研究。

TRL 1:目标导向型研究

重点:算法,实验级 (research-caliber)代码
算法进度:★★★★☆
代码进度:★★☆☆☆
测试进度:★☆☆☆☆
团队沟通:★★☆☆☆

大致敲定想法和研究计划之后,就应该开始粗略地跑点代码了。为了最高效率地验证算法的可行性,参考一下同行的代码暂时不会有问题,计算的复杂度、效率不应当占据太多的注意力 。这一阶段的模型测试还不必面面俱到,而是可以专注于预期中算法能够优化的那一部分数据。如果是项目开发,这时候要开始注意版本控制(包括代码、模型和数据集)了,否则后期万一出现问题,可能会付出惨痛的代价

TRL 2:验证原理

重点:算法,测试
算法进度:★★★★☆
代码进度:★★☆☆☆
测试进度:★★☆☆☆
团队沟通:★★☆☆☆

在类似于真实场景的环境中仿真/用类似真实分布的数据集测试过模型后,对模型的有效性证明就基本完成了。这里通常到了模型开发第一个分歧点:作为独立的功能继续开发;或者是并入一个长期的研究/开发项目。

有效性证明(Verification and Validation, V & V):

  1. 模型建对了吗?

  2. 模型有价值吗?

TRL 3:系统开发

重点:雏形级 (prototype-caliber)代码,团队
算法进度:★★★★☆
代码进度:★★★☆☆
测试进度:★★☆☆☆
团队沟通:★★★☆☆

在完成上一阶段对模型的测试后,是时候整理一下代码了:

  • 首先要保证代码的整洁和鲁棒性;

  • 是否已经可以面对各种出乎意料的输入或者运行结果;

  • 对数据的接口、程序的交互性、是否符合团队内的代码规范;

  • 算法的效率和可靠性也必须考虑到

此时你的队友中应该既有写AI的,又有工程师了,因为你们需要开始定义最终产品的服务级别协议和服务级别目标(Service-level agreements and objects, SLAs and SLOs)。

TRL 4:验证概念(与实用性)

重点:测试,沟通
算法进度:★★★★★
代码进度:★★★☆☆
测试进度:★★★☆☆
团队沟通:★★★★☆

来了来了,手忙脚乱的与真实场景初接触!此时你手里应当已经有着厚厚一沓关于模型表现、模型成本以及其他用户关心指标的报表。然而,遇到的挑战会更为复杂多样。之前测试效果再好,放到真实场景里跑一跑,意料外的报错层出不穷。本以为可以轻易从用户那里获得的数据,结果空白、缺失占了绝大多数。决定开发能否进入下一个阶段的评估者们磨刀霍霍,很可能发出“搁置”、“中止”这样可怕的声音——在TRL 4阶段项目夭折是很常见的。

TRL 5:模型能力评估

重点:测试,沟通
算法进度:★★★★★
代码进度:★★★☆☆
测试进度:★★★★☆
团队沟通:★★★★☆

是时候对“模型到底能做什么”盖棺定论了:功能是什么,优化体现在哪些方面,V & V的确切结论,都必须在这个阶段给出来。然后开始草拟产品导向的需求 (product-driven requirement)。其实这个步骤和TRL 4之间没有明显的分界线,或者说TRL 4侧重于在测试和沟通,TRL 5则强调必须下结论。进行评价的目的是为了将有限的开发资源集中到最值得的项目上。因此,想从TRL 5顺利毕业绝对不容易。

TRL 6:应用级的开发

重点:产品级 (product-caliber)代码
算法进度:★★★★★
代码进度:★★★★☆
测试进度:★★★★☆
团队沟通:★★★★☆

经历完第一轮真实场景的摩擦,从考核中幸存下来之后就应该开始进一步狂敲代码了。还记得之前的哪些山盟海誓吗?SLAs, SLOs, 产品需求,前面吹的“水”都是现在实装流下的泪。总之,码就是了!

TRL 7:集成

重点:代码,测试,团队
算法进度:★★★★★
代码进度:★★★★★
测试进度:★★★★★
团队沟通:★★★★★

既然功能已经实现得差不多了,接下去就是如何包装的问题了,所以这一阶段需要各个环节上的人员多沟通合作。专注于算法的AI工程师要继续测试模型在极端情况下的鲁棒性,而软件工程师必然要开始前端、后端、接口以及等等细节的处理。尤其需要注意两点:

  • 对质量的保障

  • 还有数据(获取、结构、用法和存储安全)。

最近已经出现了对不正当获取数据的严厉处罚案例,因此这方面需要格外注意[3]。

TRL 8:最后的部署

重点:测试
算法进度:★★★★★
代码进度:★★★★★
测试进度:★★★★★
团队沟通:★★★★★

测试!测试!测试!一边部署一边记得检查项目面对各种极端情况的承压性,要在用户涌入服务器之前做好准备!没准备好就别上!

TRL 9:上线啦啦啦~

重点:不要以为到这里就完事了
算法进度:★★★★★
代码进度:★★★★★
测试进度:★★★★★
团队沟通:★★★★★

可以说,从TRL 0-TRL 8都是勇者在新手村的任务,项目上线,才意味着漫长征程正式开始。根据实际运营情况和需求不断改进算法和代码,持续集成, 持续交付 (CI/CD),TRL 7-TRL 9循环的永动机模式就是项目的最终形态。

总结

作为机器学习项目的开发进度量表,MLTRL各个阶段的划分并不严格,也不一定非要按部就班地经历每一个阶段。只是说,这样的步骤能较为合理地分配人力物力资源,并且避免出现意外后成本过高的惨案。文章中还出具了MLTRL的阶段报告表格模板,并且对一些概念进行了更为详细的说明。感兴趣的朋友们可以自行翻看~

萌屋作者:白鹡鸰

白鹡鸰(jí líng)是一种候鸟,天性决定了会横跨很多领域。已在上海交大栖息四年,进入了名为博士的换毛期。目前以图像语义为食,但私下也对自然语言很感兴趣,喜欢在卖萌屋轻松不失严谨的氛围里浪~~形~~飞~~翔~~

知乎ID也是白鹡鸰,欢迎造访。

作品推荐:

  1. NLP太卷,我去研究蛋白质了~

  2. 谷歌40人发表59页长文:为何真实场景中ML模型表现不好?

后台回复关键词【入群

加入卖萌屋NLP/IR/Rec与求职讨论群

后台回复关键词【顶会

获取ACL、CIKM等各大顶会论文集!

 

[1]Technology Readiness Level, Wikipedia
https://en.wikipedia.org/wiki/Technology_readiness_level

[2]Technology readiness levels (TRL); Extract from Part 19 - Commission Decision C(2014)4995.
https://ec.europa.eu/research/participants/data/ref/h2020/wp/2014_2015/annexes/h2020-wp1415-annex-g-trl_en.pdf

[3] https://www.ftc.gov/enforcement/cases-proceedings/1923172/everalbum-inc-matter

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/479088.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于GAN的个性化短标题生成在1688平台的实践应用

原文链接:https://developer.aliyun.com/article/770631 基于GAN的个性化短标题生成在1688平台的实践应用 在电商情境下,卖家为了吸引买家兴趣,也为了提高商品被搜索引擎检索命中的概率,通常趋向于写过于冗长的商品标题。如何从过…

LeetCode 16. 最接近的三数之和(固定左端+滑动窗口)

1. 题目 给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。 例如,给定数组 nums [-1,2,1,-4], 和 …

领域应用 | 2020 年中国知识图谱行业分析报告

本文转载自公众号:艾瑞咨询。 核心摘要:人工智能本质是解决生产力升级的问题,人类生产力可以归类为知识生产力和劳动生产力,人工智能走入产业后,可以分为感知智能、认知智能和行为智能,后两者更与生产力相…

Category 特性在 iOS 组件化中的应用与管控

背景 iOS Category功能简介 Category 是 Objective-C 2.0之后添加的语言特性。 Category 就是对装饰模式的一种具体实现。它的主要作用是在不改变原有类的前提下,动态地给这个类添加一些方法。在 Objective-C(iOS 的开发语言,下文用 OC 代替&…

OpenAI亲谈:我们眼中的GPT-3、大规模语言模型的局限性与出路在哪

编译 | 陈彩娴、青暮编辑 | 陈大鑫近日,OpenAI政策研究主管Miles Brundage在推特上分享了一篇新论文,论文内容是对一个GPT-3研讨会的总结。2020年10月14日,来自OpenAI、斯坦福大学HAI研究所等机构的研究人员召集在一起,讨论围绕GP…

Android官方开发文档Training系列课程中文版:OpenGL绘图之响应触摸事件

原文地址:http://android.xsoftlab.net/training/graphics/opengl/touch.html 使图形按照程序设计的轨迹旋转对OpenGL来说还是不能发挥出它应有的实力。但要是能使用户可以直接控制图形的旋转,这才是OpenGL的真正目的。它真正的关键所在就是使程序可以交…

LeetCode 26. 删除排序数组中的重复项

1. 题目 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 来源:力扣&…

论文浅尝 | Data Intelligence - 多篇语义资源论文

本文转载自公众号:DI数据智能 。 编者按:Data Intelligence最新发表一组语义资源论文,包括世界著名语义网技术专家荷兰阿姆斯特丹自由大学计算机科学系Frank van Harmelen教授团队的Constructing and Cleaning Identity Graphs in the LOD C…

人物志 | 美团首席科学家夏华夏:不断突破边界的程序人生

“成长没有什么秘笈,就是坚持不断地一点点突破自己的边界就好。” 这是美团首席科学家、无人配送部总经理夏华夏在刚刚过去的“1024 程序员节”时送给技术同行的一句话。 这也是夏华夏自己的人生写照:从没摸过计算机的山东高考状元到清华计算机系的学霸&…

我的《Android官方开发文档Training系列课程中文版》的中期翻译计划

从2016年的3月份开始到现在,对于Android文档的翻译已经进行了两个月的时间。虽然数量还不及总篇数的一半,但是经过一番整理,发现翻译的文章还不少,目前为止已经有56篇了。这个过程也陆陆续续的坚持了下来。现在回头看刚开始翻译的…

论文浅尝 | 低资源文本风格迁移数据集

来源:AAAI2020论文链接:https://www.msra.cn/wp-content/uploads/2020/01/A-Dataset-for-Low-Resource-Stylized-Sequence-to-Sequence-Generation.pdf概述:低资源样式化的序列到序列(S2S)生成是高需求的。但由于数据集…

Android官方开发文档Training系列课程中文版:动画视图之转场框架介绍

原文地址:http://android.xsoftlab.net/training/transitions/index.html 引言 Activity所呈现的UI经常会由用户的输入或者其它事件而发生变化。比如,一个含有输入框的Activity,在用户输入要查找的关键字之后,这个输入框就会隐藏…

机器学习竞赛中,为什么GBDT往往比深度学习更有效?

在过去的几年里,大多数的推荐算法都是基于深度学习(DL)方法。遵循我们领域的一般研究实践,这些工作证明了新的DL方法在离线实验中优于其他不基于深度学习的模型。然而,在与推荐相关的机器学习竞赛中(如与年…

2020年算法工程师技术路线图

原文链接:https://cloud.tencent.com/developer/article/1689082 重磅干货,第一时间送达作者丨字节知乎来源丨https://zhuanlan.zhihu.com/p/192633890极市导读算法工程师如何获得技术方面的成长?本文从工程基础、算法基础、算法工程交叉、工…

浅谈大型互联网企业入侵检测及防护策略

前言 如何知道自己所在的企业是否被入侵了?是没人来“黑”,还是因自身感知能力不足,暂时还无法发现?其实,入侵检测是每一个大型互联网企业都要面对的严峻挑战。价值越高的公司,面临入侵的威胁也越大&#x…

征稿 | Big Data Research 专刊(影响因子 2.95)

征稿截止:2020年06月15日近年来,学术界和工业界领域都相继构建和发布了越来越多的大规模知识图谱,如DBpedia、YAGO、Freebase、Wikidata、Google knowledge Graph、Microsoft Satori、Facebook Entity Graph等。事实上,来自不同领…

不要再问Python了!

很多小伙伴问如何学习Python,哪里可以找到实战的Python项目,有没有爬虫案例等等。今天给大家分享一份我整理的Python大全学习资料(文末有获取方式)。话不多说,直接上干货。首先,全部资料目录压缩简单看下里…

CAT 3.0 开源发布,支持多语言客户端及多项性能提升

项目背景 CAT(Central Application Tracking),是美团点评基于 Java 开发的一套开源的分布式实时监控系统。美团点评基础架构部希望在基础存储、高性能通信、大规模在线访问、服务治理、实时监控、容器化及集群智能调度等领域提供业界领先的、…

论文浅尝 - TACL2020 | TYDI QA:Google 发表一个多语言的问答语料库

论文笔记整理:吴林娟,天津大学硕士。链接:https://arxiv.org/ftp/arxiv/papers/2003/2003.05002.pdf动机具有挑战性、值得信赖的评估数据可以促进多语言模型的发展,为了鼓励对多语言问答技术的研究,作者提出了数据集Ty…

读博总结的总结:读博的那些事儿

文 | 胡津铭知乎本文已获作者授权,禁止二次转载我时常给同学们推荐各种我看过的优质读博总结与建议文章,今天有了些空,整理一下我看过的优质文章。排名不分先后,想到啥写啥。先推荐英文的资源好了,因为我最推荐的一篇文…