綜述:廣義的分布外檢測
Generalized Out-of-Distribution Detection: A Survey Jingkang Yang, Kaiyang Zhou, Yixuan Li, and Ziwei Liu https://github.com/Jingkang50/OODSurvey
分布外(Out-Of-Distribution,OOD)檢測對確保機器學習系統(tǒng)的可靠性和安全性至關(guān)重要。例如,在自動駕駛中,當遇到它從未見過、無法給出安全決策的非常規(guī)情形或物體,我們需要駕駛系統(tǒng)發(fā)出警告并且將控制權(quán)交給人類。自2017年被提出起,這個問題越來越受研究者關(guān)注,各種解決方案層出不窮,大致包括:基于分類的、基于密度的、基于重構(gòu)的、基于距離的方法。與此同時,其他幾個問題在動機和方法上與分布外檢測緊密相關(guān),這些問題包括:異常檢測(Anomaly Detection,AD)、新類檢測(Novelty Detection)、開集識別(Open Set Recognition,OSR)和離群檢測(Outlier Detection,OD)。盡管他們各自定義和問題設(shè)定不同,這些問題經(jīng)常使讀者和實踐者感到困惑,這導(dǎo)致有些現(xiàn)有工作誤用了這些術(shù)語。實際上,AD、ND、OSR、OOD、OD這五個問題能夠統(tǒng)一在廣義的分布外檢測框架下,都可以視作分布外檢測的特例或子任務(wù),并且能夠輕易地被區(qū)分。這篇綜述通過總結(jié)最新的技術(shù)發(fā)展對這五個問題做了深入的回顧,并以該領(lǐng)域的開放挑戰(zhàn)和潛在的研究方向作結(jié)。
引入
可信的視覺識別系統(tǒng)不僅僅在已知的情境下能給出精確預(yù)測,還應(yīng)該能檢測到未知的樣本并且丟棄或?qū)⑺鼈兘唤o用戶來做安全地處理。
比如,一個訓(xùn)練良好的食物分類器應(yīng)該丟棄像用戶自拍照之類的非食物圖片,而不是胡亂判定其屬于某已知的食物類別。在安全要求極高的應(yīng)用中,比如無人駕駛,系統(tǒng)應(yīng)該在它碰到不尋常的、未在訓(xùn)練中見到的情形或物體時發(fā)出警告并將控制權(quán)交給司機。
大多數(shù)現(xiàn)有機器學習模型都基于封閉世界假設(shè)(the closed-world assumption)來訓(xùn)練,即測試集和訓(xùn)練集獨立同分布,或者說兩者來源于同一分布(in-distribution)。然而,當模型被部署在開放世界場景(open-world scenario)中,測試樣本的分布可以是取自不同于訓(xùn)練集分布的分布的(out of distribution),因而需要被謹慎處理。分布的變化可能是語義漂移(比如,OOD樣本取自別的類別)、協(xié)變量漂移(也稱輸入漂移,比如OOD樣本取自其他領(lǐng)域??)。
只考慮語義漂移和協(xié)變量漂移兩類漂移。
異常檢測 Anomaly Detection
背景
定義
異常檢測目的在于在測試階段檢測異常的樣本,“異?!敝傅氖瞧x預(yù)定義的“正?!?。這種偏離可能是協(xié)變量漂移或是語義漂移導(dǎo)致的。異常檢測可以分為兩個子任務(wù):
感官異常檢測(sensory AD)
語義異常檢測(semantic AD)
新類檢測 Novelty Detection
背景
與異常檢測的區(qū)別:1) 動機上,新類檢測中并不像異常檢測把沒見過的“新”樣本看做錯誤的或是有害的,而是將珍視這些新樣本為后續(xù)模型的學習資源;2)新類檢測首要關(guān)注的是語義漂移;3)新類檢測中,沒有限制ID樣本屬于單個類,在訓(xùn)練集中可以有多個類別的樣本。
定義
新類檢測目的在于檢測出不屬于任何訓(xùn)練類別的測試樣本。檢測到的新奇樣本通常預(yù)備用于未來程序的構(gòu)建,比如特異性更強的分析、當前模型的增量學習等。依據(jù)訓(xùn)練類別數(shù)量的差異,新類檢測分為:
單類別新類檢測
多類別新類檢測
開集識別 Open Set Recognition
背景
定義
OSR需要一個多類別分類器來同時1)精確地分類訓(xùn)練類別的測試樣本(ID);2)識別出測試樣本中不屬于訓(xùn)練類別的樣本(OOD)。
OSR = multi-class ND
分布外檢測 Out-of-distribution Detection
背景
需要模型拒絕標簽遷移的樣本以保證預(yù)測可靠性和安全性
定義
分布外檢測目的在于檢測測試樣本
離群檢測 Outlier Detection
背景
當某個樣本顯著區(qū)別于其他的樣本時,認為它是“離群”的。在異常檢測、新類檢測、開集識別、分布外檢測的問題設(shè)定中,都存在這訓(xùn)練-測試的流程,要挑出測試中出現(xiàn)的不屬于訓(xùn)練分布的樣本。
而離群檢測無“訓(xùn)練分布”、“測試分布”,而是直接挑出所有可見樣本中顯著區(qū)別于其他的那些樣本。
3. 異常檢測、單類別新類檢測 方法
給定同構(gòu)的ID數(shù)據(jù),最直接的方法是1)基于密度的方法,這些方法估計ID的密度,拒絕那些偏離估計的OOD的測試樣本。其他的方法包括:2)依靠圖片重構(gòu)的質(zhì)量來識別異常樣本,3)直接學習一個決策邊界來區(qū)分ID和OOD樣本,4)基于距離的方法,5)基于元學習的方法
3.1 基于密度的方法
基于密度的方法嘗試去建模正常數(shù)據(jù)(ID數(shù)據(jù))的分布,這種做法基于一個實踐假設(shè):異常的測試樣本在估計的密度模型下游較低的概率值,而正常樣本概率值較高。
3.1.1 經(jīng)典密度估計
a. 參數(shù)密度估計
參數(shù)密度估計假設(shè)ID樣本的密度能夠被表示為某種定義好的分布。一種方法是在訓(xùn)練數(shù)據(jù)上擬合一個多變量高斯分布,并且度量測試樣本與訓(xùn)練樣本的期望之間的馬氏距離(協(xié)方差距離,計算兩個未知樣本集的相似度的方法。與歐氏距離不同的是它考慮到各種特性之間的聯(lián)系)。其他的工作采用了更復(fù)雜的假設(shè),認為訓(xùn)練分布是混合的高斯分布或是泊松分布等。
b. 非參數(shù)密度估計
非參數(shù)密度估計考慮了更貼合實際的情形:預(yù)定義的分布不能夠建模真實分布??梢院唵蔚赜弥狈綀D對訓(xùn)練分布進行建模。核密度估計(KDE)進一步使用核函數(shù)作為離散直方圖的連續(xù)替代版,它可以靈活地使用點權(quán)重和帶寬去控制估計的分布。
雖然經(jīng)典的密度估計方法在很多任務(wù)上獲得了很好的AD性能,但它們更適合低維任務(wù)。
對于計算機視覺任務(wù)中的高維數(shù)據(jù),這些方法的計算性和可伸縮性受到影響。為緩解維數(shù)災(zāi)難,有些方法通過特征工程降維[277],[278]。
3.1.2 基于深度生成式模型的密度估計
a. 基于自編碼器AE / 變分自編碼器VAE的方法
通過由潛在嵌入重建出輸入,自編碼器能學到無標簽數(shù)據(jù)的高效表達。變分自編碼器將輸入的圖片編碼為服從高斯分布的潛在向量。習得的潛在嵌入可被視為輸入的低維表示。傳統(tǒng)密度估計方法可以應(yīng)用在這些深度表示之上。
b. 基于生成對抗網(wǎng)絡(luò)GAN的方法
生成對抗網(wǎng)絡(luò)由一個生成網(wǎng)絡(luò)和一個判別網(wǎng)絡(luò)構(gòu)成,兩者在零和博弈中相互競爭。典型地,生成網(wǎng)絡(luò)學習從潛在空間到所研究數(shù)據(jù)分布的映射,而判別網(wǎng)絡(luò)試圖分辨生成器生成的數(shù)據(jù)和真實數(shù)據(jù)。然而,不同于基于自編碼器/變分自編碼器的范式,少了一個編碼器使得GAN難以直接為一張輸入圖片找到相應(yīng)的嵌入。針對這個問題,ADGAN [90] 對一個給定的樣本,在潛在空間搜索一個好的表示。如果找不到這樣的表示,這個樣本被認為是異常的。該方法計算代價極高。
c. 基于流的模型???
規(guī)范化的流描述了一個概率分布經(jīng)過一系列可逆映射的轉(zhuǎn)化過程。通過重復(fù)施加變量變化的規(guī)則,初始的密度“流”過了一系列可逆映射。因此,使用規(guī)范化的流的方法能夠直接估計輸入空間的可能性。基于流的方法有優(yōu)雅的數(shù)學表示,但是它們同樣僅對低維特征敏感。若不進行降維,基于流的方法計算代價高。
d. 表示增強
除通過生成式模型獲取可視化嵌入外,一些方法主要通過擴充模型容量來增加提取到的特征的表示能力,這或許可以讓正常(ID)能被更精確地特征化為密度估計。這些策略包括數(shù)據(jù)增強,對抗訓(xùn)練,蒸餾,損失函數(shù)增強,使用淺表/局部特征。
3.1.3 基于能量的方法
基于能量的方法使用一個標量能量評分來表述變量概率密度,這個標量采用非標準化的負對數(shù)概率,
然而,和標準的深度學習模型相比,訓(xùn)練基于能量的方法代價昂貴,因為馬爾可夫鏈蒙特卡羅法(MCMC,在概率空間,通過隨機采樣估算興趣參數(shù)的后驗分布)采樣和估計需要積分運算。
為解決這個難題,研究者提出了評分匹配方法和隨機梯度之類的方法來支持高效訓(xùn)練。
3.1.4 基于頻率的方法
現(xiàn)有工作也探索了使用頻域分析方法做異常檢測。人類通過圖片的低頻信息來理解圖片,而CNN更多依賴高頻信息來做決策。人們提出了CNN核平滑和譜引導(dǎo)的數(shù)據(jù)增強之類的方法去抑制高頻分量的影響。還有一些工作發(fā)現(xiàn),對低頻分量的對抗攻擊也很難被檢測到,因此提出
基于頻率的方法專注于感官異常檢測(尤其是檢測對抗樣本),或許不適用于語義異常檢測。
3.2 基于重構(gòu)的方法
基于重構(gòu)的方法的核心在于在ID數(shù)據(jù)上訓(xùn)練得到的編解碼器(encoder-decoder)框架通常對ID和OOD樣本返回不同的效果。
模型表現(xiàn)的差異可以被用作異常檢測的指標。模型表現(xiàn)的差異可以用特征空間的差異或是重構(gòu)誤差來度量。
3.2.1 稀疏表示
系數(shù)重構(gòu)假定每個正常樣本都能被有限個基礎(chǔ)函數(shù)精確重構(gòu),而異常數(shù)據(jù)的重構(gòu)開銷則更大,因此生成了稠密表示。稀疏表示的典型技巧包括基于L1正則的核PCA和低階嵌入網(wǎng)絡(luò)。
3.2.2 重構(gòu)誤差方法
重構(gòu)誤差方法依賴于以下假設(shè):在正常數(shù)據(jù)上訓(xùn)練得到的重構(gòu)模型在輸入為正常測試樣本時會輸出更高質(zhì)量的結(jié)果。深度重構(gòu)模型(包括自編碼器AE、變分自編碼器VAE、生成對抗網(wǎng)絡(luò)GAN和U-Net等)都能夠被用作這類方法的backbone。
a. 基于AE / VAE的模型
除去這種結(jié)合AE/VAE和重構(gòu)誤差這種標準做法,其他方法使用了更加精細的策略,比如通過memorized normality重構(gòu),調(diào)整模型架構(gòu)、部分/有條件的重構(gòu)。
在半監(jiān)督設(shè)定下的異常檢測中,CoRA分別在ID樣本和OOD樣本上訓(xùn)練,得到兩個自編碼器。這兩個自編碼器的重構(gòu)誤差被用作異常檢測的指標。
b. 基于GAN的模型
GAN中的判別器本質(zhì)上是通過計算重構(gòu)誤差實現(xiàn)異常檢測。更進一步,GAN的變種,比如去噪聲的GAN和類別-條件GAN通過增加重構(gòu)難度獲得了更好的性能。有些方法利用重構(gòu)圖片在下游任務(wù)中的表現(xiàn)來進一步放大異常樣本的重構(gòu)誤差。集成也能夠優(yōu)化模型性能。
3.3 基于分類的方法
異常檢測、單類別的新類檢測通常被形式化為無監(jiān)督學習問題,將所有的ID樣本看做一類。
【283】做了完全有監(jiān)督的異常檢測
半監(jiān)督的異常檢測中,模型訓(xùn)練時用到了無標簽數(shù)據(jù)。
PU學習針對這個問題被提出
自監(jiān)督方法3.3.3
3.3.1 單類別分類
單個類別分類直接學到一個決策邊界
未完成
4. 開集識別 & 多類別新類檢測 方法
共性:ID樣本的類別(訓(xùn)練類別)為多個。
差異:開集識別還需要精確地給ID樣本分類,而新類檢測只需得到區(qū)分ID/OOD的二分類器。
由于開集識別和多類別新類檢測的訓(xùn)練類別為多個,大多數(shù)方法都是基于分類的。其余方法包括基于ID原型的以及基于重構(gòu)的。極少數(shù)模型是基于密度的。
4.1 基于分類的模型
4.1.1 基于極值理論的不確定性校準
4.1.2 極值理論無關(guān)的信心增強
為了解決
4.1.3 未知類別生成
4.1.4 標簽空間重設(shè)
開集識別和多類新類檢測都關(guān)注ID樣本包含多個類別的情形。分類問題中,一般采用獨熱編碼來編碼類別信息。然而,獨熱編碼忽略了類別間的內(nèi)在聯(lián)系。舉例來說,“狗”-“貓”,“狗”-“車”之間有相同的距離顯然不合情理。有些工作考慮這一點,嘗試利用新類的標簽空間上的信息來解決這個新類檢測問題。重分配大的語義空間,形成已知類別的層次化分類
基于標簽組織重設(shè),自上而下的分類策略和分組softmax訓(xùn)練被證實有效。應(yīng)一組工作使用詞向量嵌入來自動地構(gòu)建標簽空間?!?69】中稀疏獨熱標簽被幾組產(chǎn)生自不同NLP模型的稠密詞向量替代,形成了多個回歸頭來做魯棒的訓(xùn)練。
測試時,標簽(同所有不同頭給出的嵌入向量距離最小的標簽被作為預(yù)測結(jié)果輸出,
如果這個最小距離超出閾值,這個樣本被分類為“新”。近期工作進一步采用語言-圖片預(yù)訓(xùn)練模型輸出的特征來更好地檢測新類,圖片編碼空間中也包含來自標簽空間的豐富特征。)
4.2 基于距離的模型
基于距離的開集識別方法需要“原型”來實現(xiàn)class-conditional。維持ID樣本的分類性能。
基于類別的聚類和原型(prototyping)操作在分類器提取到的視覺特征上進行。
OOD樣本能夠通過計算樣本與聚類之間的距離而被識別。
有些方法還引入了對比學習來為已知類別學到更加緊密的聚類,從而拉遠ID和OOD樣本之間的距離。
CROSR【177】通過拼接分類器和用于距離計算的重構(gòu)模型給出的可視化嵌入來在拓展的特征空間中得到強化的特征。除了使用分類器給出的特征,GMVAE【178】使用重構(gòu)VAE來提取特征,將訓(xùn)練集的嵌入建模為一個多中心的混合高斯分布以便后續(xù)基于距離的操作。使用最近鄰的分類器也適用于開集識別問題。通過存儲訓(xùn)練樣本,最近鄰距離比值被用于在測試中識別未知樣本。
4.3 基于重構(gòu)的方法
基于重構(gòu)的方法希望ID和OOD樣本被重構(gòu)時表現(xiàn)不同。這種差異能夠在潛在特征空間或重構(gòu)圖片的像素空間中被捕捉到。
4.3.1 稀疏表示方法
通過將已知類別的圖片轉(zhuǎn)化為稀疏表示,開集樣本由于相對稠密能被識別出。用于稀疏編碼的技巧包括:疏密指數(shù)(sparsity concentration index)【180】和核虛空間方法(kernel null space method)【181,182】。
4.3.2 重構(gòu)誤差方法
通過固定在ID樣本訓(xùn)練得到的多分類視覺編碼器來維持在ID樣本上的分類性能,C2AE訓(xùn)練一個以表情按向量為條件的解碼器,使用極值理論估計重構(gòu)后的圖片來區(qū)分未知類別。后續(xù)的工作使用條件高斯分布,使得不同潛在特征逼近類內(nèi)(class-wise)高斯模型,以達到在分類已知類別樣本的同時能拒絕未知類別樣本。其他方法生成反事實(counterfactual)圖片來幫助模型更關(guān)注語義。對抗防御【186】也以這種思路去增強模型魯棒性。
5 OOD檢測 方法
5.1 基于分類的方法
5.1.1 基于輸出的方法
a. 后處理檢測
后處理檢測的方法優(yōu)點在于無需修改訓(xùn)練程序和目標就可以輕易應(yīng)用。這一點對現(xiàn)實生產(chǎn)環(huán)境中的OOD檢測方法很重要。早期的ODIN是一個使用temperature scaling和輸入擾動來放大ID/OOD差別的后處理方法。該方法中,一個足夠大的temperature有很強的平滑作用,能夠?qū)oftmax值轉(zhuǎn)換到logit空間(),從而有效區(qū)分ID和OOD樣本。注意這種方式與信心校準不同,它采用了更溫和的T
而校準更關(guān)注表達ID樣本真實的正確概率
ODIN的評分最大化了ID和OOD樣本之間的差異,可能從預(yù)測信心的角度看不再有意義。
基于這個見解,近期【189】提出使用能量分值來做OOD檢測,該方法不需要超參數(shù)并且性能與ODIN相當甚至更好。能量函數(shù)將logit輸出通過便捷的logsumexp運算符映射為標量。能量值相對低的測試樣本被認為是ID的,反之為OOD。
【55】進一步提出了聯(lián)合能量值(JointEnergy score)
b. 確信強化方法
為OOD檢測定制的基于信心的方法能夠通過設(shè)計信心估計分支和類別數(shù)據(jù)增強(結(jié)合leaving-out留一策略、對抗訓(xùn)練、更強的數(shù)據(jù)增強、不確定性建模、利用理想深度的特征)來實現(xiàn)。
特別地,為了增強對協(xié)變量偏移的敏感性,一些方法關(guān)注神經(jīng)網(wǎng)絡(luò)中間層的隱藏表示。泛化的ODIN通過使用DeConf-C作為訓(xùn)練目標來擴展ODIN,選擇ID數(shù)據(jù)上的擾動尺度作為超參。
由于ODIN需要模型訓(xùn)練過程,它未被歸類到后處理方法。
為了得到質(zhì)量更優(yōu)的隱藏層特征以便進行密度估計,分層的 Mahalanobis距離、 Gram Matrix等技巧被引入。
c. 離群點暴露
OOD檢測的另一分支利用收集到的OOD樣本集(離群樣本集),在訓(xùn)練中幫助模型學到ID和OOD的差異。
總的來說,采用離群點暴露的OOD檢測能達到明顯更優(yōu)的性能。然而,其性能受給定OOD樣本和真實OOD樣本間相關(guān)性強弱影響明顯,如何將OOD由已經(jīng)暴露的OOD泛化到更廣泛的OOD還需進一步探索。
5.1.2 分布外數(shù)據(jù)生成
離群點暴露方法依賴于OOD訓(xùn)練數(shù)據(jù)可獲取這一強假設(shè),該條件在實際可能不成立。在OOD數(shù)據(jù)不可獲取時,一些方法嘗試去合成OOD樣本從而讓ID和OOD可區(qū)分?,F(xiàn)有工作利用GAN來生成OOD訓(xùn)練樣本并使模型輸出均勻(uniform 正態(tài)???)的預(yù)測,從而在低密度區(qū)域生成邊界樣本,或者類似地,生成高置信度的OOD樣本。
5.1.3 基于梯度的方法
現(xiàn)有的OOD檢測方法主要依賴輸出或特征空間來給出OOD評分,而忽視了梯度空間的信息。ODIN【188】首次探索了使用梯度信息檢測OOD。ODIN使用經(jīng)過預(yù)處理的輸入,其預(yù)處理為施加由輸入梯度得來的細微擾動。ODIN擾動的目標在于增強模型對預(yù)測標簽的信心從而增加任何給定輸入的softmax值。最終,可以找到能使ID和OOD輸入的softmax評分差異更大的擾動,從而使得它們更能被區(qū)分,使得OOD檢測性能更好。ODIN僅隱式地通過擾動來利用梯度。GradNorm則使用梯度向量的范數(shù),從softmax輸出和正態(tài)概率分布的KL散度反向傳播。
5.1.4 貝葉斯模型
貝葉斯模型是一類統(tǒng)計模型,應(yīng)用貝葉斯法則來推測模型中所有的不確定性。其中,最有代表性的是貝葉斯神經(jīng)網(wǎng)絡(luò),該方法通過馬爾可夫鏈蒙特卡洛方法、拉普拉斯方法、變分推斷來構(gòu)成模型的認知不確定性,從模型的后驗分布中采樣。它們最明顯的缺陷在于預(yù)測不精確,計算代價高使得它們難以用于實際。近期工作嘗試了幾種less principled(理論性較弱??)的近似,包括 MC-dropout [224] 和深度融合 [225],299] 用于更快、更好地估計不確定性。這些方法在OOD不確定性估計上不太有競爭力。更進一步的探索需要在保留貝葉斯原理的優(yōu)勢的同時,采用自然梯度變分推理,從而能夠采用實用且可負擔的現(xiàn)代深度學習訓(xùn)練。狄利克雷先驗網(wǎng)絡(luò)Dirichlet Prior Network (DPN) 也在OOD檢測中被運用,使用對模型不確定性、數(shù)據(jù)不確定性以及分布不確定性三個不同來源的不確定性進行不確定性建模,出現(xiàn)了一系列工作 [227], [228], [229]。
5.1.5 大規(guī)模OOD檢測
近期工作推進了更貼近實際應(yīng)用的大規(guī)模OOD檢測。研究的兩個方向是:將OOD檢測擴展到大的語義空間、利用大型的預(yù)訓(xùn)練模型。例如,【168】指出,在基于CIFAR benchmark數(shù)據(jù)得到的方法在語義空間更大的benchmark ImageNet上并不奏效,這強調(diào)了在大型真實設(shè)定下評估OOD檢測的必要性。為解決上述挑戰(zhàn),MOS的關(guān)鍵理念是將大的語義空間解構(gòu)為有相似概念的更小的群組,這簡化了已知和未知數(shù)據(jù)之間的決策邊界。強有力的預(yù)訓(xùn)練模型在各種任務(wù)、模態(tài)都達到了驚人的性能。同期的工作 [171], [230], [231] 證實預(yù)訓(xùn)練過的transformer在特定的困難的OOD任務(wù)上性能顯著改善。
5.2 基于密度的方法
OOD檢測領(lǐng)域中,基于密度的方法用一些概率模型顯式地建模分布內(nèi)數(shù)據(jù),并將低密度區(qū)域的測試數(shù)據(jù)標記為OOD。即使OOD檢測在分布內(nèi)數(shù)據(jù)為多類別的情形下和異常檢測不同,3.1.2節(jié)中的密度估計方法能夠通過將分布內(nèi)數(shù)據(jù)統(tǒng)一成一個整體而直接適用于OOD檢測。當分布內(nèi)含多個類別時,class-conditional高斯分布能夠顯式地建模分布內(nèi)數(shù)據(jù),因而分布外樣本能夠根據(jù)輸出的預(yù)測概率而被識別【207】。基于流的方法 [92], [232], [233], [234]也可被用于概率建模。直接估計OOD概率似乎是一種自然的解決方法,也有一些方法 [235], [236], [237] 通過給OOD樣本輸出更高的概率預(yù)測值來實現(xiàn)OOD檢測?!?38】嘗試使用likelihood ratio來解決這個問題。【239】發(fā)現(xiàn),對輸入復(fù)雜度,概率值存在明顯偏差,提出了一種基于概率值比例的方法來削減輸入復(fù)雜度的影響。近期的方法轉(zhuǎn)而使用新的評分,例如likelihood regret【240】或是集成多個密度模型【236】。整體上,生成式模型的訓(xùn)練和優(yōu)化難度幾乎是不可接受的,它們的性能也往往落后于基于分類的方法(3.3)
5.3 基于距離的方法
基于距離的方法基本理念在于,測試中OOD樣本應(yīng)當相對遠離分布內(nèi)類別的中心(centroid)或原型(prototype)。【207】使用相對所有類別中心的最小Mahalanobis距離來檢測。一個后續(xù)工作【241】將圖片分為前景和背景,再計算這兩個空間間的Mahalanobis距離比例。一些工作使用測試樣本特征和類別特征間的余弦相似度來確定OOD樣本【242】、【243】。被訓(xùn)練特征的的第一奇異向量一維的子空間
更進一步,其他工作利用了徑向基函數(shù)核距離(distance with radial basis function kernel)、輸入的嵌入向量到類別中心的歐拉距離。
5.4 探討
OOD檢測領(lǐng)域自出現(xiàn)以來發(fā)展迅速,其解決方案從基于分類的、基于密度的、再到基于距離的。在多類別設(shè)定下,典型的OOD檢測是開集識別問題(第4節(jié)),在類別空間Y中精確分類分布內(nèi)的測試樣本,并且丟棄語義不被Y所支持的分布外樣本。然而,OOD檢測包含了更廣泛的學習任務(wù)(比如,多標簽分類)和解法(比如,密度估計和離群點暴露)。一些方法放寬了開集檢測的限制條件,并且達到了更強的性能。
6 離群檢測:方法
離群檢測需要所有樣本可見,其目標是檢測出那些顯著偏離大多數(shù)的分布的樣本。離群檢測方法通常是轉(zhuǎn)導(dǎo)式的,而不是歸納式的。 [13], [14], [15], [16]綜述主要回顧了數(shù)據(jù)挖掘領(lǐng)域的離群檢測方法。以下主要回顧離群檢測方法,尤其是為計算機視覺設(shè)計的使用深度神經(jīng)網(wǎng)絡(luò)的方法。即使深度學習方法極少能直接解決離群檢測問題,數(shù)據(jù)清洗程序(從開集臟數(shù)據(jù)學習的先決條件)和開集半監(jiān)督學習的方法也在解決離群檢測問題。
6.1 基于密度的方法
離群檢測模型的基本理念是將整個數(shù)據(jù)集建模為一個高斯分布,將偏離均值超過三杯標準差的樣本標記為離群【300】【301】。其他帶參數(shù)的概率方法利用Mahalanobis距離[266] 和高斯混合模型 [302]來建模數(shù)據(jù)密度。和“三倍標準偏離”規(guī)則類似,四分位距也可通過構(gòu)建傳統(tǒng)的無參數(shù)概率模型來檢測離群樣本【247】。為了魯棒和簡化,局部離群因子(local outlier factor)方法【248】借助給定點的鄰居和它自身局部可達性的比值,去估計給定點的密度。RANSAC【252】迭代地估計數(shù)學模型的參數(shù)來擬合數(shù)據(jù)并且找到對估計貢獻較少的樣本作為離群點。
總體上,經(jīng)典的異常檢測的密度方法比如,核密度估計(3.1節(jié)),也可應(yīng)用于離群檢測。即便這些方法由于圖片數(shù)據(jù)維度太高而應(yīng)用困難,也可以通過降維方法【253,254】和基于最近鄰的密度方法(3.1節(jié))來緩解。
6.2 基于距離的方法
檢測離群的一個簡易方法是計數(shù)某特定半徑內(nèi)的鄰居數(shù)量,或者度量第k近鄰居的距離【303,304】。以下主要介紹基于聚類的方法和基于圖的方法。
6.2.1 基于聚類的方法
DBSCAN【255】依照基于距離的密度來積聚樣本構(gòu)成聚類。處在主要聚類之外的樣本被識別為離群樣本。后續(xù)工作通過考慮聚類標簽的信心改良了聚類的方式【256】。
6.2.2 基于圖的方法
另一類方法利用數(shù)據(jù)點之間的關(guān)系,并構(gòu)造鄰域圖[305], [306](或其變體[307]),利用圖的屬性和圖挖掘技巧來找到異常的樣本【257,258】,比如圖聚類[259], [260]、圖分割【308】、使用圖神經(jīng)網(wǎng)絡(luò)的標簽傳播【261】。