《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業界動態 > 學界 | 老論文沒有源碼?14年神經圖靈機的復現被接收為大會論文

學界 | 老論文沒有源碼?14年神經圖靈機的復現被接收為大會論文

2018-08-15

在篇篇論文都是 state-of-the-art 的年代,論文的可復現性與官方代碼一直受到研究者的關注,我們希望知道實際的模型性能或改進方法到底有沒有原論文寫的那么好。最近都柏林圣三一學院的研究者通過一篇論文描述如何復現 14 年提出的神經圖靈機,并同時公開了源代碼。他們表示原論文沒有提供源代碼,且其它研究者復現的代碼在速度和性能上都有缺陷,因此他們重新使用 TensorFlow 仔細復現了這篇論文。目前該論文已被 ICANN 2018 接收。


項目地址:https://github.com/MarkPKCollier/NeuralTuringMachine


神經圖靈機(NTM)[4] 是幾種新的神經網絡架構 [4, 5, 11] 的一個實例,這些架構被分類為記憶增強神經網絡(MANN)。MANN 的典型特征是存在外部記憶單元。這與門控循環神經網絡(如長短期記憶單元(LSTM),其記憶是一個在時間維度上保持不變的內部向量)不同。LSTM 已在許多商業上重要的序列學習任務中取得了當前最優性能,如手寫體識別 [2]、機器翻譯 [12] 和語音識別 [3]。但是,已經證明了 MANN 在一些需要一個大型存儲器和/或復雜的存儲器訪問模式的人工序列學習任務上優于 LSTM,如長序列記憶和圖遍歷 [4, 5, 6, 11]。


NTM 文章的原作者沒有提供其實現的源碼。NTM 的開源實現是存在的,但是其中一些實現報告顯示,在訓練期間,它們的實現梯度有時會變成 NaN,導致培訓失敗。然而其他開源代碼會報告收斂緩慢或不報告其實現的學習速度。缺乏可靠的 NTM 開源實現使得從業者更難將 NTM 應用于新問題,使得研究者更難去改進 NTM 框架。


本文定義了一個成功的 NTM 實現,該實現學會完成三個基準的序列學習任務 [4]。作者指定了控制 NTM 實現的可選參數集合,并對其他開源的 NTM 實現中的許多記憶內容初始化方案進行了經驗對比,發現如何選擇 NTM 記憶內容初始化方案是能否成功實現 NTM 的關鍵。作者在另一個開源的 NTM 實現上建立了 Tensorflow 實現,但在得出實驗結果之后,作者對記憶內容初始化、控制器頭部參數計算和接口進行了重大改變,從而使其能更快地收斂,更可靠地優化,并且更容易與現有的 Tensorflow 方法集成。


這個存儲庫包含神經圖靈機的一個穩定、成功的 Tensorflow 實現,已經在原論文的 Copy,Repeat Copy 和 Associative Recall 任務上進行了測試。


應用


from ntm import NTMCell

cell = NTMCell(num_controller_layers, num_controller_units, num_memory_locations, memory_size,
 num_read_heads, num_write_heads, shift_range=3, output_dim=num_bits_per_output_vector,
 clip_value=clip_controller_output_to_value)

outputs, _ = tf.nn.dynamic_rnn(
 cell=cell,
 inputs=inputs,
 time_major=False)


該實現源自另一個開源 NTM 實現 https://github.com/snowkylin/ntm。作者對鏈接的代碼做了微小但有意義的更改,使得實現中的訓練變得更加可靠,收斂更加快速,同時更容易與 Tensorflow 集成。該論文的貢獻是:


作者比較了三種不同的記憶初始化方案并發現將神經圖靈機的記憶內容初始化為小的常數值比隨機初始化或通過記憶初始化的反向傳播效果要好。

作者將 NTM 控制器的輸出剪切到一個范圍內,有助于解決優化的困難。

