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

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

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

深度學(xué)習(xí)開發(fā)者Artem Oppermann介紹了受限玻爾茲曼機的原理

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-06-30 09:15 ? 次閱讀

編者按:物理學(xué)碩士、深度學(xué)習(xí)開發(fā)者Artem Oppermann介紹了受限玻爾茲曼機的原理。近幾年來,隨著受限玻爾茲曼機在協(xié)同過濾上的大放異彩,這一基于能量的神經(jīng)網(wǎng)絡(luò)很受歡迎。

0. 導(dǎo)言

受限玻爾茲曼機(RBM)是一種屬于能量模型的神經(jīng)網(wǎng)絡(luò)。本文的讀者對受限玻爾茲曼機可能不像前饋神經(jīng)網(wǎng)絡(luò)或卷積神經(jīng)網(wǎng)絡(luò)那樣熟悉。然而,隨著RBM在Netflix Prize(知名的協(xié)同過濾算法挑戰(zhàn))上大放異彩(當前最先進的表現(xiàn),擊敗了大多數(shù)競爭者),最近幾年這類神經(jīng)網(wǎng)絡(luò)很受歡迎。

1. 受限玻爾茲曼機

1.1 架構(gòu)

在我看來,RBM是所有神經(jīng)網(wǎng)絡(luò)中最簡單的架構(gòu)之一。如下圖所示,一個受限玻爾茲曼機包含一個輸入層(v1, ..., v6),一個隱藏層(h1, h2),以及相應(yīng)的偏置向量a、b. 顯然,RBM沒有輸出層。不過之后我們會看到,RBM不需要輸出層,因為RBM進行預(yù)測的方式和通常的前饋神經(jīng)網(wǎng)絡(luò)不同。

1.2 能量模型

乍看起來,能量這一術(shù)語和深度學(xué)習(xí)沒什么關(guān)系。相反,能量是一個物理概念,例如,重力勢能描述了具有質(zhì)量的物體因重力而具有的相對其他質(zhì)量體的潛在能量。不過,有些深度學(xué)習(xí)架構(gòu)使用能量來衡量模型的質(zhì)量。

深度學(xué)習(xí)模型的目的之一是編碼變量間的依賴關(guān)系。給變量的每種配置分配一個標量作為能量,可以描述這一依賴關(guān)系。能量較高意味著變量配置的兼容性不好。能量模型總是嘗試最小化一個預(yù)先定義的能量函數(shù)。

RBM的能量函數(shù)定義為:

由定義可知,能量函數(shù)的值取決于變量/輸入狀態(tài)、隱藏狀態(tài)、權(quán)重和偏置的配置。RBM的訓(xùn)練包括為給定的輸入值尋找使能量達到最小值的參數(shù)

1.3 概率模型

受限玻爾茲曼機是一個概率模型。這一模型并不分配離散值,而是分配概率。在每一時刻RBM位于一個特定的狀態(tài)。該狀態(tài)指輸入層v和隱藏層h的神經(jīng)元值。觀察到v和h的特定狀態(tài)的概率由以下聯(lián)合分布給出:

這里Z被稱為配分函數(shù)(partition function),該函數(shù)累加所有輸入向量和隱藏向量的可能組合。

這是受限玻爾茲曼機和物理學(xué)第二個相遇的地方。在物理學(xué)中,這一聯(lián)合分布稱為玻爾茲曼分布,它給出一個微粒能夠在能量E的狀態(tài)下被觀測到的概率。就像在物理中一樣,我們分配一個觀測到狀態(tài)v和h的概率,這一概率取決于整個模型的能量。不幸的是,由于配分函數(shù)Z中v和h所有可能的組合數(shù)目十分巨大,計算這一聯(lián)合分布十分困難。而給定狀態(tài)v計算狀態(tài)h的條件概率,以及給定狀態(tài)h計算狀態(tài)v的條件概率則要容易得多:

