神经网络中的人脑海马体:Memory Networks
關(guān)注微信公眾號(hào):NLP分享匯。【喜歡的掃波關(guān)注,每天都在更新自己之前的積累】
文章鏈接:https://mp.weixin.qq.com/s/NIENYhe_sYZbQZapaI0_mw
背景:Memory Networks是怎樣誕生的?
在處理與過(guò)去經(jīng)驗(yàn)或外部知識(shí)來(lái)源有關(guān)的問(wèn)題時(shí),記憶是一個(gè)至關(guān)重要的組成部分。人腦的海馬體和計(jì)算機(jī)的硬盤(pán)是人類(lèi)和計(jì)算機(jī)讀寫(xiě)記憶所依賴(lài)的部件。傳統(tǒng)的模型很少有內(nèi)存組件,缺乏知識(shí)重用和推理能力。RNN通過(guò)時(shí)間步迭代傳遞歷史信息,在某種程度上,可以將其視為一個(gè)內(nèi)存模型。然而,LSTM是RNN的一個(gè)強(qiáng)大變體,具有長(zhǎng)期和短期記憶,但即使是LSTM,其記憶模塊也太小,事實(shí)沒(méi)有明確區(qū)分,因此無(wú)法壓縮特定的知識(shí)事實(shí)并在任務(wù)中重用。
一、Weston J, Chopra S, Bordes A (2014) Memory networks
原文鏈接:https://arxiv.org/pdf/1410.3916
模型結(jié)構(gòu)
Memory Networks是 FaceBook 2014 年的論文首次提出,可以解決傳統(tǒng)模型不能有效利用長(zhǎng)期記憶進(jìn)行推理的問(wèn)題。是一種具有內(nèi)存組件的模型。正如他們?cè)诠ぷ髦兴枋龅?#xff0c;一個(gè)內(nèi)存網(wǎng)絡(luò)有五個(gè)模塊:
-
一個(gè)內(nèi)存模塊:用來(lái)存儲(chǔ)記憶事實(shí)的表示
-
一個(gè) I 模塊:它將輸入內(nèi)存事實(shí)映射到嵌入表示;
-
一個(gè) G 模塊:它決定內(nèi)存模塊的更新;
-
一個(gè) O 模塊:它根據(jù)輸入表示和存儲(chǔ)表示生成輸出;
-
一個(gè) R 模塊:它根據(jù)' O '模塊的輸出組織最終的響應(yīng)。
該模型需要對(duì)每個(gè)模塊都有很強(qiáng)的監(jiān)督信號(hào),因此不適合端到端的培訓(xùn)。
最后,給個(gè)例子:
如上圖中的例子,上下文句子包括前兩行的所有句子,這些句子都保存在 Memory Slots 中。
在回答第一個(gè)問(wèn)題:Where is the milk now?,MEMNN首先要在 Memory 中找到最相關(guān)的句子 m1 = "Joe travelled to the office" 。然后根據(jù)問(wèn)題 和 m1 找到下一個(gè)相關(guān)句子 m2 = "Joe left the milk" ,最后通過(guò)模塊 R 得到答案 "office"。
?
二、Sukhbaatar S, Szlam A, Weston J, Fergus R (2015) End-to-end memory networks
原文鏈接:https://arxiv.org/pdf/1503.08895.pdf%5D.
該文章將Weston之前的工作擴(kuò)展到端到端存儲(chǔ)網(wǎng)絡(luò),該網(wǎng)絡(luò)被普遍接受為易于訓(xùn)練和應(yīng)用的標(biāo)準(zhǔn)存儲(chǔ)網(wǎng)絡(luò)。
下圖為被提出的End-to-end memory networks。該結(jié)構(gòu)由三階段組成:
-
weight calculation
-
memory selection
-
final prediction
圖1 end-to-end memory networks
1、weight calculation
該模型首先使用一個(gè)表示模型A將輸入內(nèi)存集{xi}轉(zhuǎn)換為內(nèi)存表示{mi},然后使用另一個(gè)表示模型B將輸入查詢(xún)映射到其embedding空間,得到一個(gè)embedding向量u。最終的權(quán)重計(jì)算公式如下:
2、memory selection
在生成最終預(yù)測(cè)之前,首先使用另一個(gè)表示模型C將輸入存儲(chǔ)xi編碼為embedding向量ci,然后使用上一階段計(jì)算的權(quán)重計(jì)算{ci}的加權(quán)和,從而生成選定的存儲(chǔ)向量(memory vector)。如公式22所示,o表示被選定的memory vector。在內(nèi)存表示中找不到此向量。軟存儲(chǔ)器的選擇有利于梯度計(jì)算的可微性,使整個(gè)模型端到端的可訓(xùn)練。
3、final prediction
通過(guò)將所選內(nèi)存o和查詢(xún)u的求和向量映射到概率向量a^中,得到最終的預(yù)測(cè)。計(jì)算公式如下:
?
總結(jié)
以上是生活随笔為你收集整理的神经网络中的人脑海马体:Memory Networks的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: nodejs创建项目
- 下一篇: 考研复试打分表公布?评分细则已出!