NTMCell 實現了 Tensorflow RNNCell 接口(https://www.tensorflow.org/api_docs/python/tf/contrib/rnn/RNNCell),因此可以直接與 tf.nn.dynamic_rnn 等一起使用。

從未像其他一些實現一樣,看到損失出現 NaN 的情況。

作者實現了 NTM 論文中 5 個任務中的 3 個。與 LSTM、DNC 和 3 個記憶內容初始化方案相比,作者進行了很多實驗并報告了實現的收斂速度和泛化性能。


論文:Implementing Neural Turing Machines

微信圖片_20180815134159.jpg


論文地址:https://arxiv.org/abs/1807.08518


神經圖靈機(NTM)是記憶增強神經網絡的一個實例,是一類新的循環神經網絡,通過引入外部記憶單元將計算從存儲器中分離。NTM 在一些序列學習任務上的性能要優于長短期記憶單元。存在許多 NTM 的開源實現,但是它們在訓練時不穩定,同時/或者無法重現 NTM 該有的性能。本文介紹了成功實現 NTM 的細節。本文的實現學習去解決 NTM 原文中的 3 個序列學習任務。作者發現記憶內容初始化方案的選擇對于能否成功實現 NTM 至關重要。記憶內容初始化為小常數值的網絡平均收斂速度是第二名記憶內容初始化方案的 2 倍。


2 神經圖靈機


NTM 由一個控制器網絡和一個外部記憶單元組成,控制器網絡可以是一個前饋神經網絡或一個循環神經網絡,外部存儲器單元是 N * W 的記憶矩陣,其中 N 表示記憶位置的數量,W 表示每個記憶單元的維度。無論控制器是否是循環神經網絡,整個架構都是循環的,因為記憶矩陣的內容不隨時間而變化。控制器具有訪問記憶矩陣的讀寫頭。在一個特定記憶單元上讀或寫的影響通過一個軟注意力機制進行加權。這種尋址機制類似于神經機器翻譯中使用的注意力機制 [1, 9],不同之處在于,它將基于位置的尋址與這些注意力機制中基于內容的尋址相結合。


5 結果


5.1 記憶初始化方案對比


作者根據常數初始化方案初始化的 NTM 收斂到接近 0 誤差,比學習的初始化方案快約 3.5 倍,而隨機初始化方案無法在分配的時間內解決 Copy 任務(圖 1)。

微信圖片_20180815134242.jpg

圖 1:Copy 任務不同記憶初始化方案下,學習曲線的對比。對于根據常數、學習的和隨機的初始化方案初始化的每一個 NTM 來說,誤差是每訓練 10 次后取中值。


根據常數初始化方案初始化的 NTM 收斂到接近 0 的誤差,比學習的初始化方案快約 1.15 倍,比隨機初始化方案快 5.3 倍(圖 3)。

微信圖片_20180815134316.jpg

圖 3:Associative Recall 任務在不同記憶初始化方案下,學習曲線的對比。對于根據常數、學習的和隨機的初始化方案初始化的每一個 NTM 來說,誤差是每訓練 10 次后取中值。


5.2 架構比較

微信圖片_20180815134357.jpg

圖 4:Copy 任務采用不同架構時,學習曲線的對比。對于 DNC,NTM 和 LSTM 來說,誤差是每訓練 10 次后取中值。

微信圖片_20180815134422.jpg

圖 6:Associative Recall 任務采用不同架構時學習曲線的對比。對于 DNC、NTM 和 LSTM 來說,誤差是每訓練 10 次后取中值。


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 亚洲精品成a人在线观看| 国产成人午夜精华液| 久久久久久影院久久久久免费精品国产小说| 玉蒲团之偷情宝鉴电影| 国产呦系列呦交| 91视频免费观看| 成人亚洲欧美激情在线电影| 亚洲va成无码人在线观看| 男国少年梦电影| 国产一区在线视频观看| 三级网站免费观看| 天天av天天av天天透| 中文字幕精品无码一区二区三区| 欧洲精品在线观看| 亚洲综合精品伊人久久| 美国农夫激情在线综合| 国产成人无码午夜视频在线观看| 91视频啊啊啊| 女人双腿搬开让男人桶| 丰满人妻一区二区三区视频| 最近最新在线中文字幕| 亚洲欧美校园春色| 精品久久久久久无码专区不卡| 国产亚洲精品欧洲在线观看| 金8国欧美系列在线| 在线看亚洲十八禁网站| 一本高清在线视频| 日本亚洲欧美在线视观看| 亚洲国产一区二区三区在线观看 | 国产真实露脸乱子伦| JLZZJLZZ全部女高潮| 成年人免费小视频| 久久精品国产精品亚洲艾草网| 欧美日韩一区二区三区四区在线观看 | 波多野结衣xfplay在线观看| 在线观看国产一区亚洲bd| 丁香花免费高清视频完整版| 日本中文字幕第一页| 久草视频在线资源| 欧美日韩三级在线观看| 亚洲黄色第一页|