深度學習--深度信念網絡(Deep Belief Network)_第1頁
深度學習--深度信念網絡(Deep Belief Network)_第2頁
深度學習--深度信念網絡(Deep Belief Network)_第3頁
深度學習--深度信念網絡(Deep Belief Network)_第4頁
深度學習--深度信念網絡(Deep Belief Network)_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、深度學習-深度信念網絡(Deep Belief Network)概述 深度信念網絡 (Deep Belief Network, DBN) 由 Geoffrey Hinton 在 2006 年提出。它是一種生成模型,通過訓練其神經元間的權重,我們可以讓整個神經網絡按照最大概率來生成訓練數據。我們不僅可以使用 DBN 識別特征、分類數據,還可以用它來生成數據。下面的圖片展示的是用 DBN 識別手寫數字: 圖 1 用深度信念網絡識別手寫數字。圖中右下角是待識別數字的黑白位圖,它的上方有三層隱性神經元。每一個黑色矩形代表一層神經元,白點代表處于開啟狀態(tài)的神經元,黑色代表處于關閉狀態(tài)

2、的神經元。注意頂層神經元的左下方即使別結果,與畫面左上角的對應表比對,得知這個 DBN 正確地識別了該數字。下面是展示了一個學習了大量英文維基百科文章的 DBN 所生成的自然語言段落: In 1974 Northern Denver had been overshadowed by CNL, and several Irish intelligence agencies in the Mediterranean region. However, on the Victoria, Kings Hebrew stated that Charles decided to

3、 escape during an alliance. The mansion house was completed in 1882, the second in its bridge are omitted, while closing is the proton reticulum composed below it aims, such that it is the blurring of appearing on any well-paid type of box printer.  DBN 由多層神經元構成,這些神經元又分

4、為顯性神經元和隱性神經元(以下簡稱顯元和隱元)。顯元用于接受輸入,隱元用于提取特征。因此隱元也有個別名,叫特征檢測器 (feature detectors)。最頂上的兩層間的連接是無向的,組成聯(lián)合內存 (associative memory)。較低的其他層之間有連接上下的有向連接。最底層代表了數據向量 (data vectors),每一個神經元代表數據向量的一維。 DBN 的組成元件是受限玻爾茲曼機 (Restricted Boltzmann Machines, RBM)。訓練 DBN 的過程是一層一層地進行的。在每一層中,用數據向量

5、來推斷隱層,再把這一隱層當作下一層 (高一層) 的數據向量。 受限玻爾茲曼機 如前所述,RBM 是 DBN 的組成元件。事實上,每一個 RBM 都可以單獨用作聚類器。 RBM 只有兩層神經元,一層叫做顯層 (visible layer),由顯元 (visible units) 組成,用于輸入訓練數據。另一層叫做隱層 (Hidden layer),相應地,由隱元 (hidden units) 組成,用作特征檢測器 (feature detectors)。  圖 2 受限玻爾茲曼機的結構。

6、圖中的較上一層神經元組成隱層,較下的神經元組成顯元。每一層都可以用一個向量來表示,每一維表示每個神經元。注意這兩層間的對稱 (雙向) 連接。 神經元之間的條件獨立性 應注意到,顯層和隱層內部的神經元都沒有互連,只有層間的神經元有對稱的連接線。這樣的好處是,在給定所有顯元的值的情況下,每一個隱元取什么值是互不相關的。也就是說,  同樣,在給定隱層時,所有顯元的取值也互不相關: 有了這個重要性質,我們在計算每個神經元的取值情況時就不必每次計算一個,而是同時并行地計算整層神經元。 使用 RBM 的過程 假設我們現在已經得到一個訓練

7、好的 RBM,每個隱元與顯元間的權重用矩陣W表示,且: 其中Wij代表從第i個顯元到第j個隱元的權重,M代表顯元的個數,N代表隱元的個數。那么,當我們把一條新來的數據附給 (clamp to) 顯層后,RBM 將會依照權值W來決定開啟或關閉隱元。具體的操作如下: 首先,將每個隱元的激勵值 (activation) 計算出來:  注意,這里用到了前面提到的神經元之間的條件獨立性。 然后,將每個隱元的激勵值都用 S 形函數進行標準化,變成它們處于開啟狀 (用 1 表示) 的概率值:  此處的 S 形函數我們采

8、用的是 Logistic 函數: 至此,每個隱元hj開啟的概率被計算出來了。其處于關閉狀態(tài) (用 0 表示) 的概率自然也就是 那么到底這個元開啟還是關閉,我們需要將開啟的概率與一個從 0, 1 均勻分布中抽取的隨機值  進行如下比較 然后開啟或關閉相應的隱元。給定隱層,計算顯層的方法是一樣的。 訓練 RBM RBM 的訓練過程,實際上是求出一個最能產生訓練樣本的概率分布。也就是說,要求一個分布,在這個分布里,訓練樣本的概率最大。由于這個分布的決定性因素在于權值W ,所以我們訓練 RBM 的目標就是尋找最佳的權值。為了保持讀

9、者的興趣,這里我們不給出最大化對數似然函數的推導過程,直接說明如何訓練 RBM。 G. Hinton 提出了名為對比散度 (Contrastive Divergence) 的學習算法。下面我們來詳述它的具體過程。 我們沿用前文的符號記法。 算法1. 對比散度 對于訓練集中的每一條記錄如此訓練之后的 RBM 就能較為準確地提取顯層的特征,或者根據隱層所代表的特征還原顯層了。 深度信念網絡 前文我們已經介紹了 RBM 的基本結構和其訓練、使用過程,接下來我們介紹DBN 的相關內容。DBN 是由多層 RBM 組成的一個神經網絡,它既可以被看

10、作一個生成模型,也可以當作判別模型,其訓練過程是:使用非監(jiān)督貪婪逐層方法去預訓練獲得權值。 訓練過程: 1. 首先充分訓練第一個 RBM; 2. 固定第一個 RBM 的權重和偏移量,然后使用其隱性神經元的狀態(tài),作為第二個 RBM 的輸入向量; 3. 充分訓練第二個 RBM 后,將第二個 RBM 堆疊在第一個 RBM 的上方; 4. 重復以上三個步驟任意多次; 5. 如果訓練集中的數據有標簽,那么在頂層的 RBM 訓練時,這個 RBM 的顯層中除了顯性神經元,還需要有代表分類標簽的神經元,一起進行訓練: a) 假設頂層 RBM

11、 的顯層有 500 個顯性神經元,訓練數據的分類一共分成了 10 類; b) 那么頂層 RBM 的顯層有 510 個顯性神經元,對每一訓練訓練數據,相應的標簽神經元被打開設為 1,而其他的則被關閉設為 0。 6. DBN 被訓練好后如下圖: (示意)  圖 3 訓練好的深度信念網絡。圖中的綠色部分就是在最頂層 RBM 中參與訓練的標簽。注意調優(yōu) (FINE-TUNING) 過程是一個判別模型  另:調優(yōu)過程 (Fine-Tuning) : 生成模型使用 Contrastive Wake-Sleep 算法進行調優(yōu),其算法過程是: 1. 除了頂層 RBM,其他層 RBM 的權重被分成向上的認知權重和向下的生成權重; 2. Wake 階段:認知過程,通過外界的特征和向上的權重 (認知權重) 產生每一層的抽象表示 (結點狀態(tài)) ,并且使用梯度下降修改層間的下行權重 (生成權重) 。也就是“如果現實跟我想象的不一樣,改變我的權重使得我想象的東西就是這樣的”。 3.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論