神經圖靈機

神經圖靈機Neural Turing MachineNTM)係一種起源於 2014 年嘅記憶增強(memory-augmented;指有連接住網絡外嘅記憶單位)遞迴神經網絡架構,一部神經圖靈機主要有幾個部份[1][2]

  • 一個神經網絡控制器(controller);呢個部份係一個多層感知機或者遞迴神經網絡[註 1],負責同外界互動(由外界攞向量輸入或者俾向量輸出去外界)同控制成個系統(會向系統其餘部份下指令)。
  • 一個記憶(memory);呢個部份負責儲住啲記憶。
  • 一個或者多個記憶讀取器(read head)、同
  • 一個或者多個記憶存寫器(write head)。

喺應用上,神經圖靈機可以攞嚟模擬工作記憶(working memory;記憶功能嘅一種,指個心靈暫時儲住要用嘅資訊)涉及嘅認知過程[1][3]

圖解

[編輯]

神經圖靈機嘅結構圖解如下[3]

記憶讀取

[編輯]

記憶讀取:將記憶想像成一個 矩陣,當中 係記憶位置嘅數量,而 係每個記憶位置嘅維度(簡單講就係嗰個位置可以記住幾多個數值)。設 做呢個矩陣喺時間點 嘅狀態, 係一個由記憶讀取器去嗰 個位置嘅權重向量,而且做咗標準化,即係話

喺每次做記憶讀取嗰陣,個控制器都會攞到一個 維嘅向量 ,而

上述嘅嘢簡單講如下:記憶讀取器同記憶之間會有個權重,呢啲權重影響「當記憶讀取器要求提取記憶嗰陣,會有邊份記憶受到提取,而提取咗嗰份記憶就係 [1]

記憶存寫

[編輯]

記憶存寫:一個記憶存寫有兩個部份-清除(erase)同添加(add);喺每一個時間點 ,記憶存寫器都會俾出三個向量-

  1. 一個 維嘅權重向量
  2. 一個 維嘅清除向量 、同
  3. 一個 維嘅添加向量

每一個記憶向量 都會受到清除向量改造:

係一個完全由 1 組成嘅向量);

然後個添加向量就會做嘢:

註釋

[編輯]
  1. 就算個控制器係一個前饋網絡,因為成部神經圖靈機整體有記憶功能,所以部神經圖靈機整體依然係一個遞迴網絡。

睇埋

[編輯]

[編輯]
  1. 1.0 1.1 1.2 Graves, Alex; Wayne, Greg; Danihelka, Ivo (2014). "Neural Turing Machines" (PDF). arXiv:1410.5401.
  2. Collier, Mark; Beel, Joeran (2018), "Implementing Neural Turing Machines", Artificial Neural Networks and Machine Learning - ICANN 2018, Springer International Publishing, pp. 94–104,
  3. 3.0 3.1 NTM: Neural Turing Machines. Medium.