成熟機器學習系統持續改進面臨的問題 - danshiebler
任何在大公司建立機器學習模型的人都會認識到。對成熟的機器學習系統進行可衡量的改進是極其困難的:
機器學習系統極其複雜,並且具有破壞軟體元件之間抽象的令人沮喪的能力。這對 ML 成功必不可少的迭代開發型別提出了廣泛的挑戰。
大多數軟體系統會仔細控制哪些層需要相互通訊以及需要沿每個層邊界公開哪些資料。對於一個新的機器學習系統來說,需要打破現有的抽象並連線被設計為獨立的層是很常見的。
例如:
- 新的特徵標準化策略可能需要將原始資料暴露給旨在使用處理過的資料的系統部分。
- 將前饋神經網路遷移到圖神經網路可能需要在推理時訪問節點鄰居的特徵。
- 調整模型以使用另一個模型的預測作為特徵可能需要將模型配置為按順序執行而不是並行執行。
我們有標籤的樣本分佈與我們必須執行推理的樣本分佈相同是非常罕見的。例如:
- 點選率 (CTR) 預測模型不會收到使用者未看到的樣本標籤。
- 大多數內容稽核系統只收到關於一個很小的、通常不具有代表性的資料子集的反饋。
- 大多數感測器分析演算法都建立在具有不切實際的低噪聲水平的標記資料集之上。
在許多情況下,我們的模型接收到的標記資料取決於它生成的預測。這種情況的一些經典示例包括:
- 大多數推薦系統不會收到有關使用者未看到的任何樣本的使用者反饋。
- 有效檢測和懲罰使用者某些行為的系統可能會導致使用者修改他們的行為以避免懲罰。
- 如果內容稽核系統是根據使用者報告進行訓練的,那麼隨著使用者報告率的降低,系統覆蓋率的增加可能會導致模型訓練資料的減少。
在生產機器學習系統中,看似獨立的元件通常表現出隱藏的緊密耦合。這會使實驗具有挑戰性。更改一個系統而不更改另一個系統會導致效能下降,同時更改兩個系統通常容易出錯且需要大量協調。一些例子包括:
- 一旦開發了特徵管道並可供模型使用,對該管道的任何更改(甚至糾正錯誤!)都有可能損害使用該特徵的模型的效能。這迫使 ML 工程師對所有功能更改進行版本控制,從而導致功能管道極快地變成笨拙的怪物。
- 在大規模推薦系統中,輕型機器學習模型或基於啟發式的候選生成系統通常會選擇重型機器學習模型從中選擇的候選集。對候選生成系統的任何更改都會影響饋送到重模型的樣本分佈,這可能會影響該模型的效能。
- 某些模型(例如語義模型或物件檢測模型)生成其他模型用作特徵的訊號是很常見的。在這種情況下,對上游模型的任何更改或改進都可能損害消耗其預測的下游模型的效能。
相關文章
- 機器學習應用面臨的一些問題機器學習
- 入駐線上教育saas系統會面臨哪些問題?
- 持續改進之技術篇#1
- OA系統資料面臨的安全問題及解決方法
- 你的專案管理有持續改進嗎?專案管理
- 軟體測試過程的持續改進
- 新手筆記-持續改進實踐:開發計劃的改進 (轉)筆記
- 你的專案管理有持續改進嗎?(轉)專案管理
- 專案管理持續改進的九個方面(轉)專案管理
- 義大利企業面臨的網路風險持續加劇
- 企業管理系統上線後可能會面臨哪些問題?
- 快取系統中面臨的雪崩/穿透/一致性問題快取穿透
- 同事反饋環:如何實現持續改進的文化
- Flutter 問題集,持續更新Flutter
- #翻譯#持續交付成熟度模型模型
- 持續整合實踐成熟度模型模型
- 機器學習職位面臨消失機器學習
- 前端面試問題(持續更新)前端面試
- 持續交付一——軟體交付的問題
- 高併發快取面臨的問題快取
- 持續交付成熟度模型 V1.2模型
- 持續整合:軟體質量改進和風險降低之道
- 系統臨時表空間不足問題
- Kaizen與變革管理中持續改進的理念是什麼?AI
- 模切企業在未使用模切ERP系統時所面臨的問題
- 前端面試問題二(持續更新)前端面試
- ick:一個持續整合系統
- 作業系統PPT(持續更新)作業系統
- CRM解決企業面臨的哪些問題?
- 如何改進手上的機器學習模型機器學習模型
- hadoop 日常問題彙總(持續更新)Hadoop
- 如何解決Finder持續無響應的問題
- 程式設計師健康面臨的5大問題程式設計師
- 語音識別技術面臨的問題 (轉)
- 國產Linux作業系統面臨的困境Linux作業系統
- 聊聊持續測試的進階
- pixi.js持續渲染頁面JS
- 總結Java開發面試常問的問題,持續更新中~Java面試