谷歌大腦新研究:強化學習如何學會用聲音來觀察?
校對 |?維克多
人類已經證明,大腦中的神經系統擁有為不斷適應外界環境的變化而改變自身結構的能力。大腦內部的突觸、神經元之間的連接可以由于學習和經驗的影響建立新的連接。
相應的,感官替代(sensory substitution)這一天賦也存在人類技能樹之中,例如有些天生失明的人能夠通過將圖像轉換成聲音學會感知人體輪廓形狀的能力。
如果讓AI擁有這種能力,它也能像蝙蝠和海豚一樣,能夠利用其耳朵通過聲音和回聲來‘看’周圍的世界一樣。
近日,來自谷歌大腦的一篇題為 “The Sensory Neuron as a Transformer: Permutation-Invariant Neural Networks for Reinforcement Learning” 的論文證明了 強化學習擁有這種“感官替代”的能力。
論文地址:https://arxiv.org/pdf/2109.02869.pdf
具體而言, 作者在論文中設計了一系列強化學習系統,其能夠將來自環境的每種感覺輸入(sensory inputs)到不相同,卻具有一定聯系的神經網絡中,值得一提的是,這些神經網絡之間沒有固定的關系。 研究表明,這些感覺網絡可以通過訓練來整合本地收到的信息,并且通過注意機制的交流,可以集體達成一個全局一致的方案。
此外,即使在一個事件中,輸入順序被隨機地排列多次,該系統仍然可以執行其任務。
現代深度學習系統通常無法適應感覺輸入的隨機重新排序,除非對模型進行重新訓練或者用戶為模型糾正輸入的順序。然而,meta-learning這項技術,可以幫助模型適應這種變化。例如adaptive weights、Hebbian-learning和model-based等方法。
在論文中,作者研究的agents都有一個共同的特點: 在執行任務時被用來處理感覺輸入,并將輸入突然隨機重新進行排序。 受到與細胞自動機相關的自組織神經網絡的最新發展的啟發,作者在實驗中將每個感覺輸入(可以是連續控制環境中的單個狀態,或者是視覺環境中的一塊像素)輸入一個單獨的神經網絡模塊,該模塊在一段時間內只整合來自這個特定感覺輸入通道的信息。
在本地接收信息的同時,這些單獨的感覺神經網絡模塊也不斷地廣播輸出信息。參考Set Transformer架構,一個注意力機制將這些信息結合起來,形成一個全局的潛代碼(global latent code),然后將其轉換為agent的行動空間。注意力機制可以被看作是神經網絡適應性加權的一種形式,在這種情況下,允許任意數量的感覺輸入以任何隨機順序被處理。
實驗中,作者發現每個單獨的感覺神經網絡模塊,雖然只能接收到局部信息,但仍能共同產生一個全局一致的策略,而且這樣的系統可以被訓練來執行幾個流行的強化學習(RL)環境中的任務。此外,作者設計的系統能夠以任何隨機排列的順序利用不同數量的感覺輸入通道,即使在一個episode中順序再次被重新排列。
如上圖pong agent,即使在給它一個小的屏幕子集(30%),以一個重新排列的順序,也能繼續工作。
另一方面,鼓勵系統學習的置換不變的觀測空間的連貫性表示,會使 policies更加穩健,泛化性更強。研究表明,在沒有額外訓練的情況下,即使加入含有噪聲或冗余信息的其它輸入通道,系統也能繼續運作。在視覺環境中,即使只給它一小部分從屏幕上隨機選擇的區塊,而在測試時,如果給它更多的區塊,系統可以利用額外的信息來表現得更好。
作者還證明, 盡管在單一的固定背景上進行訓練,系統還是能夠推廣到具有不同背景圖像的視覺環境。 最后,為了使訓練更加實用,作者提出了一個行為克隆(behavioral cloning)方案,將用現有方法訓練的策略轉換成具有理想特性的置換不變的策略。

圖注:方法概述

