學習筆記11 深度信念網路(DBN)

2021-08-19 19:20:04 字數 1195 閱讀 5782

在了解rbm的基礎上,介紹深度信念網路。

dbn 是由多層 rbm 組成的乙個神經網路,它既可以被看作乙個生成模型,也可以當作判別模型,其訓練過程是:使用非監督貪婪逐層方法去預訓練獲得權值。 

訓練過程: 1. 首先充分訓練第乙個 rbm; 

2. 固定第乙個 rbm 的權重和偏移量,然後使用其隱性神經元的狀態,作為第二個 rbm 的輸入向量; 

3. 充分訓練第二個 rbm 後,將第二個 rbm 堆疊在第乙個 rbm 的上方; 

4. 重複以上三個步驟任意多次; 

5. 如果訓練集中的資料有標籤,那麼在頂層的 rbm 訓練時,這個 rbm 的顯層中除了顯性神經元,還需要有代表分類標籤的神經元,一起進行訓練: 

a) 假設頂層 rbm 的顯層有 500 個顯性神經元,訓練資料的分類一共分成了 10 類; 

b) 那麼頂層 rbm 的顯層有 510 個顯性神經元,對每一訓練訓練資料,相應的標籤神經元被開啟設為 1,而其他的則被關閉設為 0。 

6. dbn 被訓練好後如下圖: (示意) 

訓練好的深度信念網路。圖中的綠色部分就是在最頂層 rbm 中參與訓練的

標籤。注意調優 (fine-tuning) 過程是乙個判別模型 

調優過程 (fine-tuning) : 

生成模型使用 contrastive wake-sleep 演算法進行調優,其演算法過程是: 

1. 除了頂層 rbm,其他層 rbm 的權重被分成向上的認知權重和向下的生成

權重; 

2. wake 階段:認知過程,通過外界的特徵和向上的權重 (認知權重) 產生每

一層的抽象表示 (結點狀態) ,並且使用梯度下降修改層間的下行權重 (生

成權重) 。也就是「如果現實跟我想象的不一樣,改變我的權重使得我想

象的東西就是這樣的」。 

3. sleep 階段:生成過程,通過頂層表示 (醒時學得的概念) 和向下權重,生

成底層的狀態,同時修改層間向上的權重。也就是「如果夢中的景象不是

我腦中的相應概念,改變我的認知權重使得這種景象在我看來就是這個概

念」。 

使用過程 :

1. 使用隨機隱性神經元狀態值,在頂層 rbm 中進行足夠多次的吉布斯抽

樣; 2. 向下傳播,得到每層的狀態。 

深度信念網路(DBN)

自聯想神經網路是很古老的神經網路模型,簡單的說,它就是三層bp網路,只不過它的輸出等於輸入。很多時候我們並不要求輸出精確的等於輸入,而是允許一定的誤差存在。所以,我們說,輸出是對輸入的一種重構。其網路結構可以很簡單的表示如下 如果我們在上述網路中不使用sigmoid函式,而使用線性函式,這就是pca...

深度信念網路 Learning

1.什麼是深度信念神經網路?答 深度信念神經網路,即 deep belief network,是近年比較火的一種網路結構,在遙感分類中應用較多。深度信念神經網路是在深度神經網路結構的基礎上的一種更新改進。這樣講應該是不準確的,但對於初學者來說比較容易理解 2.什麼是深度神經網路?答 首次接觸,可以聯...

自聯想神經網路 深度信念網路

自聯想神經網路 auto associative neural network 縮寫為aann 是1987年ballard提出的,其網路原型是一種具有對稱拓撲結構的五層前饋傳遞網路,aann 應用到資料檢驗問題時具有比較明顯的物理意義。是bp神經網路的一種特殊情形。其特點是有對稱拓撲結構,即輸出量等...