0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一種基于能量模型的神經(jīng)網(wǎng)絡(luò)架構(gòu)受限玻爾茲曼機

nlfO_thejiangme ? 來源:未知 ? 作者:李倩 ? 2018-07-26 10:09 ? 次閱讀

受限玻爾茲曼機是一種基于能量模型的神經(jīng)網(wǎng)絡(luò)架構(gòu),雖然不像通常的卷積神經(jīng)網(wǎng)絡(luò)一樣被人熟知,但近年來在推薦系統(tǒng)中受到了越來越多的關(guān)注,在協(xié)同過濾推薦等領(lǐng)域表現(xiàn)出越來越重要的作用。在這篇文章中,我們將從基礎(chǔ)理論和基本結(jié)構(gòu)方面梳理受限玻爾茲曼機的原理,以便對受限玻爾茲曼機(RBM: Restricted Boltzmann Machine)有更深的了解。

最典型的受限玻爾茲曼機如下圖所示,在兩層簡單的結(jié)構(gòu)中分布式的輸入的可見層(visible layer)和隱含層結(jié)構(gòu)。

和通常的前饋神經(jīng)網(wǎng)絡(luò)不同的是,受限玻爾茲曼機可以通過可見層的狀態(tài)預(yù)測對應(yīng)隱含層的狀態(tài),相反亦可以由隱含層預(yù)測可見層對應(yīng)單元的狀態(tài)。同時,它與玻爾茲曼機不同在于同一層內(nèi)的單元之間沒有相互連接。

能量模型

為了更好地理解RBM是如何工作的,我們需要引入基于能量的模型來進行解釋。在重力場中,不同高度的物體具有不同的重力勢能,我們可以利用能量來描述物體所具有潛在做功的能力。基于這樣的啟發(fā),科學(xué)家們將這一觀點應(yīng)用到深度學(xué)習(xí)中,來度量模型質(zhì)量。

深度學(xué)習(xí)模型的目的之一便是對變量之間的依賴關(guān)系進行編碼,將變量組合與一個標(biāo)量能量聯(lián)系起來,而這一能量就作為模型能力的度量。通常情況下,較小的能量意味著更加合理的變量組合。所以基于能量的模型在訓(xùn)練過程中會不斷最小化事先定義好的能量函數(shù)從而實現(xiàn)變量間的最優(yōu)組合,RBM的能量函數(shù)定義為如下的形式:

可以看到能量函數(shù)與可見層、隱含層的狀態(tài)以及對應(yīng)的權(quán)重和偏置都有關(guān)系。RBM的訓(xùn)練過程就是最小化這一能量函數(shù)的過程。

概率模型

RBM同時也是一種典型的概率模型,模型中的狀態(tài)通過概率來表示。在每一個時間點上受限玻爾茲曼機的狀態(tài)由可見層和隱含層單元決定,其可被觀測到的狀態(tài)可由以下聯(lián)合概率分布來表示:

其中p為可見層和隱藏層的聯(lián)合概率分布函數(shù),Z為配分函數(shù),用于表示系統(tǒng)所有可能的狀態(tài)。這一聯(lián)合概率分布在物理上就是著名的玻爾茲曼分布——在給定能量E上粒子在某個狀態(tài)上被觀測到的概率。但由于Z中h和v的組合情況十分龐大,使得這一聯(lián)合概率分布難以計算,但幸運的是對于對于給定隱含層或者可見層狀態(tài)下的概率卻是更加容易計算的:

需要注意的是在RBM中每一個單元都是0/1的二值狀態(tài),實際使用中通常會計算出每個單元處于1,也就是被激活的概率。在給定可見層v的條件下,隱含層單元j被激活的概率可以寫成下圖的表示,同樣給定隱含層的狀態(tài)下,可見層單元i的概率也可以被寫成下面的表示形式。

上式通過前述的條件概率推導(dǎo)得到,求得的值為對應(yīng)單元取1激活的概率。其中σ是Sigmoid函數(shù)。

訓(xùn)練

RBM的訓(xùn)練與通常神經(jīng)網(wǎng)絡(luò)的訓(xùn)練有很大的區(qū)別,研究人員們使用了吉布斯采樣(GibbsSampling)和對比散度(Contrastive Divergence,CD)兩個數(shù)學(xué)手段來對訓(xùn)練過程進行處理。簡單來說吉布斯采樣利用了上述的條件概率公式,通過輸入v可以計算得到隱含層的條件概率h,隨后根據(jù)這一h反過來預(yù)測輸入層的值v,經(jīng)過k次迭代后的輸出vk分布將會收斂于v0的分布,從而得到了可見層的聯(lián)合概率。

為了更新權(quán)重,還需要計算出每次訓(xùn)練過后誤差,這時候就需要使用對比散度來進行計算:

基于RBM的協(xié)同過濾系統(tǒng)

在推薦系統(tǒng)中RBM常常被用于識別數(shù)據(jù)的隱含因素。例如在電影推薦系統(tǒng)中,人們常常將不同的電影按照不同的潛在變量進行分析,例如速度與激情會被歸并到動作片里,而玩具總動員和瓦力則會更多的包含皮克斯的因素。模型通過對用戶打分?jǐn)?shù)據(jù)進行學(xué)習(xí),在多個循環(huán)后將得出用戶的個性化偏好以及用戶群體的整體偏好。

在電影推薦的例子中,受限玻爾茲曼機面對的數(shù)據(jù)是二進制的0/1而不是連續(xù)的打分?jǐn)?shù)據(jù)。這意味著用于對于電影的評價要么是喜歡(1)要么是不喜歡(0)。這些評價值作為輸入層/可見層被送入模型。在給定的數(shù)據(jù)下,RBM會發(fā)掘數(shù)據(jù)中能解釋用戶偏好的隱含因素,并在隱含層中用不同的單元表示出來。

圖中是一個用戶對于幾部電影評分的簡單例子,其中霍比特人由于用戶沒有評分,數(shù)據(jù)中使用-1來標(biāo)注,由于電影的數(shù)量龐大,某個用戶只對小部分電影進行了評價,需要告訴模型哪些是沒有用戶評價的輸入從而可以忽略這些因素的影響。

上圖就對應(yīng)了給定可見層狀態(tài),求出隱含層單元激活概率的情況。圖中可以看出只有Fantasy類型是被激活的,在給定用戶評分的情況下,RBM正確地識別出這一用戶喜歡的類型更多的偏向于科幻電影。

在另一種情況下,在知道了用戶的偏好后(hidden),如果要為用戶推薦電影(visible)就可以利用已知隱含層求得可見層單元被激活的條件概率,從而為用戶推薦偏好類型的電影。

上圖中可以看到,RBM計算出被激活的電影除了輸入數(shù)據(jù)中指環(huán)王和哈利波特,還為用戶推薦了原來沒有看過的霍比特人。模型認(rèn)為喜歡科幻的用戶很有可能也喜歡霍比特人。

總結(jié)來看,在推薦系統(tǒng)中使用RBM主要分為以下幾個步驟:

1.在所有用戶數(shù)據(jù)上訓(xùn)練模型;

2.使用特定用戶的數(shù)據(jù)來進行預(yù)測;

3.得到隱含層的激活情況;

4.基于隱含層的激活來計算輸出層的激活情況;

5.可見層的新激活單元表示了用戶對未看過的電影/節(jié)目/音樂的評價,并選取其中大概率的激活單元向用戶推薦。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴

原文標(biāo)題:簡單明了地告訴你不明覺厲的「受限玻爾茲曼機」到底是個啥?

文章出處:【微信號:thejiangmen,微信公眾號:將門創(chuàng)投】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    多層感知神經(jīng)網(wǎng)絡(luò)的區(qū)別

    (Feedforward Neural Networks)的一種基礎(chǔ)且廣泛使用的模型。以下將從多個方面詳細(xì)闡述多層感知神經(jīng)網(wǎng)絡(luò)之間的區(qū)別與聯(lián)系。
    的頭像 發(fā)表于 07-11 17:23 ?715次閱讀

    rnn是什么神經(jīng)網(wǎng)絡(luò)模型

    RNN(Recurrent Neural Network,循環(huán)神經(jīng)網(wǎng)絡(luò))是一種具有循環(huán)結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)模型,它能夠處理序列數(shù)據(jù),并對序列中的元素進行建模。RNN在自然語言處理、語音識別、
    的頭像 發(fā)表于 07-05 09:50 ?404次閱讀

    人工神經(jīng)網(wǎng)絡(luò)模型包含哪些層次

    人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)是一種模擬人腦神經(jīng)網(wǎng)絡(luò)的計算模型,具有自適應(yīng)、自學(xué)習(xí)、泛化能力強等特點。本文將詳細(xì)介紹人工
    的頭像 發(fā)表于 07-05 09:17 ?310次閱讀

    人工神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練的基本原理

    圖像識別、語音識別、自然語言處理等。本文將介紹人工神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練的基本原理。 1. 神經(jīng)網(wǎng)絡(luò)的基本概念 1.1 神經(jīng)神經(jīng)元是
    的頭像 發(fā)表于 07-05 09:16 ?356次閱讀

    人工神經(jīng)網(wǎng)絡(luò)模型的分類有哪些

    人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks, ANNs)是一種模擬人腦神經(jīng)元網(wǎng)絡(luò)的計算模型,它在許多領(lǐng)域,如圖像識別、語音識別、自然語言處理、預(yù)測分析等有著廣泛
    的頭像 發(fā)表于 07-05 09:13 ?503次閱讀

    人工神經(jīng)網(wǎng)絡(luò)模型一種什么模型

    人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,簡稱ANNs)是一種受生物神經(jīng)網(wǎng)絡(luò)啟發(fā)而產(chǎn)生的數(shù)學(xué)模型,用于模擬人腦處理信息的方式。它由大量的節(jié)點(或稱為
    的頭像 發(fā)表于 07-04 16:57 ?458次閱讀

    卷積神經(jīng)網(wǎng)絡(luò)和bp神經(jīng)網(wǎng)絡(luò)的區(qū)別

    不同的神經(jīng)網(wǎng)絡(luò)模型,它們在結(jié)構(gòu)、原理、應(yīng)用等方面都存在定的差異。本文將從多個方面對這兩神經(jīng)網(wǎng)絡(luò)進行詳細(xì)的比較和分析。 引言
    的頭像 發(fā)表于 07-02 14:24 ?1162次閱讀

    數(shù)學(xué)建模神經(jīng)網(wǎng)絡(luò)模型的優(yōu)缺點有哪些

    數(shù)學(xué)建模神經(jīng)網(wǎng)絡(luò)模型一種基于人工神經(jīng)網(wǎng)絡(luò)的數(shù)學(xué)建模方法,它通過模擬人腦神經(jīng)元的連接和信息傳遞機制,對復(fù)雜系統(tǒng)進行建模和分析。
    的頭像 發(fā)表于 07-02 11:36 ?602次閱讀

    神經(jīng)網(wǎng)絡(luò)模型的原理、類型及應(yīng)用領(lǐng)域

    數(shù)學(xué)建模神經(jīng)網(wǎng)絡(luò)模型一種基于人工神經(jīng)網(wǎng)絡(luò)的數(shù)學(xué)建模方法,它通過模擬人腦神經(jīng)元的工作機制,實現(xiàn)對復(fù)雜問題的建模和求解。
    的頭像 發(fā)表于 07-02 11:31 ?678次閱讀

    神經(jīng)網(wǎng)絡(luò)在數(shù)學(xué)建模中的應(yīng)用

    數(shù)學(xué)建模是一種利用數(shù)學(xué)方法和工具來描述和分析現(xiàn)實世界問題的過程。神經(jīng)網(wǎng)絡(luò)一種模擬人腦神經(jīng)元結(jié)構(gòu)和功能的計算模型,可以用于解決各種復(fù)雜問題。
    的頭像 發(fā)表于 07-02 11:29 ?567次閱讀

    神經(jīng)網(wǎng)絡(luò)架構(gòu)有哪些

    神經(jīng)網(wǎng)絡(luò)架構(gòu)是機器學(xué)習(xí)領(lǐng)域中的核心組成部分,它們模仿了生物神經(jīng)網(wǎng)絡(luò)的運作方式,通過復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)實現(xiàn)信息的處理、存儲和傳遞。隨著深度學(xué)習(xí)技術(shù)的不斷發(fā)展,各種
    的頭像 發(fā)表于 07-01 14:16 ?366次閱讀

    GRU是什么?GRU模型如何讓你的神經(jīng)網(wǎng)絡(luò)更聰明 掌握時間 掌握未來

    模型是指遞歸神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network),是一種常用于處理序列數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)架構(gòu)。與傳統(tǒng)的前饋
    發(fā)表于 06-13 11:42 ?796次閱讀
    GRU是什么?GRU<b class='flag-5'>模型</b>如何讓你的<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>更聰明 掌握時間 掌握未來

    助聽器降噪神經(jīng)網(wǎng)絡(luò)模型

    抑制任務(wù)是語音增強領(lǐng)域的個重要學(xué)科, 隨著深度神經(jīng)網(wǎng)絡(luò)的興起,提出了幾種基于深度模型的音頻處理新方法[1,2,3,4]。然而,這些通常是為離線處理而開發(fā)的,不需要考慮實時性。當(dāng)使用神經(jīng)網(wǎng)絡(luò)
    發(fā)表于 05-11 17:15

    一種基于MCU的神經(jīng)網(wǎng)絡(luò)模型在線更新方案之?dāng)?shù)據(jù)處理篇

    一種基于MCU的神經(jīng)網(wǎng)絡(luò)模型在線更新方案之?dāng)?shù)據(jù)處理篇
    的頭像 發(fā)表于 10-17 18:06 ?472次閱讀
    <b class='flag-5'>一種</b>基于MCU的<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b><b class='flag-5'>模型</b>在線更新方案之?dāng)?shù)據(jù)處理篇

    一種基于MCU的神經(jīng)網(wǎng)絡(luò)模型靈活更新方案之先行篇

    一種基于MCU的神經(jīng)網(wǎng)絡(luò)模型靈活更新方案之先行篇
    的頭像 發(fā)表于 10-17 17:48 ?488次閱讀