RBM中的每個神經(jīng)元只可能是二元狀態(tài)0或1中的一種。我們最關(guān)心的因子是隱藏層或輸入層地神經(jīng)元位于狀態(tài)1(激活)的概率。給定一個輸入向量v,單個隱藏神經(jīng)元j激活的概率為:

其中,σ為sigmoid函數(shù)。以上等式可由對之前的條件概率等式應(yīng)用貝葉斯定理推導(dǎo)得出,這里不詳細介紹其中的推導(dǎo)過程。

類似地,單個輸入神經(jīng)元i為1的概率為:

2. 基于受限玻爾茲曼機實現(xiàn)協(xié)同過濾

2.1 識別數(shù)據(jù)中的潛在因子

讓我們假定,我們找了一些人,讓他們給一批電影打分(一星到五星)。在經(jīng)典因子分析背景下,每部電影可以通過一組潛在因子來解釋。例如,《哈利波特》和《速度與激情》可能分別與奇幻、動作這兩個潛在因子有密切的關(guān)系。另一方面,喜歡《玩具總動員》和《機器人總動員》的用戶可能和皮克斯這個潛在因子密切相關(guān)。RBM可以用來分析和找出這些潛在因子。經(jīng)過一些epoch的訓(xùn)練,神經(jīng)網(wǎng)絡(luò)多次見到數(shù)據(jù)集中的每個用戶的所有評分。此時模型應(yīng)該已經(jīng)基于用戶的偏好和所有用戶的協(xié)同口味學(xué)習(xí)到了隱藏的潛在因子。

隱藏因子分析以二元的方式進行。用戶并不向模型提交具體的評分(例如,一到五星),而是簡單地告知喜歡(評分為1)還是不喜歡(評分為0)某部特定的電影。二元評分值表示輸入層的輸入。給定這些輸入,RBM接著嘗試找出數(shù)據(jù)中可以解釋電影選擇的潛在因子。每個隱藏神經(jīng)元表示一個潛在因子。給定一個包含數(shù)以千計的電影的大規(guī)模數(shù)據(jù)集,我們相當確定用戶僅僅觀看和評價了其中一小部分電影。另外,有必要給尚未評分的電影分配一個值,例如,-1.0,這樣在訓(xùn)練階段網(wǎng)絡(luò)可以識別未評分的電影,并忽略相應(yīng)的權(quán)重。

讓我們看一個例子。一個用戶喜歡《指環(huán)王》和《哈利波特》,但不喜歡《黑客帝國》、《搏擊俱樂部》、《泰坦尼克》。用戶還沒有看過《霍比特人》,所以相應(yīng)的評分為-1. 給定這些輸入,玻爾茲曼機可能識別出三個對應(yīng)電影類型的隱藏因子戲劇、奇幻、科幻。

給定電影,RBM為每個隱藏神經(jīng)元分配一個概率p(h|v)。使用概率p從伯努利分布中取樣得到最終的神經(jīng)元的二元值。

在這個例子中,只有表示類型奇幻的隱藏神經(jīng)元被激活。給定這些電影評分,受限玻爾茲曼機能夠正確識別用戶最喜歡奇幻類型的電影。

2.2 將潛在因子用于預(yù)測

訓(xùn)練之后,我們的目標是預(yù)測沒看過的電影的二元評分。給定特定用戶的訓(xùn)練數(shù)據(jù),網(wǎng)絡(luò)能夠基于用戶的偏好識別潛在因子。由于潛在因子由隱藏神經(jīng)元表示,我們可以使用p(v|h)從伯努利分布取樣,以找出哪個輸入神經(jīng)元處于激活狀態(tài)。

上圖中,網(wǎng)絡(luò)成功地識別出奇幻為用戶偏愛的電影類型,并預(yù)測用戶會喜歡《霍比特人》。

總結(jié)一下,從訓(xùn)練到預(yù)測的全過程如下:

基于所有用戶的數(shù)據(jù)訓(xùn)練網(wǎng)絡(luò)。

