機器學習維運與生產

模型版本控制(model versioning)

一個訓練好的模型不只是一個檔案,而是一個更大空間中的座標:是的,包含權重,但也包含確切的訓練程式碼、資料集快照、超參數、函式庫版本,以及共同產生它的前處理邏輯。模型版本控制是一門紀律,為每個發布的模型賦予穩定的身分,並記錄上述每一個座標,這樣幾個月後你才能回答每位稽核者與值班工程師遲早會問的問題:是哪個模型在提供這個預測,而它究竟是怎麼建出來的?

具體而言,模型登錄(model registry)以版本(通常是語意化版本或內容雜湊)為鍵,儲存不可變、以內容定址的產物,並附上中繼資料:上游資料版本、訓練執行的識別碼、評估指標,以及生命週期階段,例如測試中、生產中或已封存。階段之間的晉升是一次明確且留有稽核紀錄的轉換,而非單純複製檔案。登錄成為部署工具拉取的單一真相來源,因此跑在生產環境的二進位檔,可被證明就是通過評估的那一個,且能完整追溯回它的資料與程式碼。

困難之處不在於儲存權重,而在於當資料與程式碼分散在不同系統時,仍能忠實地捕捉血緣(lineage)。一個只記錄了模型卻遺失指向確切特徵轉換的指標的版本,是一個再現性陷阱:它看似被追蹤了,實際上卻無法重建。成熟的做法會把模型、資料與程式碼一起版本化,並拒絕登錄任何輸入本身未被版本化的模型。

一個沒有把資料與前處理一起釘住的版本號,只是裝飾,不是血緣。

又稱
model registry模型版本管理模型登錄