iPAS 備考專區 登入

iPAS AI 應用規劃師 中級 科目一 AI 技術應用與規劃・114 年第二次・L21・第 15 題

Model Registry 在 MLOps 哪個階段最重要?

原題

在企業導入的 MLOps(Machine Learning Operations)流程中,Model Registry 最常用於哪一個階段?

白話

MLOps 是讓機器學習模型從開發到上線、維護的整套工程流程,就像軟體工程(DevOps)一樣,只是對象是 AI 模型。

「Model Registry(模型登錄所)」是 MLOps 裡的一個工具。

問你:Model Registry 主要用在 MLOps 流程的哪個環節,它做什麼事?

一句話總結

Model Registry 是 MLOps 流程中的「模型檔案室」,核心功能是集中管理模型版本、訓練紀錄與部署狀態,讓團隊隨時知道哪個版本的模型在線上跑、是誰訓練的、用了哪些超參數、現在狀態是什麼。

情境

先感受問題:模型越改越多,誰知道線上跑的是哪版?

假設「風險管家」公司的 AI 團隊在訓練詐欺偵測模型,一個月內跑了 30 次實驗:

model_v1:用 Random Forest,AUC 0.82,訓練日 5/1

model_v2:加了新特徵,AUC 0.86,訓練日 5/8

model_v3:改用 XGBoost,AUC 0.89,訓練日 5/15

model_v4:調整超參數,AUC 0.88(退步了),訓練日 5/20

…(共 30 個版本)

現在問題來了:

  • 線上正在跑的是哪個版本?v3 還是 v2?
  • 上週上線的版本,用了哪組超參數?資料是哪一批?
  • 如果線上 AUC 突然下降,可以快速「退版」到前一個好版本嗎?
  • 新工程師加入,怎麼知道過去的實驗歷史?

如果這些資訊散落在每個人的電腦裡、不同的資料夾裡,團隊就會陷入混亂。

舊方法

沒有 Model Registry,團隊怎麼管模型

在 Model Registry 出現前,工程師通常這樣管,每個方法都有致命缺點:

  1. 用資料夾和日期命名:model_20250515_xgboost_lr001.pkl,看起來有規律,但沒有統一格式,每個人命名習慣不同,三個月後自己都看不懂。
  2. 用 Excel 記錄實驗:欄位有 AUC、超參數、訓練日期,但很快就失控,工程師懶得填,資料和模型檔案的對應關係斷了。
  3. 用 Git 版本控制模型:模型檔案可能幾百 MB,Git 不適合存大型二進位檔案,push 超慢,repo 很快爆炸。
  4. 口頭溝通「線上跑哪版」:靠 Slack 訊息說「我剛部署 v3」,但訊息沉下去了,兩週後沒人記得。
  5. 沒有退版機制:線上模型出問題,要回到上一個版本,得翻舊資料夾、重新找檔案、手動部署,慌亂中很容易出錯。

新方法

Model Registry 統一管起來

「風險管家」的團隊導入 MLflow Model Registry 後,每次訓練完模型,工程師執行一行程式:

mlflow.log_model(model, "fraud_detector", registered_model_name="FraudDetector")

這個動作自動把以下資訊存進 Registry:

  • 模型版本:自動編號 Version 1、Version 2…
  • 訓練紀錄(Run ID):對應到這次實驗的超參數、資料集版本、評估指標
  • 部署狀態:Staging(測試中)/ Production(線上)/ Archived(已封存)
  • 誰做的 + 什麼時候:完整的 audit trail

線上模型突然 AUC 下降,工程師到 Registry 查,發現 v4 比 v3 差,一個指令把 Production 從 v4 切回 v3,整個過程 5 分鐘。

這就是選項 C 講的:用於集中管理模型版本、訓練紀錄與部署狀態。

錯選項

為什麼其他選項是錯的

A用於設定運算資源與執行環境以確保訓練穩定

字面在說什麼

說 Model Registry 用來設定訓練時的 GPU 數量、記憶體大小、執行環境(Python 版本、套件清單)等,確保每次訓練都能穩定執行。

為什麼不對

這是「訓練環境管理」的工作,對應工具是 Kubernetes(資源調度)、Docker(容器化執行環境)、MLflow Projects(定義可重現的執行環境)。Model Registry 不管訓練時的資源和環境,它只管「訓練完成後的模型」:版本、指標、部署狀態。

誰會選錯

把 MLOps 的不同功能混在一起的人。「穩定訓練」和「管理訓練成果」是兩個不同的關切,Registry 只負責後者。

B用於建立可重複使用的資料與特徵版本

字面在說什麼

說 Model Registry 幫你把訓練資料和特徵的不同版本管理起來,確保實驗可以重現。

為什麼不對

這是「Feature Store(特徵儲存)」和「資料版本控制」工具的工作,如 Feast、Tecton、DVC(Data Version Control)。Model Registry 管的是「模型」不是「資料」或「特徵」。雖然 Model Registry 通常會記錄「這個模型訓練時用了哪個資料集版本」,但管理資料集本身不是它的職責。

誰會選錯

看到「版本」就以為是 Model Registry 的事,但沒注意版本控制的對象不同:Registry 管模型版本,Feature Store 管特徵版本,DVC 管資料集版本,Git 管程式碼版本。

D用於追蹤模型上線後的表現與漂移情況

字面在說什麼

說 Model Registry 在模型上線後,持續監控它的準確率、資料分佈有沒有飄移(drift),確保模型效能不衰退。

為什麼不對

這是「模型監控(Model Monitoring)」的工作,對應工具是 Evidently AI、Seldon Core、WhyLogs、或自建的監控 pipeline。Model Registry 記錄的是「靜態資訊」(版本、指標、部署狀態),不負責持續追蹤線上推論的動態表現。兩者在 MLOps 生命週期裡是相鄰但不同的環節:Registry 在部署之前,Monitoring 在部署之後。

誰會選錯

因為 Registry 和 Monitoring 都和「部署」相關就混在一起的人。記住:Registry 是「管哪個版本在線上」,Monitoring 是「監控線上那個版本表現怎麼樣」,前者是靜態記錄,後者是動態追蹤。

變形題

同個考點下次怎麼變形

延伸

想再往下看,這 5 個

答案、題目或解析有問題?回報這題

出處:iPAS 經濟部產業人才能力鑑定 ・ 114 年第二次 iPAS AI 應用規劃師 中級 科目一 第 15 題

看官方原文 PDF

原題 © 經濟部產業發展署,AITerms.tw 僅作教學解析使用,本站解析以 CC BY-NC-SA 4.0 授權。