[Day 04] 部署模型的挑战 — 资料也懂超级变变变!?

部署模型有两个主要的挑战,事实上这两个挑战隐含了机器学习产品生命周期里的 "部署 (Deploy in production)" 与 "维护 (Monitor & Maintain system)" 两个面向:

  • 软件引擎的挑战:
    把系统建立起来需要考虑许多面向,以下问题可以帮助我们厘清工作方向:
    1. Real-time or Batch:预测是否需要即时回传?
    2. Cloud vs. Edge/Browser:部署的装置为何?
    3. Compute resources (CPU/GPU/memory):可用的运算资源为何?
    4. Latency, throughput (QPS):回传速度要多快?每秒需要做多少次预测?
    5. Logging:尽可能纪录资料,方便做分析或重新训练。
    6. Security and privacy:资料是否涉及隐私?
  • 机器学习 (统计上) 的挑战:
    资料通常会随时间改变,有时候是缓慢变化 (Gradual change),例如语言习惯,有时候则是急骤改变 (Sudden shock),例如武汉肺炎带来的消费习惯改变让很多信用卡盗刷预警系统失效。
    一般来说,成功的机器学习系统必须能侦测与处理以下的资料变化:
    • 资料漂移 (Data drift) 指的是从训练到服务之间的资料改变,也就是特徵的统计性质改变 (资料分布 X 改变),像是现在的房子越盖越小。
    • 概念漂移 (Concept drift) 指的则是世界改变使得 Ground Truth 改变,也就是标签的统计性质改变 (映射 X → Y 改变),像是炒房使得同样大小的房子价格改变。

克服了这两个面向才能确保产品的成功,而部署时还需要考虑部署的模式为何,这部分就等明天再谈啦~
/images/emoticon/emoticon07.gif

参考资料


<<:  [Day19]乖离率网格实作

>>:  Day 04 - Function Composition

2022重拾程序-写文件

服用注意:本篇绝对不是在教你如何21天养成一个计划、或戒掉什麽拖延症、还是什麽断舍离的文章! 上述这...

【Day29】Pixi-AnimatedSprite

PIXI.AnimatedSprite 今天介绍用PIXI.AnimatedSprite做影格动画 ...

DAY5 Messaging API 设定

要开发LINE Bot前,首先需建立一个Provider,也就是服务提供者,主要用来让LINE官方能...

Day 18 - 深入讨论 YOLO 相关设定

Day 18 - 深入讨论 YOLO 相关设定 今天来分析 Joseph Redmon 所设计的 Y...

2020it邦铁人赛-30天手把手的Vue.js教学 Day28 - 关心时事! 做个简单的COVID-19追踪app吧!(上)

tags: Vue.js ItIron2020 前言 终於进到最终的三天了,坦白说做为一个教学的系列...