国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Deep memory network 框架

2019-11-06 09:24:06
字體:
來源:轉載
供稿:網友

最近看論文,發現了一個新的概念“Deep memory network”,那么今天就來梳理一下這個框架的基本原理及使用場景。

其實從提出的時間上來講,這個框架一點都不新,由Weston et al 在2014提出。這個框架描述是:“A memory network consists of a memory m and four components I,G,O and R, where m is an array of objects such as an array of vectors. Among these four components, I converts input to internal feature rePResentation, G updates old memories with new input, O generates an output representation given a new input and the current memory state, R outputs a response based on the output representation.” 這些描述看起來確實非常的繁瑣,但是其實如果抽象一下的話,memory network完全可以想象成一臺計算機,m是內存,I是輸入設備,R是輸出設備,其他的步驟完全可以看出是CPU對內存數據的更新操作。而名稱中的deep不過是指把多層這樣的結構串聯起來,構成了一個更深層次的網絡結構。其實如果接觸過深度學習的人都知道,RNN系列結構(LSTM、GRU)就屬于“Deep memory network”下的一個具體的例子。下面我們從兩篇論文出發,來講解一下這種結構是如何在實際問題中應用的。

首先講的是《aspect Level Sentiment Classification with Deep Memory Network》2016 EMNLP。他的網絡結構如下: 這里寫圖片描述

這里的hop就代表了層數,這里學習了LSTM中的權值共享的思想,各個hop中的參數也是共享的,大大減少了模型的復雜度。他假設了aspect Word就是句子中的某一個詞語。模型的初始出入是aspect詞向量,這里的memory 中存放的是當前分析的一句話中所有的詞語所對應的詞向量,假設這些詞向量為mi,一句話有k個詞,gi=tanh(Watt.[mi;vaspect]+batt),根據這個式子我們可以得到{g1,g2,.......gk}。然后,我們把這些g向量送入到softmax中進行歸一化,αi=exp(gi)∑kj=1exp(gj),可以得到系數{α1,α2,......αk}。那么最后模型的輸出就是vec=∑ki=1αi.mi。接著這個vec被作為下一層的vaspect 被輸入到模型中,進行反復的變換。同時這篇論文還做了一個假設,即距離aspect詞語更近的詞語將會對該aspect有更大的貢獻,于是他把這種距離關系也考慮進去了,整體的公式是:mi=ei?vivi中的所有元素都是一樣的,由不同公式給出,總的來說就是離aspect詞越近這個系數越大。

接下來要講的是《End-To-End Memory Networks》2015 NipS。他研究的領域是自動問答,即給出幾句話的描述{x1,x2,......xn}和一個問題 q,然后自動根據問題回答出一個詞語 a(或者幾個詞語)。這里用的模型也是“memory network”,網絡結構如下: 這里寫圖片描述

詞表大小是V。首先是輸入轉化矩陣A(d×V),需要注意的是這里的{x1,x2,......xn}都代表了一句話,而A的作用就是根據句子xi中的每一個詞語去生轉化成為內部的memory中的向量{m1,m2,.......mn}mi=∑jAxij,其中的xij是一種one-hot的表示方式。同理我們用另一個轉化矩陣B講問題q轉化成內部的表示u,u=∑jBqj,那么就有pi=softmax(u.mi)。同時模型定義了,每個xi都對應了一個output vector ci,由另一個轉化矩陣C生成,ci=∑jCxij。那么定義o=∑pi.ci,那么我們最后的預測為a=softmax(W(o+u)),其中W的維度為V×d,即回答的結果為一個詞。為了能夠把不同的層次連接起來,定義uk+1=uk+ok。 從上述描述中我們不難看出,對于每個i層有不同的參數矩陣,AiBiCi,其實為了簡化復雜度,通常有如下的方式:1 Ak+1=Ck ;2 采用類似RNN的方式,即 A1=A2=A3=.....ANB1=B2=B3=.....BNC1=C2=C3=.....CN。其實我感覺就是約束參數的取值而已,其實我們自己也可以按照類似的思想進行構造。

總之,“deep memory network”代表了一種思想框架,指代了一種循環處理數據的邏輯結構。希望以后能在這方面做更加細致的研究和探索。


上一篇:最大最小公平算法

下一篇:Servlet - 基礎

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永宁县| 额济纳旗| 十堰市| 江津市| 天全县| 静海县| 绥德县| 凤阳县| 康马县| 佳木斯市| 建瓯市| 淮南市| 象州县| 华宁县| 凯里市| 云阳县| 荥阳市| 柘荣县| 顺昌县| 清水县| 陆良县| 万载县| 类乌齐县| 麻栗坡县| 南开区| 德清县| 江川县| 高尔夫| 齐齐哈尔市| 莱州市| 开远市| 平安县| 齐齐哈尔市| 防城港市| 靖安县| 辛集市| 临邑县| 乌审旗| 永仁县| 商洛市| 耿马|