簡單理解●限制玻爾茲曼機●RBM
阿新 • • 發佈:2018-12-17
所謂概率圖模型,就是指運用了概率和圖這兩種工具建立的模型(逐漸忘記標題),咳咳,今天講一下限制玻爾茲曼機,或者叫做受限玻爾茲曼機,這個名字起的真是,。。,好的,咳咳
所謂玻爾茲曼機,就是就是玻爾茲曼家的機,就是說玻爾茲曼這個人發明了一種模型,一種機器,所以叫做玻爾茲曼機器,簡稱玻爾茲曼機。 首先,簡單的看一下玻爾茲曼機的圖片: 當然,也可以站著,像下面這樣
RBM
是無監督學習模型,有兩個層的淺層神經網路,一個可見層,一個隱藏層,是一種用於降維、分類、迴歸、協同過濾、特徵學習和主題建模的演算法,它是組成深度置信網路的基礎部件。
所以: 公式1
輸出Y5 = 啟用函式f( X4*W45 + X3*W35 + X2*W25 + X1*W15 + b5)
公式2
輸出X1 = 啟用函式f(Y5*W51 + Y6*W61 + Y7*W71 + a1)
根據以上公式1,講Y5 ~ Y7
都算出來,也就是將隱含層的值都算出來了,再根據隱含層的值,根據公式2,反推計算出重構值:X‘1 ~ X’4
, 根據X‘1 ~ X’4
再計算出Y‘5~Y’6
,根據X
與X‘
的差值,進行反向傳播,並更新權重和偏置(w, a, b
),根據Y
與Y‘
的差值,也進行反向傳播,同理更新權重和偏置(線調上的是權重,圓圈裡的是偏置),經過數次的計算和更新,反覆的迴圈,直到X
與X‘
,Y
與Y‘
近乎相等為止,此時便構建好了限制玻爾茲曼機的模型。
由於一般RBM的隱藏層的神經元個數會比可見層的神經元個數少,而在反向運算中,較少神經元的隱藏層又能夠近似復現原始可見層的輸入,因此,可以認為前向運算是對輸入訊號的編碼,特徵提取的過程,而反向運算是解碼的過程。
關於RBM的特點總結如下:
- 兩層,一個可見層,一個隱藏層
- 層間全連線,層內不連線
- 前向運算是編碼,反向運算是解碼
- 前向和反向使用同一組權重