RLax(發(fā)音為“ relax”)是建立在JAX之上的庫,它公開了用于實(shí)施強(qiáng)化學(xué)習(xí)智能體的有用構(gòu)建塊。。
報(bào)道:深度強(qiáng)化學(xué)習(xí)實(shí)驗(yàn)室
作者:DeepRL
來源:Github/DeepMind
RLax及背景
強(qiáng)化學(xué)習(xí)主要用于研究學(xué)習(xí)系統(tǒng)(智能體)的問題,該學(xué)習(xí)系統(tǒng)必須學(xué)習(xí)與環(huán)境進(jìn)行交互的信息。智能體和環(huán)境在不連續(xù)的步驟上進(jìn)行交互。在每個(gè)步驟中,智能體都會(huì)選擇一個(gè)動(dòng)作,并會(huì)提供一個(gè)返回的環(huán)境狀態(tài)(觀察)狀態(tài)(部分)和標(biāo)量反饋信號(hào)(獎(jiǎng)勵(lì))。智能體的行為以行為的概率分布為特征,該分布取決于對(duì)環(huán)境(策略)的過去觀察。智能體尋求一種策略,該策略將從任何給定步驟中最大化從該點(diǎn)開始(返回)將收集的折扣累積獎(jiǎng)勵(lì)。智能體策略或環(huán)境動(dòng)態(tài)本身通常是隨機(jī)的。在這種情況下,回報(bào)是一個(gè)隨機(jī)變量,并且通常將更精確的智能體策略指定為在智能體和環(huán)境的隨機(jī)性下最大化回報(bào)期望(值)的策略。
RLax(發(fā)音為“ relax”)是建立在JAX之上的庫,它公開了用于實(shí)施強(qiáng)化學(xué)習(xí)智能體的有用構(gòu)建塊。
安裝與使用
可以使用以下命令從github直接使用pip安裝RLax:
pip install git+git://github.com/deepmind/rlax.git.
然后可以使用JAX的jax.jit函數(shù)為不同的硬件(例如CPU,GPU,TPU)及時(shí)編譯所有RLax代碼。
強(qiáng)化學(xué)習(xí)算法
增強(qiáng)學(xué)習(xí)算法包含三個(gè)原型系列:
- 那些估計(jì)狀態(tài)和動(dòng)作的價(jià)值,并通過檢查推斷策略的行為(例如,通過選擇估計(jì)值最高的動(dòng)作)
- 學(xué)習(xí)環(huán)境模型(能夠預(yù)測(cè)觀察結(jié)果和獎(jiǎng)勵(lì)),并通過計(jì)劃推斷策略。
- 那些參數(shù)化可以直接執(zhí)行的策略的參數(shù),
無論如何,策略,價(jià)值或模型只是功能。在深度強(qiáng)化學(xué)習(xí)中,此類功能由神經(jīng)網(wǎng)絡(luò)表示。在這種情況下,通常將強(qiáng)化學(xué)習(xí)更新公式化為可區(qū)分的損失函數(shù)(類似于(非)監(jiān)督學(xué)習(xí))。在自動(dòng)區(qū)分下,將恢復(fù)原始更新規(guī)則。
但是請(qǐng)注意,尤其是只有以正確的方式對(duì)輸入數(shù)據(jù)進(jìn)行采樣時(shí),更新才有效。例如,僅當(dāng)輸入軌跡是當(dāng)前策略的無偏樣本時(shí),策略梯度損失才有效。即數(shù)據(jù)是符合政策的。該庫無法檢查或強(qiáng)制執(zhí)行此類約束。但是,在函數(shù)的文檔字符串中提供了指向描述如何使用每種操作的論文的鏈接。
命名約定和開發(fā)人員指南
我們?yōu)榕c單一經(jīng)驗(yàn)流交互的代理定義功能和操作。JAX構(gòu)造vmap可用于將這些相同的功能應(yīng)用于批處理(例如,支持重放和并行數(shù)據(jù)生成)。
許多功能在連續(xù)的時(shí)間步中考慮策略,行動(dòng),獎(jiǎng)勵(lì),價(jià)值,以便計(jì)算其輸出。在這種情況下,qm_t和tm1通常用于說明每個(gè)輸入是在哪個(gè)步驟上生成的,例如:
- q_tm1:轉(zhuǎn)換的源狀態(tài)中的操作值。
- a_tm1:在源狀態(tài)下選擇的操作。
- r_t:在目標(biāo)狀態(tài)下收集的結(jié)果獎(jiǎng)勵(lì)。
- discount_t:與轉(zhuǎn)換關(guān)聯(lián)的折扣。
- q_t:目標(biāo)狀態(tài)下的操作值。
為每個(gè)功能提供了廣泛的測(cè)試。當(dāng)使用jax.jit編譯為XLA以及使用jax.vmap執(zhí)行批處理操作時(shí),所有測(cè)試還應(yīng)驗(yàn)證rlax函數(shù)的輸出。
引用
@software{rlax2020github,
author = {David Budden and Matteo Hessel and John Quan and Steven Kapturowski},
title = {{RL}ax: {R}einforcement {L}earning in {JAX}},
url = {http://github.com/deepmind/rlax},
version = {0.0.1a0},
year = {2020},
}
專注深度強(qiáng)化學(xué)習(xí)前沿技術(shù)干貨,論文,框架,學(xué)習(xí)路線等,歡迎關(guān)注微信公眾號(hào)。
審核編輯 黃昊宇
-
強(qiáng)化學(xué)習(xí)
+關(guān)注
關(guān)注
4文章
265瀏覽量
11197 -
DeepMind
+關(guān)注
關(guān)注
0文章
129瀏覽量
10812
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論