在推理時刻,獲取某個特定用戶的訓(xùn)練數(shù)據(jù)。

基于這一數(shù)據(jù)得出激活的隱藏神經(jīng)元。

基于隱藏神經(jīng)元的值得出激活的輸入神經(jīng)元。

輸入神經(jīng)元的新值顯示了用戶將對沒看過的電影作出的評價。

3. 訓(xùn)練

受限玻爾茲曼機的訓(xùn)練過程和基于梯度下降的常規(guī)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程不同。本文不會詳細介紹具體的訓(xùn)練過程(感興趣的讀者可以閱讀受限玻爾茲曼機的原始論文),相反,我們將簡單地概覽一下其中的兩個主要的訓(xùn)練步驟。

3.1 吉布斯采樣

訓(xùn)練的第一個關(guān)鍵步驟稱為吉布斯采樣(Gibbs Sampling)。給定輸入向量v,我們使用前面提到的p(h|v)公式預(yù)測隱藏值h。得到了隱藏值之后,我們又使用前面提到的p(v|h)公式預(yù)測新輸入值v。這一過程輾轉(zhuǎn)重復(fù)k次。經(jīng)過k個迭代后,我們得到了輸入向量vk,這是基于原始輸入值v0的重建值。

3.2 對比發(fā)散

在對比發(fā)散(Contrastive Divergence)這一步驟中,模型更新權(quán)重矩陣。使用向量v0和vk計算隱藏值h0和hk的激活概率。這些概率的外積和輸入向量v0、vk的差別為更新矩陣(update matrix):

基于更新矩陣,使用梯度上升(gradient ascent)方法更新權(quán)重:

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

