機器學習工程與系統

資料漂移與概念漂移(data and concept drift)

/ DAY-tuh and KON-sept drift /

漂移,是一個已部署的模型緩慢地、往往無聲地變陳舊的方式——因為它訓練時所依據的那個世界,已經往前走了。它有兩種味道。資料漂移,指的是輸入變了:模型見到的仍是同一類問題,可它被問及的那個群體卻挪了位——一個在去年的購物者身上訓練出來的模型,如今見到的是習慣不同、更年輕的一撥人。概念漂移則更深:輸入與正確答案之間的關係本身變了——一場突如其來的經濟衝擊之後「正常」的消費模式,或是隨著騙子翻新花樣、「垃圾郵件」的定義。

一個能讓人切身體會差別的法子:設想預測房價。資料漂移,是在售的房子變了(忽然公寓比從前多了許多)——規則照舊,輸入的構成是新的。概念漂移,是規則變了(一項新政策讓地段遠比面積重要)——「一個好預測」的含義本身,已經挪了位。前者是「你看到的東西」變了;後者是「答案該是什麼」變了。

為什麼這很重要:漂移是「一個上線時表現出色的模型,隨時間悄悄變差」最常見的單一原因,而它從不以錯誤的形式露面——預測照樣源源不斷地流出來,只是越來越不對了。一句實話是:漂移不是一個修一次就完的 bug,而是真實世界一種永久的狀況;幾乎每一個生產模型,最終都會退化。它沒有根治之法,只有管理:監控著它,一旦它出現,就在新鮮資料上重訓。模型是一張「流動世界」的快照,而世界不會停著不動。

一個標記詐欺交易的模型,本來用得好好的,直到騙子換了打法。輸入(交易)表面上看仍舊正常——沒有資料漂移的警報——可「什麼讓一筆交易算詐欺」卻挪了位。這就是概念漂移:哪怕問題看上去一模一樣,答案卻變了。

概念漂移是陰險的那種——輸入看著沒事,可正確答案卻悄悄變了。

漂移不是一個你能一勞永逸地工程掉的缺陷;它是任何一個面對變動世界的模型,默認的歸宿。現實的目標,不是防住它,而是及早察覺它、再去重訓——把模型維護當作一筆永久持續的成本,而非一次性的上線。

又稱
data driftconcept driftdistribution shift数据漂移概念漂移