logo
Loading...

【QA】什麼是深度信念網絡(Deep Belief Network, DBN)?? - Cupoy

本次想要與各位介紹一個深度學習中的經典模型-深度信念網絡

【QA】什麼是深度信念網絡(Deep Belief Network, DBN)??

2021/10/10 下午 11:21
機器學習共學討論版
Ray
觀看數:571
回答數:1
收藏數:2

本次想要與各位介紹一個深度學習中的經典模型-深度信念網絡

回答列表

  • 2021/10/10 下午 11:22
    Ray
    贊同數:0
    不贊同數:0
    留言數:0

    深度信念網路(Deep Belief Network, 簡稱DBN)相較於CNN、RNN等算是比較少被使用到的深度學習模型,但在整個深度學習的發展史中,該模型具有一個里程碑的價值。 深度信念網絡是在2006年由Geoffrey Hinton提出,DBN是一種經典的深度生成式模型,同時Geoffrey Hinton在該模型中使用的學習演算法,如今也成了深度學習算法的主要框架,在該算法中DBN模型由數個RBM堆疊而成,訓練過程由淺到深逐層進行訓練,如下圖所示: ![014835_5tsv_876354.png](http://kwassistfile.cupoy.com/0000017C6AC466860000000A6375706F795F72656C656173655155455354/1632821348382/large)[參考圖片來源](https://my.oschina.net/u/876354/blog/1626639) DBN整體又可看作是由多層神經元構成,這些神經元又分為顯性神經元和隱性神經元(以下簡稱顯元和隱元)。顯元用於接受輸入,隱元用於提取特徵。因此隱元也有個別名,叫特徵檢測器 (feature detectors)。也就是說,通過RBM訓練之後,可以得到輸入數據的特徵。 另外,RBM還可通過學習將數據表示成概率模型,一旦模型通過無監督學習被訓練或收斂到一個穩定的狀態,它還可以被用於生成新數據。 基於上述特點,使得DBN逐層進行訓練變得有效,通過隱藏層提取特徵使後面層次的訓練數據更加有代表性,通過可生成新數據能解決樣本量不足的問題。DBN逐層訓練的過程如下: 1. 最底部RBM以原始輸入數據進行訓練 2. 將底部RBM抽取的特徵作為頂部RBM的輸入繼續訓練 3. 重複這個過程訓練以盡可能多的RBM層 ![DBN_training.png](http://kwassistfile.cupoy.com/0000017C6AC466860000000A6375706F795F72656C656173655155455354/1632821348383/large)[參考圖片來源](https://snowkylin.github.io/blogs/DBN.html) 由於RBM可通過對比散度(Contrastive Divergence,簡稱CD)算法快速訓練,於是這個框架繞過直接從整體上對DBN高度複雜的訓練,而是將DBN的訓練簡化為對多個RBM的訓練,從而簡化問題。而且通過這種方式訓練後,可以再通過傳統的全局學習算法(如反向傳播演算法)對網絡整體進行微調,從而使模型收斂到局部最佳點,通過這種方式可高效訓練出一個深層網絡出來,如下圖所示: ![014925_aSfo_876354.png](http://kwassistfile.cupoy.com/0000017C6AC466860000000A6375706F795F72656C656173655155455354/1632821348384/large)[參考圖片來源](https://my.oschina.net/u/876354/blog/1626639) 因為這種預訓練過程是一種無監督的逐層預訓練的通用技術,因此不只RBM可以堆疊成一個深度網絡,其它類型的網絡也可以使用相同的方法來生成網絡。 ---------------------- 有興趣進一步了解的人可參考以下連結: * [Deep Belief Networks (DBNs)](https://snowkylin.github.io/blogs/DBN.html) * [大话深度信念网络(DBN)](https://my.oschina.net/u/876354/blog/1626639) * [A Fast Learning Algorithm for Deep Belief Nets Geoffrey E. Hinton](http://www.cs.toronto.edu/~fritz/absps/ncfast.pdf) * [DBN算法介绍](https://zhuanlan.zhihu.com/p/31109631) * [Greedy Layer-Wise Training of Deep Networks](https://proceedings.neurips.cc/paper/2006/file/5da713a690c067105aeb2fae32403405-Paper.pdf) * [Day 37 — Deep Belief Nets (DBN)](https://medium.com/@falconives/day-37-deep-belief-nets-dbn-715e9cd38ea7)