CS229 6.15 Neurons Networks Deep Belief Networks
阿新 • • 發佈:2018-11-27
Hintion老爺子在06年的science上的論文裡闡述了 RBMs 可以堆疊起來並且通過逐層貪婪的方式來訓練,這種網路被稱作Deep Belife Networks(DBN),DBN是一種可以學習訓練資料的高層特徵表示的網路,DBN是一種生成模型,可見變數 與 個隱層的聯合分佈:
這裡 x = h0,為RBM在第 k 層的隱層單元條件下的可見單元的條件分佈, 是一個DBN頂部可見層與隱層的條件分佈,如圖下:
DBN的訓練:
1. 首先充分訓練第一個 RBM; 2. 固定第一個 RBM 的權重和偏移量,然後使用其隱性神經元的狀態,作為第二個 RBM 的輸入向量; 3. 充分訓練第二個 RBM 後,將第二個 RBM 堆疊在第一個 RBM 的上方; 4. 重複以上三個步驟任意多次; 5. 如果訓練集中的資料有標籤,那麼在頂層的 RBM 訓練時,這個 RBM 的顯層中除了顯性神經元,還需要有代表分類標籤的神經元,一起進行訓練: a) 假設頂層 RBM 的顯層有 500 個顯性神經元,訓練資料的分類一共分成了 10 類; b) 那麼頂層 RBM 的顯層有 510 個顯性神經元,對每一訓練訓練資料,相應的標籤神經元被開啟設為 1,而其他的則被關閉設為 0。 6. 對於一個4層的DBN 被訓練好後如下圖:( 圖中的綠色部分就是在最頂層 RBM 中參與訓練的標籤 )