貝葉斯深度學習-概述


一、背景

1.1 深度神經網絡

深度神經網絡是連接主義系統,通過它通過學習例子來完成任務,而不需要事先了解這些任務。它們可以很容易地擴展到數百萬個數據點,並且可以通過隨機梯度下降進行優化。
CNN是DNN的變體,能夠適應各種非線性數據點。 起始層學習更簡單的特征,如邊和角, 后續層學習復雜的特征,如顏色,紋理等。此外,較高的神經元具有較大的感受野,構建在起始層上。然而,與多層感知器不同, 權重共享是卷積神經網絡背后的主要思想。

1.2 問題

CNN通過反向傳播,根據網絡權重計算損失梯度。而反向傳播的超參數包括學習速率,動量,權重衰減等。找到最佳值所需的時間與 數據大小成比例
然而對於使用反向傳播訓練的網絡,僅在網絡中實現權重的 點估計,從而導致對正確的類別、預測或行動做出過於自信的決定。(由於輸出層的softmax函數可以實現概率得分,它壓縮了一個類的輸出概率得分,並使另一個類的輸出概率得分最大化)。這樣的網絡能較好地擬合訓練數據,但不能預測新數據-即產生了對現有樣本的過度擬合。
目前主要通過正則化來消除過擬合,主要包括early stopping、權值衰減、L1- L2正則化,以及最流行和有效的dropout。但是, 當前神經網絡架構中缺少預測中的不確定性度量

二、概率機器學習和不確定性

機器學習訓練模型模型從觀察到的數據(訓練數據)中學習一些模式和假設,並對未觀察到的數據(測試數據)進行推斷。然而,由於輸入數據噪聲、感官噪聲、測量誤差、非最優超參數設置等諸多原因,該模型對預測具有 不確定性
 
從概率論的角度來看,用單點估計作為權重來建立任何分類都是不合理的,而且神經網絡無法正確評估訓練數據中的不確定性。機器學習中的概率模型指出,所有形式的不確定性不可能是一個真實的值,而更像是一個概率值,並使用概率論來回答一切問題。概率分布用於建模學習、不確定性和未觀測狀態。在觀察數據之前,先定義一個先驗概率分布,然后進行學習,一旦觀察到數據,該分布就轉換為后驗分布。

2.1 不確定性類型

網絡中的不確定性是 衡量模型對其預測確定程度的指標。在貝葉斯模型中,存在兩種主要的不確定性類型: 偶然不確定性(Aleatoric uncertainty)認知不確定性(Epistemic uncertainty)
 
偶然不確定性測量觀測中 固有的噪聲。這種不確定性存在於數據采集方法中,如傳感器噪聲或沿數據集均勻分布的運動噪聲。即使收集了更多的數據,也不能減少這種不確定性。
偶然不確定性可以進一步分為同方差不確定性(Task-dependant or Homoscedastic uncertainty)和異方差不確定性(Data-dependant or Heteroscedastic uncertainty)
· 異方差不確定性,取決於輸入數據,並預測為模型輸出。其中一些輸入可能具有比其他輸入更多的噪聲輸出。異方差的不確定性尤為重要,可以防止模型輸出非常自信的決策。
· 同方差不確定性,不取決於輸入數據。它不是模型輸出,而是一個 對所有輸入數據保持不變並且在不同任務之間變化的數量。因此,它可以被描述為任務相關的不確定性。
 
認知不確定性代表了模型本身造成的不確定性。給定更多數據可以減少這種不確定性,並且通常稱為 模型不確定性
圖中說明了語義分割中的偶然和認知不確定性之間的差異。 偶然不確定性捕獲對象邊界時,標簽是有噪聲的;而當模型不熟悉人行道時,以及相應的增加的認知不確定性,就導致了分割模型失敗的情況。

三、貝葉斯深度學習

3.1 介紹

貝葉斯方法可以用於學習神經網絡權重的概率分布。將神經網絡中的wi 和 b 由確定的值變成分布(distributions)。具體而言,為彌補反向傳播的不足,通過在模型參數或模型輸出上放置概率分布來估計。在權重上放置一個先驗分布,然后嘗試捕獲這些權重在給定數據的情況下變化多少來模擬認知不確定性。該方法不是訓練單個網絡,而是訓練網絡集合,其中每個網絡的權重來自共享的、已學習的概率分布。

3.2 使用和訓練

非貝葉斯網絡中,在各種超參數固定的情況下,我們訓練一個神經網絡想要的就是各個層之間的權重和偏置。
而對於貝葉斯深度學習,因為權重和偏置都是分布,所以如果想進行前向傳播進行參數估計,需要對參數進行 多次采樣。利用貝葉斯公式,求解w的后驗概率p(w|x,y)*。
 
*貝葉斯公式
p(z|x) 被稱為后驗概率(posterior),p(x,z) 被稱為聯合概率,p(x|z) 被稱為似然(likelihood),p(z) 被稱為先驗概率(prior),p(x) 被稱為 evidence。
如果再引入全概率公式 p(x)=∫p(x|z)p(z)dz
但實際操作中,由於網絡的復雜性(參數眾多,無法積分),直接求解w的后驗概率幾乎不可能,因為通常采用一下幾種方式估計參數
(1)Approximating the integral with MCMC
(2)Using black-box variational inference (with Edward)
(3)Using MC (Monte Carlo) dropout
第(1)種情況用 MCMC(Markov Chains Monte Carlo) 采樣去近似分母的積分。第(2)種直接用一個簡單點的分布 q 去近似后驗概率的分布 p,即不管分母怎么積分,直接最小化分布 q 和 p 之間的差異,如可以使用 KL散度計算。

3.3 貝葉斯深度學習優勢

(1)由於可以多次采樣,因此訓練得到的權重更加robust
(2)可以得到模型的不確定性估計,由非softmax生成的概率

四、變分推理 Variational Inference

變分推理是常用的求解w后驗分布的方式。一般的深度神經網絡,假設θ 是神經網絡的內部參數集,訓練目標是要找到一個最好的 θ* ,讓損失函數 Ln(θ) 最小。而在貝葉斯深度學習中,關心在數據D下模型參數θ 的分布。其中 α 是 ℝd 上的θ先驗分布(可以理解為從α 中可以抽樣得到 θ)。
實際中通常會使用簡單的變分分布(如高斯分布)對后驗進行建模,並嘗試使分布的參數盡可能接近真實的后驗。比如,一般用一個替代分布q(θ|φ)去逼近后驗分布p(θ|D), 如果無法知道α 的真正形式,我們就先造一個q(θ|φ)分布,使得變分自由能(variational free energy)最小:
求解過程是通過最小化Kullback-Leibler(KL散度)與真實后驗的分歧來完成的。這種方式采樣得到的權重w用於神經網絡的反向傳播以學習后驗分布。
但是在在貝葉斯神經網絡中用來近似后驗的變分方法在計算上會大大增加參數的數量,並且訓練結果和dropout方法類似。為了減少網絡的參數,采用模型修剪減少了深度神經網絡中各種連接矩陣中的稀疏問題,從而減少了模型中表值參數的數量。
 
· 相關研究
采用Backprop的Bayes構建貝葉斯神經網絡
用變分概率分布q_θ(w | D)接近難以處理的真實后驗概率分布p(w | D),前者包含高斯分布μ∈ℝ^ d和σ∈ℝ^ d的特性。表示為N(θ | μ,σ²),其中d是定義概率分布的參數總數。這些高斯變分后驗概率分布的形狀由它們的方差σ²確定,表示每個模型參數的不確定性估計。
 
參考:
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM