编译:ronghuaiyang
正文共:3392 字 8 图
预计阅读时间:10 分钟
导读
为什么机器学习是你最大的噩梦。
技术债是代码实现过程中所作的权宜之计的持续成本。这是由于为早期软件发布和更快的上市时间提供短期利益而采取的快捷方式造成的。技术债会累加。推迟工作以偿还债务会导致成本增加、系统脆弱和创新率降低。
1992年,Ward Cunningham创造了这个术语来解释产品涉众的重构需求。对于你们中间那些还不明白的人。技术债是近藤麻理惠的对立面,他说”让我们把脏衣服扫到床底下,问题就解决了”。
1) 纠缠
ML系统是带有数据的机器。通常很难做出孤立的改变(Changing Anything, Changing Everything——CACE)。这适用于特征工程、ML调优、正则化、数据采样等。
让我们假设你的定价模式在所有产品上都很有效,除了吸尘器(因为它很糟糕)。你通过提高清洁产品定价的敏感性来固定吸尘器的价格,但你发现你造成了与洗碗机的价格分配不匹配。真空吸尘器的价格分布并不适用于较窄的洗碗机的价格分布。现在需要创建可能影响其他产品的不同规则。
你会认识到数据和见解是相互纠缠的。不同的调优和模型公式将导致难以隔离的一般洞察力的变化。
纠缠的数据和系统会导致很难孤立和调试问题
2) 复杂的Pipelines
AI和ML系统由许多不同的工作流pipelines组成,它们依次负责复杂的工作。ML系统将由许多工程师构建,并与许多不同的系统和数据源互连。
在适当的ML pipelines中,你需要设计许多作业,包括抓取、生成数据、ETL、验证数据清洁度、交叉验证、监视性能和部署。很快,你的模型将变得非常复杂。如果没有合适的工具和操作的标准,跨使用不同语言的多个系统和遗留系统进行简单的更改将花费数小时。
复杂的pipelines会使你的工程工作缓慢且充满bug。如果处理不好,你可能会花几个小时来做一些简单的修改。
3) 隐含的反馈回路
现实世界的系统最终会影响我们的数据。想象一下,你的销售代表发布了一项营销活动来接触儿童,并积极地将他们包括在你的定价模型所使用的CRM系统中。
ML模型会感知到很大一部分顾客会购买玩具。因此,ML模型对玩具价格会提高,对昂贵产品会过度打折。然而,监控到你的价格飙升,你的竞争对手的定价模式也会自动填补市场的过高价格的玩具。你的系统也会这样做,恶性循环就出现了。
隐藏的反馈循环给ML系统带来了麻烦,而由于在ML系统之外相互链接数据依赖关系,使得调试更加困难
4) 不稳定的数据依赖
假设你的定价模式依赖于顾客的性别。如果一个男人浏览了化妆品,他很可能会买它作为礼物给他的妻子/女朋友,所以支付意愿更高。你的机器学习已经准备好根据性别来决定价格了。
然而,你的业务代表在上游CRM中添加了“性别”特征之外的标签。如果看到的值不是男性或女性,你的ML系统会崩溃吗这个型 的化妆品价格是多少码依赖相比,这是非常脆弱的,因为这意味着当上游系统更新时,并提供未被怀疑的特下一个错别字征时,你的模型可能会崩溃。
在特征工程和特征标注过程中,数据依赖会导致语义不匹配导致逻辑错误和质量下降。
还机器学习的技术债
—END—
英文原文:https://towardsdatascience.com/intro-to-mlops-ml-technical-debt-9d3d6107cd95
文章知识点与官方知识档案匹配,可进一步学习相关知识OpenCV技能树首页概览11610 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!