閱讀999 返回首頁    go 技術社區[雲棲]


看大牛如何複盤遞歸神經網絡!

更多深度文章,請關注雲計算頻道:
https://yq.aliyun.com/cloud
在大牛的眼中,遞歸神經網絡(RNNs)的運作就像孩子們玩的手機遊戲(也叫做華人耳語(私下傳話),其實就是暗指遞歸神經網絡是一個封閉的形式運作的。)。在RNN的每個處理步驟,RNN必須對已收到的新信息進行編碼並將信息通過一組反饋連接傳遞到下一個處理步驟。對於設計神經網絡模型(RNN)來說,最大的挑戰就是要保證通過反饋連接每次傳遞的信息量不會降低。同樣重要的是要確保糾錯信息可以通過反向傳播通過模型。Hochreiter和Schmidhuber是第一個解決這些問題的人,他們將一個稱為長期記憶模式(LSTM模式)裝配到RNN上。其實,他們的方法就是引入網絡門控機製,以此來控製信息存儲、更新和抹去。LSTM模式其實還是在以孩子們玩手機遊戲的方式運作,但可以使用複印機的精度進行操作。由於LSTM模型的出現,已經有幾個RNN架構計劃使用網絡門控機製。
screenshot
任何機製都有它的局限性,下麵我們來了解一下,具有門控機製的RNN模型的局限性,假設你有100000符號序列,第一個符號必須通過門控機製100000次。除了LSTM模型的門,其他的門都可能是不完全開放的,假設門是99.99%開的,信號從第一個符號將降低到0.9999¹⁰⁰⁰⁰⁰原始值的0.0000454。所以即使嚴格執行複印機模型精度,如果序列是從一開始就是非常長的信息序列,最後的結果是信息還是會遭受到很大的損失。
為了克服現有RNN架構的局限性,一個新的模型需要包括反饋連接到每個處理步驟,而不僅僅是前麵的步驟。 一個解決方案是使用注意機製,假設我們想對時間序列數據進行建模使用循環神經網絡(RNN)並且使用注意機製。 在每一個處理步驟,RNN的輸出都要被注意機製模型加權。 然後將每一個步驟加權輸出聚合在一起加權平均。加權平均值的結果稱為上下文向量。 上下文向量可以表示信息在數據中的任何時間點的聚合效果。
screenshot
注意機製的主要約束是對整個時間序列數據隻產生一個上下文向量。 在生成上下文向量之前,必須將整個數據序列讀入模型。換句話說,注意機製是靜態的。為了克服這個限製,我們最近提出了一種新的方法來計算注意機製——使用移動平均值。因為注意機製隻不過是一個加權平均值,所以它的計算是一個正在運行的計算過程。這需要從每個處理步驟保存分子和分母,以在下一次迭代中使用。通過保持注意機製的移動平均值,每個時間步長都能產生一個新的上下文向量。通過這種方法,注意機製變得動態,可以在模型運行中計算。
我們決定讓我們的方法更上一層樓。我們意識到,注意機製的輸出可以反饋到注意機製在下一個處理步驟。由此產生的模型代表了一種新的遞歸神經網絡(RNN)模型。考慮到加權平均是遞歸定義的,我們決定把這種方法稱為遞歸加權平均(RWA)模型。
screenshot
我們開始用幾個玩具問題來測試RWA模型,並將其性能與LSTM模型進行比較。在每一個任務中,隻有一個除外,RWA模型使用更少的培訓步驟獲得了就更快的學習速度。此外,每一個訓練步驟的RWA模型需要更少的時間,下麵對比結果。
screenshot
screenshot
從圖中可以看出,RWA模型能更好地擴展到更長的序列。 我們不期望RWA模型總是優於並且能夠RNN模型,想LSTM那樣。LSTM模型可能是更好的選擇(在一些例子中),當最近的信息比舊信息更重要時。這就是說,我們可能想要一個擁有對過去有記憶的RNN模型,這也是我們除了RWA模型以外的替代方法。
作者介紹:Jared Ostmeyer
計算生物學博士後研究員。 目前在德州達拉斯生活和工作。
作者:Thomas Kipf
本文由北郵@愛可可-愛生活推薦,阿裏雲雲棲社區翻譯。
文章原標題《Rethinking Recurrent Neural Networks》,
作者:Jared Ostmeyer,譯者:袁虎,審閱:我是主題曲哥哥,
附件為原文的pdf。
文章為簡譯,更為詳細的內容,請查看原文

最後更新:2017-06-06 07:35:58

  上一篇:go  《Microsoft.NET企業級應用架構設計(第2版)》——2.3 走出混亂
  下一篇:go  《Microsoft.NET企業級應用架構設計(第2版)》——導讀