神經網路中Belief Net和標準的神經網路有什麼區別?

時間 2021-06-01 15:00:45

1樓:金天

這個已經深埋地下的問題今天在下挖出來回答一番, 拂去歲月的塵埃這個問題還是值得一答, 也值得大家一讚.

我的思考

1. DBN本質是RBM一層層的堆疊, 那麼問題在於RBM與標準傳統簡單的神經網路有毛線區別呢?

我們知道RBM可見層與隱藏層之間是全連線的, 而hidden和hidden之間是沒有連線的, 這個結構和傳統的神經網路沒有絲毫差別. 而且所謂的RBM隱藏層可以用來提取特徵同樣適用於神經網路, 那麼到底有何不同.

不同就不同在RBM和NN基於的模型不同, 咋一說大家可能覺得我裝逼, 直覺告訴我, 我好想真的在裝逼, 低調一點的講, RBM是基於能量模型的, RBM和普通的神經網路雖然結構相同甚至引數表達都有點類似, 但是訓練過程卻完全不同.

RBM經過各種概率公式推導最終都需要利用梯度下降法來求取引數, 使整個系統能量最低從而傳說中的loss最低, 這個loss的定義與神經網路的簡單粗暴的差的平方不同, 你無法簡單的理解它, 暫且認為, 這個loss 的目的是通過能量模型來讓我們獲得隱藏層固定節點取某個值的概率, 我們要使得這個概率最大化, 這樣我們就能從資料中獲取到某種自然的分布, 這才是機器學習的核心, 也是RBM和神經網路共同的地方.

2. RBM訓練與普通神經網路的不同

普通神經網路是通過梯度下降來更新權值使得輸入與真實值不斷的接近從而達到學習的目的,而RBM則要複雜的多, 它需要根據Gibbs取樣, 從原始輸入的真實資料中獲取一種分布, 確切的講Gibbs取樣仍然計算量繁重, 對比散度才是真正採用的方法, 對比散度需要從可見層v(0)->h(0),然後h(0)->v(1), 再然後v(1)->h(1), h(1)->v(2),你可能不知道這是什麼意思,反正記在心裡, RBM就是這樣一步步來確定兩層可見曾與隱藏層每個節點的引數值得,或者說取0或者1的概率, 最終RBM將描繪乙個圖景, 也就是真實資料在大自然中的分布, 本來面目是什麼, 這樣我們通過RBM的堆疊就能不斷的抽取出更加自然真實的特徵, 更進一步RBM提取的這些特徵甚至可以引用到其他分類或者回歸演算法中, 簡單的說就是代替源資料.

2樓:

大概DBN是用Layer-wise RBM pretrain的Neural Network吧。

一般來說,activation function有很多選擇,Sigmoid, Tanh, 已及吊的一比的RELU。

卷積神經網路和BP神經網路的關係?

乙個維度的BP神經網路就相當於CNN中的全連線了,無非是多幾個全連線,CNN是二維,二維如果搞成全連線就導致運算量巨大,所以有了權重共享,大大減少了運算量,CNN卷積的思想肯定也源於BP神經網路就,在影象上做二維卷積的CNN發出炫目的光芒下,BP神經網路就已經快被人們遺忘了,但是不管CNN再怎麼發展...

卷積神經網路(CNN)和迴圈神經網路 RNN 有什麼區別?

不存在的1990 從字面區分 cnn 裡面的 c指 convolutional operation,是一種提取影象特徵方法。把這一operation加入到layer裡面構成了convolutional layer。rnn裡的r 指recurrent,中文是重複的意思。rnn構造的結構也是recurr...

如何看待人工神經網路ANN和脈衝神經網路SNN的發展?

十萬個為什麼 SNN起源於人類對生物神經網路的解剖,是一種機理模型 ANN是一種工程模型,架構上源於生物學基礎,但是又採用了數值優化的方法進行求解。當前的科技發展水平下,ANN更實用,可以解決很多實際問題,而SNN在功能性角度方面遠遠弱於ANN。從發展前景方面,ANN顯然不及SNN,因為生物神經網路...