當前位置:
首頁 > 最新 > DeepMind研究人員開發出神經算術邏輯單元

DeepMind研究人員開發出神經算術邏輯單元

轉載請註明出處

谷歌公司的DeepMind的一個研究小組最近開發了一種新的架構來解決神經網路難以舉一反三的局限,使得在神經網路可以在訓練的數值範圍內外都更好地實現結果的一般化。

機器語言程序僅在它們所訓練的範圍值內學習恆等函數

在訓練的數字範圍外,平均誤差嚴重上升

包括昆蟲,哺乳動物和人類等在內的許多物種都已被觀察到具有表達和使用數值數量的能力。這表明,基本的定量推理是智力的重要組成部分,具有許多進化優勢。

此種定量推理能力對機器而言非常有價值,它可以使機器更快、更有效地完成涉及數字操作的任務。然而,至今為止,如果被訓練用於表示和操縱數字信息的神經網路遇到超出曾經訓練的值域的問題,很少能夠舉一反三地交出令人滿意的答卷。

谷歌公司的DeepMind的一個研究小組最近開發了一種新的架構來解決這一局限,使得在神經網路可以在訓練的數值範圍內外都更好地實現結果的一般化。他們的研究預先發布在了arXiv上,可以為開發更先進的、用於完成定量推理任務的機器學習工具提供信息。

「當標準的神經架構被訓練數到某一數字時,它們往往難以數到更大的數,」該項目首席研究員安德魯?查斯克(Andrew Trask)告訴Tech Xplore。「我們研究了這個限制,並發現在其他算術函數中也存在這個問題。這讓我們假設,神經網路像學習辭彙庫有限的文字那樣學習數字。這使得他們無法恰當地推理使用包含以前沒見過的數字的函數。而我們的目標是提出一種可以進行更好推斷的新架構。」

神經累加器(NAC)是其輸入值的線性變換。變換矩陣是tanh(W)和σ(M)的元素乘積。神經算術邏輯單元(NALU)使用兩個具有綁定權重的NAC來啟用加/減(較小的紫色單元)和乘法/除法(較大的紫色單元),由門(橙色單元)控制

研究人員設計了一種架構,將數值表示為通過原始算術運算符(由學習門控制)來操控的線性激活,以此鼓勵更系統的數字推斷。他們將這個新模塊稱為神經算術邏輯單元(NALU),其靈感來自傳統處理器中的算術邏輯單元。

「數字通常以單熱或分散式形式在神經網路中編碼,而基於數字的函數是在一系列非線性激活的層中學習的,」查斯克解釋說,「我們提議將數字存儲為標量,在每個神經元中存儲一個數字。例如,如果你想存儲數字42,你應該只有一個包含"42"的激活的神經元,而不是用一系列0-1神經元來編碼。」

研究人員還改變了神經網路學習函數的方式。他們沒有採用可以學習任意函數的標準架構,而是設計了一種架構,可以向前傳播預定義的一組被認為可能有用的函數(如,加法,乘法或除法),並使用神經架構來學習基於這些函數的注意機制。

「這些注意機制隨後決定何時何地應用每個可能有用的函數,而不是學習該函數本身,」查斯克說,「這是創建具有理想的數學函數學習偏差的深度神經網路的一般原則。」

上圖是來自gridworl時間跟蹤任務的幀。代理(灰色)必須在指定時間內移動到目的地(紅色)。下圖表明NAC提高了基於A3C演算法的代理用於此任務的推理能力

他們的測試表明,NALU增強型神經網路可以學習執行各種任務,例如時間跟蹤,對數字圖像執行算術功能,將數字語言翻譯成實值標量,執行計算機代碼和計算圖像中的對象。

與傳統架構相比,它們的模塊在訓練期間呈現的數值範圍內外都獲得了明顯更好的一般化能力。雖然NALU可能不是每項任務的理想解決方案,但他們的研究提供了一種通用的設計策略,可以用於創建在某一特定函數集良好運作的模型。

「關於深層神經網路應該從一組預定義的函數中進行選擇,並學習控制函數使用場合的注意機制,這是一個非常具有延展性的想法。」查斯克解釋道,「在這項研究中,我們探索了簡單的算術函數(加法,減法,乘法和除法),但我們對將來在更強大的函數上學習注意機制的可能性感到興奮,也許我們可以將目前已經觀察到的推理結果拓展應用到其它領域。」

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 電科芯雲 的精彩文章:

物理學家開發出「量子秒錶」,可將時間存儲在量子存儲器中

TAG:電科芯雲 |