原文標題:深度學(xué)習(xí)邂逅物理:受限玻爾茲曼機原理解析

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

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

    和通常的前饋神經(jīng)網(wǎng)絡(luò)不同的是,受限玻爾茲曼可以通過可見層的狀態(tài)預(yù)測對應(yīng)隱含層的狀態(tài),相反亦可以由隱含層預(yù)測可見層對應(yīng)單元的狀態(tài)。同時,它與玻爾茲曼
    的頭像 發(fā)表于 07-26 10:09 ?4731次閱讀

    [18.4.1]--4.玻爾茲曼

    機器學(xué)習(xí)
    jf_60701476
    發(fā)布于 :2022年12月05日 15:05:23

    怎樣輸入玻爾茲曼常數(shù)

    Labview2013中怎樣輸入玻爾茲曼常數(shù)?k=1.38E(-23)
    發(fā)表于 08-30 23:18

    用實驗證明,二極管PN結(jié)中的玻爾茲曼常數(shù)

    Maxwell-Boltzmann 分布玻爾茲曼常數(shù)(Boltzmann constant),通常使用表示,是指有關(guān)于溫度及能量的一個物理常數(shù)。玻爾茲曼是一位奧地利物理學(xué)家,在統(tǒng)計力學(xué)的理論有重大貢獻,玻爾茲曼常數(shù)具有相當
    發(fā)表于 07-13 07:50

    絕對干貨!HarmonyOS開發(fā)者日資料全公開,鴻蒙開發(fā)者都在看

    731HarmonyOS開發(fā)者日大會PPT資料全在這,想要了解的小伙伴可以自行下載啦~下載資料的小伙伴還可以在評論區(qū)回復(fù)領(lǐng)取5個積分哦1、HarmonyOS 職業(yè)認證解讀:該主題是開發(fā)者非常關(guān)注
    發(fā)表于 08-04 14:36

    HDC 2022 開發(fā)者主題演講與技術(shù)分論壇干貨分享(附課件)

    :HarmonyOS學(xué)生公開課 面向校園開發(fā)者介紹HarmonyOS技術(shù)理念及生態(tài)前景,分享學(xué)生開發(fā)者學(xué)習(xí)HarmonyOS
    發(fā)表于 11-25 18:11

    斯特藩-玻爾茲曼定律

    斯特藩-玻爾茲曼定律(Stefan-Boltzmann law),又稱斯特藩定律,是熱力學(xué)中的一個著名定律。
    發(fā)表于 10-12 16:51 ?0次下載

    稀疏受限玻爾茲曼研究綜述

    堆疊起來,不僅可以模擬大腦的分層結(jié)構(gòu),還可以學(xué)習(xí)到圖像更加抽象的特征信息。因此,采用受限玻爾茲曼獲得圖像特征的稀疏表示在人工智能領(lǐng)域得到了廣泛的關(guān)注。首先
    發(fā)表于 11-20 09:52 ?7次下載

    關(guān)于機器學(xué)習(xí)的15大框架分析

    Apache Singa是一個用于在大型數(shù)據(jù)集上訓(xùn)練深度學(xué)習(xí)的通用分布式深度學(xué)習(xí)平臺,它是基于分層抽象的簡單開發(fā)模型設(shè)計的。它還支持各種當前
    發(fā)表于 12-06 11:05 ?1246次閱讀

    深度學(xué)習(xí)的機會網(wǎng)絡(luò)鏈路預(yù)測

    隨時間動態(tài)變化的相似性指標W_Katz;利用信息熵確定受限玻爾茲曼的隱含層神經(jīng)元數(shù)量,構(gòu)建用于特征提取的深度學(xué)習(xí)模型,采用自適應(yīng)
    發(fā)表于 01-04 15:53 ?0次下載

    融入受限玻爾茲曼的偏最小二乘優(yōu)化方法

    偏最小二乘法內(nèi)部采用主成分分析,不能充分表達數(shù)據(jù)的非線性特征,對非線性數(shù)據(jù)的預(yù)測精度較低。為此,提出一種融合受限玻爾茲曼與偏最小二乘的分析預(yù)測方法。該方法利用受限
    發(fā)表于 02-01 16:41 ?1次下載
    融入<b class='flag-5'>受限</b><b class='flag-5'>玻爾茲曼</b><b class='flag-5'>機</b>的偏最小二乘優(yōu)化方法

    人工智能機器學(xué)習(xí)受限玻爾茲曼(RBM)算法

    受限玻爾茲曼RBM在深度學(xué)習(xí)領(lǐng)域一直有重要應(yīng)用,它是一種可用隨機神經(jīng)網(wǎng)絡(luò)來解釋的概率圖模型,由Smolensky在1986年在
    發(fā)表于 05-29 19:02 ?4669次閱讀

    快速了解神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)的教程資料免費下載

    本文檔的詳細介紹的是快速了解神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)的教程資料免費下載主要內(nèi)容包括:機器學(xué)習(xí)概述,線性模型,前饋神經(jīng)網(wǎng)絡(luò),卷積神經(jīng)網(wǎng)絡(luò),循環(huán)神經(jīng)
    發(fā)表于 02-11 08:00 ?33次下載
    快速了解神經(jīng)網(wǎng)絡(luò)與<b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b>的教程資料免費下載

    GAN主要優(yōu)點是超越傳統(tǒng)神經(jīng)網(wǎng)絡(luò)分類和特征提取的功能

    L.E.Boltzmann提出的玻爾茲曼分布類似,故將這種網(wǎng)絡(luò)取名為“玻爾茲曼”。 在物理學(xué)上,玻爾茲曼分布是描述理想氣體在受保守外力的作用時,處于熱平衡態(tài)下的氣體分子按能量的分布規(guī)
    的頭像 發(fā)表于 06-20 10:48 ?1.3w次閱讀

    Hinton的那篇Capsule論文終于揭下了神秘的面紗

    而當前的深度學(xué)習(xí)理論,自從Hinton大神在2007年(先以受限玻爾茲曼進行訓(xùn)練、再用有監(jiān)督的反向傳播算法進行調(diào)優(yōu))確立起來后,除了神經(jīng)網(wǎng)
    的頭像 發(fā)表于 11-24 09:56 ?1887次閱讀