十三 發自 凹非寺
量子位 報道 | 公眾號 QbitAI
每年春節,只要在飯桌上,七大姑八大姨曾對你“殷切關懷”的情景便會歷歷在目。
對人類來說,記住一些東西并能回憶起來,是件司空見慣的事情。
而現在,連 AI 智能體都能做到這點了!
人類對過往的事情可以做出理智的判斷,并基于這樣的判斷,對未來做出決策。
但對于智能體來說,就涉及到判斷和對過去行為的價值評估(評估信用分配)的問題。
但現有的評估信用分配的方法,無法解決與結果存在長時間間隔的任務。
簡單來說,就是未來不可期。
DeepMind便提出了一種方法,讓智能體也夠在它的“記憶”里來個時間旅行。
近日還登上了Nature Communication。
這個方法其實是一種范式。
它能讓智能體使用特定的記憶,來信任過去的行為,并對未來做出正確的決策。
該方法也得到了網友們的認可。
很不錯的一項工作,我認為向前邁了一大步。
很不錯的一項工作,我認為向前邁了一大步。
時間旅行的概念很有意思,尤其是與我們自己以及環境提供的記憶相關時。
時間旅行的概念很有意思,尤其是與我們自己以及環境提供的記憶相關時。
這項工作的影響或許不僅于此,正如DeepMind所述:
范式拓寬了AI研究的范疇,并提供了可能激發神經科學、心理學和行為經濟學模型的機械行為解釋。
范式拓寬了AI研究的范疇,并提供了可能激發神經科學、心理學和行為經濟學模型的機械行為解釋。
為了做到這一點,首要的工作就是形式化任務結構。
主要包括2種類型。
△圖1:任務設置和重構記憶智能體(RMA)
圖1(a)就是兩種類型的任務,每個任務都有3個階段。
△圖1(a)
第一種任務(信息獲取任務)中:
在P1階段,智能體必須在沒有即時獎勵的情況下探索一個環境以獲取信息;
在P2階段,智能體在很長一段時間內從事一項不相關的干擾任務,并獲得了許多附帶的獎勵;
在P3階段,智能體必須利用P1中獲取的信息獲取遠端獎勵(distal reward)。
第二種任務中(因果任務)中:
在P1階段,智能體必須采取行動觸發 P1中僅具有長期因果關系的某個事件;
在P2階段,同樣是一個干擾任務;
在P3階段,為了取得成功,智能體必須利用 P1活動引起的環境變化來獲得成功。
由于提出的解決方案的一個關鍵組成部分涉及記憶編碼和提取,研究人員將這三個階段分別視作:
P1→動作和記憶提取;
P2→干擾物(distractor);
P3→經驗(exploitation)。
在研究這種結構的完整任務之前,考慮一個更簡單的任務。
DeepMind的研究人員把它稱作“被動視覺匹配(Passive Visual Match )”,如圖1(b)所示。
△圖1(b)
這是一個被動的過程,也就是說,智能體不用采取任何主動的措施去采集信息,就好像一個人在街上走路,不經意間就觀察到了某些信息一樣。
每個片段的開頭都會面對一個走廊,走廊面朝著墻壁,墻上畫著一個顏色隨機的正方形。
在t=0的時候,就對應于上述任務結構中的P1階段,只是不需要實現任何目標。
在t=125的時候,智能體被轉移到另外一個空間,它在這里會采集30秒的蘋果,這就相當于干擾,也就是任務結構中的P2階段。
在t=526的時候,智能體再次被轉移到別的空間,也就是對應于任務結構的P3階段。這里的墻面有4個不同顏色的方形,若是智能體能夠走到和第一個空間中顏色相同的方形面前,那么他就會獲得遠程獎勵。
當然,遠程獎勵遠遠小于總干擾獎勵。
接下來,為了解決上述的任務,研究人員使用了一個AI智能體,命名為RMA(Reconstructive Memory Agent)。如圖1(c)所示。
△圖1(c)
這個模型的關鍵是結合了一個重構過程,壓縮了有用的感官信息和記憶存儲。
RMA本身沒有為LTCA提供服務的專門功能,但是為TVT算法的操作提供了基礎。
在進行被動視覺匹配訓練時,所有的智能體都能成功完成蘋果采集任務,但只有RMA學習到了如何在P3中選擇P1中所見的方形顏色來獲得遠端獎勵,如圖1(d)所示。
△圖1(d)
在圖1(e)中,可以看到RMA在t=256的時候,所產生的一個注意力權重向量wt,可以與P3的初始階段相對應。
△圖1(e)
不僅如此,RMA除了能夠順利完成這項任務。在諸如CIFAR images30中,RMA也能夠做出正確匹配的選擇(如補充圖所示)。
△補充圖 代碼已開源
這項工作的代碼已經在GitHub開源。
安裝
TVT包的安裝和訓練可以使用如下代碼運行:
tvt/run.sh
運行實驗
啟動:
source tvt_venv/bin/activate
python3 -m tvt.main
important flags
tvt.main可以接受許多flag。
Information logging
logging_frequency:logging控制臺和tensorboard的頻率
logdir:用于tensorboard logging的目錄
Agent configuration
with_memory:默認為True。判斷智能體是否有外部內存。若為False,則智能體只有LSTM內存。
with_reconstruction:默認為True。
gamma:智能體貼現因子。
entropy_cost:熵損失權重。
image_cost_weight:圖像重構損失權重。
read_strength_cost:用于調整內存訪問。
更多開源代碼信息,詳情見文末GitHub鏈接。
傳送門
Nature:
https://nature/articles/s41467-019-13073-w
GitHub:
https://github/deepmind/tvt


