《白話深度學習與Tensorflow》學習筆記(7)RBM限制玻爾茲曼機

不受限的:在實際工程中用處不大,所以目前只需要研究受限玻爾茲曼機。

一層是可視化層,一般來說是輸入層,另一層是隱含層,也就是我們一般指的特徵提取層。

RBM是可以多層疊加在一起的。


上面的h1到hn是n個實數,下面的v1到vm是m個實數,都是0到1之間的數字,它們各自組成了一個h向量和一個v向量。

邏輯迴歸:其實這是一個伯努利分佈(二項分佈)的演化,正例概率是p,負例爲1-p。

令s=P/1-p  t=ln(s).




f(x)就是1產生的概率p,x就是這個多維向量。

邏輯迴歸的損失函數:


最大似然度:有一個未知參數向量,這是一種條件描述。觀測對象數據用x來表示,在觀測過程中x會有一定的概率分佈。

未知向量

如果你觀測到一個正態分佈,那麼P(x)就表示爲


最大似然:一個連乘關係的最大值可以根據取對數後找到極大值的點。

對於完整的X=wTx,x1到xn叫做“解釋變量”,而u叫做隨機擾動項,是在隨機過程中的一種不確定的值,且這個u也是服從正太分佈的。

3sigma準則。

損失函數:

RBM的損失函數是CD(contrasive divergence對比散度)學習目標是最大似然度 讓網絡學習到一個矩陣,使得網絡中擬合的概率“全局性”最大。

RBM的能量模型:



就是參數w,c,b後面的能量表示:一個是權重w連接兩側節點的v和h產生的,必須三個都爲1纔算有能量的輸出;另外兩個則是節點上的偏置和節點輸入的向量維度值相乘,也必須都爲1纔算有能量的輸出。

通過最大化這個P(v)(取其對數的值)對於對比散度,只利用這兩個式子,然後讓向量在這個網絡的兩側不斷反彈,喫書畫網絡權重w,用一個向量v通過網絡映射來得到h,然後是第一次反彈,用h通過網絡反過來生成v’;然後是第二次反彈,用這個v’通過網絡生成h’。然後根據L函數的導數來更新w。

能量模型的意義:

[if !supportLists]第一、[endif]RBM網絡是一種無監督學習的方法,無監督學習的目的是最大可能的擬合輸入數據,所以學習RBM網絡的目的是讓RBM網絡最大可能地擬合輸入數據。

[if !supportLists]第二、[endif]能量模型能爲無監督學習方法提供兩個東西:a)目標函數;b)目標解。

[if !supportLists]第三、[endif]任何概率分佈都可以轉變成基於能量的模型,而且很多的分佈都可以利用能量模型的特有的性質和學習過程,有些甚至從能量模型中找到了通用的學習方法。

能量模型需要兩個東西,一個是能量函數,另一個是概率,有了概率才能跟要求解的問題聯合起來。

深度學習中可以由多個RBM疊加而成。

應用:分類問題,降維可進行串並聯的使用,也就是通過多個RBM模型來形成一個完整的工作網絡。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章