如果讓深度學(xué)習(xí)模型為錯誤的預(yù)測給出一個較高的不確定性,我們就能判斷一這個預(yù)測的可信程度。也就是說,模型知道自己不知道。
不確定性可以分為兩類:
- 數(shù)據(jù)的不確定性,也被稱為偶然(Aleatoric)不確定性,它描述的是數(shù)據(jù)中內(nèi)在的噪聲,即無法避免的誤差,這個現(xiàn)象不能通過增加采樣數(shù)據(jù)來削弱。因此解決這個問題的方法一般是提升數(shù)據(jù)采集時候的穩(wěn)定性,或者提升衡量指標(biāo)的精度以囊括各類客觀影響因素。
- 模型的不確定性:也被稱為認(rèn)知(Epistemic)不確定性。它指出,模型自身對輸入數(shù)據(jù)的估計可能因為訓(xùn)練不佳、訓(xùn)練數(shù)據(jù)不夠等原因而不準(zhǔn)確,與某一單獨的數(shù)據(jù)無關(guān)。因此,認(rèn)知不確定性測量的,是訓(xùn)練過程本身所估計的模型參數(shù)的不確定性。這種不確定性是可以通過有針對性的調(diào)整(增加訓(xùn)練數(shù)據(jù)等方式)來緩解甚至解決的。
在一些不確定性著作中,還提到了一種特殊的不確定性——分布不確定性,它是指當(dāng)輸入屬于與訓(xùn)練數(shù)據(jù)不同的分布時(OOD)模型預(yù)測的不確定性。在深度學(xué)習(xí)中,當(dāng)模型遇到的輸入與訓(xùn)練時的輸入有很大不同時,就會發(fā)生這種情況。分布不確定性可能屬于認(rèn)知不確定性。

深度學(xué)習(xí)網(wǎng)絡(luò)不確定性估計方法包括:
-
確定性方法。通過評估模型對不同輸入和擾動的魯棒性來估計不確定性。這些方法通常假設(shè)模型是確定性的,而不確定性可以根據(jù)模型對不同輸入的輸出的變化來估計。常見的確定性方法包括:
- 內(nèi)部方法: Prior Networks, Evidential Neural Networks, Gradient penalties
- 外部方法:Gradient Metrices, Additional Network for Uncertainty, Distance to Training Data
-
貝葉斯神經(jīng)網(wǎng)絡(luò)(BNNs)。BNN是一種深度學(xué)習(xí)模型,通過將模型的參數(shù)表示為隨機變量來明確地模擬不確定性,使得BNN可以通過量化給定輸入的可能輸出的分布來估計不確定性,而不僅僅是一個單一的點估計。
- 變分推理:變量推理的應(yīng)用, 隨機變量推理,歸一化流,蒙特卡洛dropout
- 采樣方法:隨機MCMC
- 拉普拉斯近似:對角線信息矩陣,克羅內(nèi)克因式分解,稀疏信息矩陣
-
集成方法。深度學(xué)習(xí)中不確定性估計的集成方法涉及使用多個模型進行預(yù)測,然后匯總預(yù)測結(jié)果來估計不確定性,其中個體預(yù)測的方差作為不確定性的度量。這可以通過組合多個模型的輸出,或通過訓(xùn)練一組模型來進行預(yù)測來完成。
- 訓(xùn)練策略:隨機初始化/數(shù)據(jù)打亂;Bagging/Boosting,單次訓(xùn)練運行
- 減少成員:模型修建,蒸餾
- 權(quán)重分享: Sub-Ensembles,Batch-Ensembles
-
測試時間數(shù)據(jù)增強。用不同的擾動增強測試數(shù)據(jù),評估模型在這些被擾動的數(shù)據(jù)的輸入。模型通過評估其預(yù)測對不同輸入的變化來估計自己的不確定性。
四種不確定性估計方[1]
單一確定性方法
對于確定性神經(jīng)網(wǎng)絡(luò),參數(shù)是確定性的,前向傳遞的每次重復(fù)都會產(chǎn)生相同的結(jié)果。一些方法通過構(gòu)建和訓(xùn)練模型來量化不確定性,可以稱之為內(nèi)部不確定性量化方法;另一些通過加入額外的部件來估計網(wǎng)絡(luò)預(yù)測的不確定,可以被稱為外部不確定性量化方法。
內(nèi)部不確定性量化方法
許多內(nèi)部不確定性量化方法遵循的理念是預(yù)測分布的參數(shù),而不是直接進行逐點最大后驗估計。通常,這類網(wǎng)絡(luò)的損失函數(shù)考慮了真實分布和預(yù)測分布之間的預(yù)期差異。輸出的分布可以被解釋為模型不確定性的量化,試圖模仿網(wǎng)絡(luò)參數(shù)的貝葉斯建模的行為。然后將預(yù)測作為預(yù)測分布的期望值給出。
對于分類任務(wù),輸出通常表示類別概率,是softmax 函數(shù)的結(jié)果。這些概率已經(jīng)可以解釋為對數(shù)據(jù)不確定性的預(yù)測。然而,人們廣泛討論的是,神經(jīng)網(wǎng)絡(luò)通常過于自信,softmax 輸出通常校準(zhǔn)不當(dāng),導(dǎo)致不確定性估計不準(zhǔn)確。結(jié)果表明,網(wǎng)絡(luò)使用ReLu 和 softmax 輸出的組合導(dǎo)致網(wǎng)絡(luò)隨著分布外樣本與訓(xùn)練集的距離增大而更加自信。[3] 描述并研究了這種現(xiàn)象。
其他的幾種分類方法遵循類似的想法,即考慮對數(shù)幅度,但使用 Dirichlet 分布。 Dirichlet 分布是分類分布的共軛先驗,因此可以解釋為分類分布上的分布。狄利克雷分布的密度定義為:

濃度值

Dirichlet 分布被用于多種方法,如 Dirichlet 先驗網(wǎng)絡(luò) 和 證據(jù)神經(jīng)網(wǎng)絡(luò)(Evidential Neural Networks)。這些網(wǎng)絡(luò)類型的輸出輸出狄利克雷分布的參數(shù),從中可以得出描述類別概率的分類分布。
先驗網(wǎng)絡(luò)以多任務(wù)方式進行訓(xùn)練,目標(biāo)是最小化分布內(nèi)數(shù)據(jù)預(yù)測與尖銳 Dirichlet 分布之間,以及平坦 Dirichlet 分布與非分布數(shù)據(jù)預(yù)測之間的預(yù)期 Kullback-Leibler (KL) 散度。除了可以更好地分離分布樣本和 OOD 樣本之外,這些方法還提高了正確預(yù)測和錯誤預(yù)測的置信度之間的分離。后續(xù)討論了對于數(shù)據(jù)不確定性高的情況,KL 散度的前向定義可能導(dǎo)致不希望的多模型目標(biāo)分布。為了避免這種情況,他們使用反向 KL-散度重新表述了損失。實驗表明在不確定性估計以及對抗魯棒性方面都有改進的結(jié)果。
證據(jù)神經(jīng)網(wǎng)絡(luò)也是優(yōu)化單個Dirichlet網(wǎng)絡(luò)的參數(shù)化。損失函數(shù)是通過使用主觀邏輯推導(dǎo)出來的,按照Dempster-Shafer理論將對數(shù)解釋為多項式意見(opinion)或信念(belief)。證據(jù)神經(jīng)網(wǎng)絡(luò)將證據(jù)總量與類別數(shù)量聯(lián)系起來,并從中得出一個不確定性的值。損失被公式化為基本損失的預(yù)期值,例如分類交叉熵,相對于由 logits 參數(shù)化的 Dirichlet 分布。此外,還添加了一個正則化項,鼓勵網(wǎng)絡(luò)不考慮同時為多個類提供證據(jù)的特征,例如一個圓圈代表 6 和 8。因此,網(wǎng)絡(luò)不區(qū)分?jǐn)?shù)據(jù)不確定性和模型不確定性,但要了解他們是否可以給出某種預(yù)測。
關(guān)于基于狄利克雷分布的方法可以看[4]。除了上述基于狄利克雷分布的方法外,還存在其他幾種內(nèi)部方法,比如使用 Radial Basis Function (RBF) 網(wǎng)絡(luò)。
外部不確定性量化方法
外部不確定性量化方法不會影響模型的預(yù)測,因為對不確定性的評估與基本的預(yù)測任務(wù)是分開的。此外,幾種外部方法可以同時應(yīng)用于已經(jīng)訓(xùn)練好的網(wǎng)絡(luò),而不會相互影響。Raghu等人[5]認(rèn)為,當(dāng)預(yù)測和不確定性量化這兩項任務(wù)都由一個單一的方法完成時,不確定性估計會受到實際預(yù)測任務(wù)的影響。因此,他們建議采用 "直接不確定度預(yù)測",并建議訓(xùn)練兩個神經(jīng)網(wǎng)絡(luò),一個用于實際預(yù)測任務(wù),另一個用于對第一個網(wǎng)絡(luò)的預(yù)測進行不確定度預(yù)測。類似地,Ramalho和Miranda[6]引入了一個額外的神經(jīng)網(wǎng)絡(luò)用于不確定性的估計。但與[5]不同的是,考慮了訓(xùn)練數(shù)據(jù)的表示空間,并對給定測試樣本周圍的密度進行了評估。額外的神經(jīng)網(wǎng)絡(luò)使用該訓(xùn)練數(shù)據(jù)密度,以預(yù)測主網(wǎng)絡(luò)的估計是正確還是錯誤。Hsu等人[7]除了 softmax 輸出給出的分類分布之外,還通過預(yù)測每個類的總概率來檢測測試時分類任務(wù)中的分布外樣本。類的總概率是通過對網(wǎng)絡(luò)的對數(shù)應(yīng)用sigmoid函數(shù)預(yù)測的。根據(jù)這些總概率,OOD的樣本被識別為有較低概率的所有類別。
單一確定性方法在訓(xùn)練和評估上的效率都很高,只需要一次或者兩次前向計算就可以得到不確定性估計。缺點是它們依賴于單一觀點,因此可能對底層網(wǎng)絡(luò)架構(gòu)、訓(xùn)練過程和訓(xùn)練數(shù)據(jù)非常敏感。
(剩下方法太多了以后再看)
[1] Gawlikowski J, Tassi C R N, Ali M, et al. A survey of uncertainty in deep neural networks[J]. arXiv preprint arXiv:2107.03342, 2021.
[2] Zou K, Chen Z, Yuan X, et al. A Review of Uncertainty Estimation and its Application in Medical Imaging[J]. arXiv preprint arXiv:2302.08119, 2023.
[3] M. Hein, M. Andriushchenko, and J. Bitterwolf, “Why relu networks yield high-confidence predictions far away from the training data and how to mitigate the problem,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2019, pp. 41–50.
[4] A Survey on Dirichlet Neural Networks - Charles Corbière’s page (chcorbi.github.io)
[5] M. Raghu, K. Blumer, R. Sayres, Z. Obermeyer, B. Kleinberg, S. Mullainathan, and J. Kleinberg, “Direct uncertainty prediction for medical second opinions,” in International Conference on Machine Learning. PMLR, 2019, pp. 5281–5290
[6] T. Ramalho and M. Miranda, “Density estimation in representation space to predict model uncertainty,” in Engineering Dependable and Secure Machine Learning Systems: Third International Workshop, EDSMLS 2020, New York City, NY, USA, February 7, 2020, Revised Selected Papers, vol. 1272. Springer Nature, 2020, p. 84
[7] Y.-C. Hsu, Y. Shen, H. Jin, and Z. Kira, “Generalized odin: Detecting out-of-distribution image without learning from out-of-distribution data,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2020, pp. 10 951–10 960.
