穩健性與可解釋性

分布外偵測(out-of-distribution detection)

/ owt-uv-dis-truh-BYOO-shun dee-TEK-shun /

分布外偵測,是教模型認出一個輸入「不像它訓練過的任何東西」——並據實說出來,而不是硬猜。想像一位只見過成年病人的醫生,突然被遞來一張狗的X光片。明智的回應是「這不是我的專長」,而非一個信心滿滿的診斷。可大多數機器學習模型默認就缺這份明智:遞給它一個胡亂的輸入,它照樣會挑出自己認為最可能的標籤,並彷彿篤定無疑地報告出來。

目標,是造一個「門衛」:把落在訓練分布之外的輸入標記出來——一種模型從未見過的新疾病、一個出故障的感測器讀數、一張屬於其詞彙表裡根本不存在類別的影像——好讓系統能夠棄權、轉交人類、或求援。方法五花八門:從盯著模型有多自信,到衡量某個輸入在模型內部表示中離「訓練樣本那團雲」有多遠,再到專門訓練一個「正常長什麼樣」的偵測器。

它最要緊的地方,是那些「自信地答錯」會釀成危險之處:一個撞見自身訓練範圍之外病症的醫療AI、一輛面對著與其資料迥異場景的自動駕駛車。但要說實話——分布外偵測是真的難,遠談不上解決。深度模型在古怪輸入上以「過度自信」而臭名昭著,有時甚至給純雜訊打出的信心分,比給真實資料還高。一個完美的偵測器,本質上要求模型知道「它所不知道的一切」的完整形狀,而這是沒有任何方法能做到的。

一個只在手寫數字0到9上訓練過的分類器,被給看一個手寫字母「A」。由於沒有「以上皆非」這個選項,它必須用某個數字來作答——而一個樸素的模型常會回答,比如「7」,且信心高達99%。一個好的分布外偵測器則會拉響警報:這個輸入,不屬於它認識的任何一個數字。

沒有「我不知道」這個選項,分類器就只能把每一個輸入硬塞進某個已知的格子裡。

有一個著名的反直覺結果:在某個影像資料集上訓練的深度生成模型,給一個來自完全不同資料集的影像打出的「似然」,竟可能比給它自己的訓練資料還高。這件事的教訓是:模型原始的信心,對於「這東西熟不熟悉?」是一個糟糕、有時甚至是反過來的信號——分布外偵測需要專門的、經過審慎驗證的方法。

又稱
OOD detectionnovelty detection分布外检测OOD检测分布外偵測