圖注:符號列表
圖注:CartPoleSwingUpHarder中的置換不變agent
在上述演示中,用戶可以隨時重新排列5個輸入的順序,并觀察agent如何適應輸入的新順序。
演示地址:https://attentionneuron.github.io/
圖注:車桿測試
作者報告了每個實驗的1000個測試事件的平均得分和標準偏差。agent只在有5個感覺輸入的環境中進行訓練。
圖注:置換不變的輸出
當作者按原樣輸入傳感器陣列(頂部)或隨機重新排列陣列(底部)時,Attention Neuron層的輸出(16維全局潛代碼)不會改變。黃色代表較高的數值,而藍色代表較低的數值。
圖注:處理未指定數量的額外噪聲通道
在沒有額外訓練的情況下,agent接收15個按重新排列后順序排列的輸入信號,其中10個是純高斯噪聲(σ=0.1),另外5個是來自環境的實際觀察結果。像先前的演示一樣,用戶可以對15個輸入的順序進行重新排列,并觀察agent如何適應新的輸入順序。
圖注:注意力神經元層的輸出在測試情節中的二維嵌入
作者在圖中突出了幾個有代表性的組,并展示了它們的抽樣輸入。每個組我們顯示3個相應的輸入(行),并對每個輸入進行解堆以顯示時間維度(列)。
CarRacing的基本任務(左),修改后的洗屏任務(右)。
作者的agent只在這個環境中訓練。如上圖所示,右邊的屏幕是agent觀察到的,左邊的是人類的視覺觀察到的。人類會發現用重新排列觀察的方式駕駛是非常困難的,因為人類沒有經常接觸到這樣的任務,就像前面提到的 "倒騎自行車 "的例子。
在這項工作中,作者研究了深度學習agents的特性,這些agents可以把它們的觀察作為一個任意排序的、可變長度的感覺輸入列表。通過獨立地處理每個輸入流,并使用注意力整合處理后的信息。即使觀測的順序在一個episode中被隨機地改變了多次,而且沒有進行訓練,agents仍然可以執行任務。我們在下表中報告了每個環境的性能對比結果。

通過打亂agent排序,甚至是不完整的觀測信息,可以驅動它解釋每個局部感覺輸入的意義以及它們與全局的關系,這在目前的許多應用中都有實際用途。例如,當被應用于機器人時,可以避免由于交叉布線或復雜的動態輸入-輸出映射而產生的錯誤。類似于CartPole實驗的設置,加上額外的噪聲通道,可以使一個收到成千上萬的噪聲輸入通道的系統識別出具有相關信息的小的通道子集。
局限性在于, 對于視覺環境,patch size的選擇會影響性能和計算的復雜性。作者發現6x6像素的patch size在任務中很有效,4x4像素的patch size在某種程度上也可發揮效用,但單個像素的觀察卻不能發揮作用。小的patch size也會產生一個大的注意力矩陣,除非使用近似值,否則計算成本可能會過高。
另一個限制是 ,排列組合不變的特性只適用于輸入,而不適用于輸出。雖然觀測結果的排序可以以再次打亂,但行動的排序卻不能。為了使置換不變的輸出發揮作用,每個環節都需要來自環境的反饋以便學習自身和環境之間的關系,包括獎勵信息。
一個頗為有趣的未來研究方向是使行動層也具有相同的屬性,并將每個運動神經元建模為一個使用注意力連接的模塊。有了作者的方法, 就有可能訓練一個具有任意數量的agent,或者用一個單一的被提供了一個獎勵信號作為反饋的policy控制具有不同形態的機器人 。此外,在這項工作中,作者設計的方法接受以前的行動作為反饋信號。然而,反饋信號并不局限于行動。作者表示,其期待看到未來的工作包括環境獎勵等信號,不僅能適應觀察到的環境變化,還能適應自身的變化,以訓練置換不變的 meta-learning agents。
雷鋒網 (公眾號:雷鋒網)
雷鋒網版權文章,未經授權禁止轉載。詳情見。