DeepMind發布Acme,高效分布式強化學習算法框架輕松編寫RL智能體
DeepMind 本周發布了一個強化學習優化框架 Acme,可以讓AI驅動的智能體在不同的執行規模上運行,從而簡化強化學習算法的開發過程。
Acme 背后的工程師和研究人員共同撰寫了一篇關于這項工作的技術論文,根據他們的說法,用這種方法創建智能體,并行性會更好。
強化學習可以讓智能體與環境互動,生成他們自己的訓練數據,這在電子游戲、機器人技術、自動駕駛機器人出租車等領域取得了突破。
隨著所使用的培訓數據量的增加,這促使設計了一個系統,使智能體與環境實例相互作用,迅速積累經驗。DeepMind 斷言,將算法的單進程原型擴展到分布式系統通常需要重新實現相關的智能體,這就是 Acme 框架的用武之地。
DeepMind研究員寫道,「Acme 是一個用于構建可讀、高效、面向研究的 RL 算法的框架。Acme 的核心是設計用于簡單描述 RL 智能體,這些智能體可以在不同規模的執行中運行,包括分布式智能體。」
「通過發布 Acme,我們的目標是使學術界和工業實驗室開發的各種 RL 算法的結果更容易為整個機器學習社區復制和擴展。」
Acme 框架要實現的目標?
研究者明確指出了Acme框架的高級目標:
1 實現方法和結果可重復性
2 簡化新算法設計的方式
3 提高RL智能體的可讀性
如何實現這一目標?
從最高層次來看,我們可以將 Acme 視為一個經典的強化學習接口,其作用是將 actor(比如一個動作選擇智能體)連接到環境。
actor 是一個具有選擇動作、觀察并實現自我更新能力的簡單接口。
從內部看,學習智能體可以拆分為「執行」和「學習」兩部分。從表面上看,這使得我們在不同的多智能體之間重復使用 acting portion。
但是,更重要的是,這提供了一個可以對學習過程進行劃分和并行化處理的關鍵邊界。我們甚至可以從此處按比例縮小規模,并在沒有環境,只有固定數據集的情況下無縫攻擊批RL設置(batch RL setting)。
這些不同級別的復雜度的圖示如下:
除了 Acme 的基礎框架之外,研究人員還發布了用 Acme 框架創建的大量智能體的單進程實例。
通過跨越執行/學習邊界,我們能夠以分布式方式運行這些相同的智能體,過程中的改變最小。
Acme 框架首個版本主要針對學生和研究人員使用最多的單進程智能體。
研究者在 control suite、Atari 和 bsuite 等環境中對這些智能體進行了基準測試。
Acme 框架有哪些優勢?
Acme是一組開發套件,用于培訓強化學習智能體,用來解決復雜性和規模的問題,其組件用于從算法和策略到學習者等不同抽象層次來指導代理。
這樣做可以讓idea快速迭代,并在生產過程中對這些 idea 進行評估,主要是通過訓練循環、強迫性日志記錄和檢查點。
一種特殊類型的 Acme actor 包括執行和學習兩個組件ーー它們都被稱為「智能體」ーー它們的狀態更新是由learner組件中的一些步驟觸發的。也就是說,智能體大部分情況會把他們的行動選擇權交給他們自己的執行組件。
在 Acme 框架中,actors與環境密切交互,通過觀察環境,執行動作,反過來為環境提供素材。
在觀察了隨后發生的變化后,actors 有機會更新其狀態,這通常與其行動選擇策略有關,這些策略決定了它們為應對環境而采取的行動。
Acme 提供了一個位于 actor 和 learner 組件之間的數據集模塊,該模塊由一個名為 Reverb 的低級存儲系統支持,DeepMind 本周也剛剛發布這個系統。此外,該框架建立了一個接入Reverb的通用接口,使不同風格的預處理和觀察數據的持續聚合成為可能。
Reverb是一個專為機器學習研究設計的高效、易用的數據存儲和傳輸系統。Reverb主要作為分布式強化學習算法的經驗回放(experience replay)系統,但該系統也支持多種數據結構表示,如FIFO、LIFO和優先級隊列等。
在 Acme 當中,執行、學習和存儲組件被劃分為不同的線程或進程,這帶來了兩個好處: 環境交互與學習過程非同步發生,以及數據生成的加速。
在其他地方,Acme允許從學習到執行以任何速率運行,只要流程保持在一定的定義公差內就可以不受阻礙。例如,如果一個進程由于網絡問題或資源不足而落后于另一個進程,速率限制器將阻塞落后者,而另一個進程將趕上來。
除了這些工具和資源,Acme 還附帶了一組示例智能體,作為各自強化學習算法以及強大研究基線的參考實現。
DeepMind研究人員寫道,「通過提供這些... ... 我們希望 Acme 將有助于提高[強化學習]的可再生性地位,并為學術研究者提供簡單的組件來創造新的智能體。」「此外,我們的baseline應該提供額外的衡量標準,以衡量該領域的進展。」
GitHub地址:https://github.com/deepmind/acme
論文地址:https://arxiv.org/pdf/2006.00979v1.pdf