摘要:深度強化學習的通用插件是一種可附加于大部分原生算法之上,并與其他種類插件兼容的算法類型。根據環(huán)境的不同,原生算法加入合適的插件后形成了不同的變體,并在訓練速度、穩(wěn)定性等方面取得了更好的效果。根據各類變體包含的通用插件在訓練流程中的共性,將它們分為了6類,包括通用網絡模型、內在獎勵、經驗回放、自我博弈、模仿學習和課程學習。綜述了這6類算法中常用的通用插件,介紹了它們的應用場景和在深度強化學習中的主要作用,提出了未來的研究重點:1)提高經驗利用效率;2)設計和訓練出通用神經網絡架構;3)提高算法在稀疏獎勵環(huán)境的探索效率;4)提高算法在現實中應對各種突發(fā)狀況的能力。
關鍵詞:人工智能理論;通用插件;深度強化學習;模型設計;內在獎勵;經驗回放;自我博弈
中圖分類號:TP181
文獻標識碼:A
DOI:10.7535/hbkd.2024yx04003
Researchreviewofgeneralpluginsfordeep"reinforcementlearning
ZHONGXinjian,WANGYonghua,LIMing
(SchoolofAutomation,GuangdongUniversityofTechnology,Guangzhou,Guangdong510006,China)
Abstract:
Thegeneralpurposepluginfordeepreinforcementlearningisatypeofalgorithmthatcanbeattachedtomostnativealgorithmsandiscompatiblewithotherkindsofplugins.Underdifferentenvironments,theoriginalalgorithmformsdifferentvariantsafteraddingappropriateplugins,andachievesbetterresultsintrainingspeedandstability.Accordingtothecommonnessofthegeneralpluginsinthetrainingprocess,thevariantsweredividedintosixcategories,includingthegeneralnetworkmodel,intrinsicreward,experiencereplay,self-play,imitationlearning,andcurriculumlearning.Thegeneralpluginscommonlyusedinthesesixkindsofalgorithmswerereviewed,andtheirapplicationscenariosandmainfunctionsindeepreinforcementlearningwerealsobrieflyintroduced.Thefutureresearchprioritieswereputforward:1)toimprovetheefficiencyofexperienceutilization;2)todesignandtrainageneralneuralnetworkarchitecture;3)toimprovetheefficiencyofalgorithmexplorationinsparserewardenvironment;4)toimprovetheabilityofthealgorithmtodealwithvariousemergenciesinreality.
Keywords:artificialintelligencetheory;
generalplugin;deepreinforcementlearning;modeldesign;intrinsicreward;experiencereplay;self-play
深度強化學習算法[1]在智能決策領域占據重要地位。它能夠針對狀態(tài)輸入做各種塑形,任意調整神經網絡結構[2],既可以輸入圖片到卷積神經網絡(convolutionalneuralnetwork,CNN)[3]中做原始特征提取,也可以把重要數據直接組成一維向量,讓神經網絡做后續(xù)處理,最后輸出需要的決策。因此,深度強化學習算法能夠讓智能體具有超越人類的強大感知力和復雜場景的決策能力。
近年來深度強化學習算法層出不窮。2015年DeepMind團隊將深度神經網絡與Q-Learning[4]相結合,發(fā)表了DeepQ-learning(DQN)[5]算法,在Atari游戲上取得了人類的控制水平,掀起了深度強化學習的研究熱潮,同時也開辟了基于值函數[6]的深度強化學習的研究領域。類似的算法還有DoubleDQN[7]、DuelingDQN[8]等。這一類算法的共同特征是不會直接輸出動作決策的目標,而是通過價值網絡判斷各個動作的價值,價值網絡在獎勵的影響下不斷調整,達到通過動作價值決定最終決策的目標。另一方面,REINFORCE算法[9]在深度神經網絡的加持下,也發(fā)揮了不錯的效果,開辟了基于策略梯度[10]的深度強化學習的研究領域。這一類算法的共同特征是直接通過決策網絡來輸出動作決策,目標是輸出獎勵最高的決策。2類算法殊途同歸,最后發(fā)展成為目前常用的Actor-Critic(簡稱AC)[11]深度強化學習框架。AC算法同時繼承了基于值函數和基于策略梯度的優(yōu)點。目前常用的基于AC的算法有DDPG[12]、TD3[13]、PPO[14]、SAC[15]等。
對上述開創(chuàng)性算法的改進工作陸續(xù)涌現。這些算法的改進內容通常在大部分無模型[16]的強化學習算法上是通用的,這里將其稱為深度強化學習的通用插件。通用插件主要分為以下幾類:第1類是基于神經網絡模型本身的改進,包括狀態(tài)特征的塑造以及中間層的調整。狀態(tài)特征的塑造方式主要可以分為不變向量長度輸入、可變向量長度輸入、矩陣特征輸入。中間層大多數情況下為多個全連接層[17],根據不同的情況可以調整為循環(huán)神經網絡[18]、深度殘差網絡[19]等。第2類是內在獎勵的塑造,這是解決環(huán)境獎勵稀疏的重要手段之一,主要算法是好奇心獎勵[20]以及隨機網絡蒸餾[21]。第3類是經驗回放[22],大多數深度強化學習算法擁有經驗池,從經驗池中存取數據的方式也是深度強化學習研究的重要課題,其中主要算法有優(yōu)先經驗回放[23]和事后經驗回放[24]。第4類是模仿學習[25],主要有2種實施方式,其中一種是在深度強化學習之前做預訓練,另外一種是將模仿作為獎勵穿插于深度強化學習的始終。第5類是自我博弈[26],這是智能體在相互對抗環(huán)境中的主要訓練方法。第6類是課程學習[27],當給定的最終目標難以一次性訓練完成時,給智能體設定階段性的目標。通用插件的共同特點是可以任意插入到原生深度強化學習算法中而不互相沖突,且根據不同的場景進行排列組合能發(fā)揮比原生算法更好的訓練效果。其中,前3類是深度強化學習框架中的基本組成部分,是算法本身需要優(yōu)先考慮的因素;后3類是附加在算法上的訓練方法,有加快訓練速度的作用。插件在深度強化學習中的位置如圖1所示,表1說明了它們所解決的問題。
1基礎框架選擇
1.1模型塑造
在AC框架下,神經網絡模型指代的是Actor和Critic[11]2個網絡。其中Actor網絡的輸入是狀態(tài)特征向量,輸出是動作決策。Critic網絡的輸入是狀態(tài)特征向量和動作決策,輸出是價值預測。這2個模型的塑造主要考慮的是狀態(tài)特征的塑造以及后續(xù)神經網絡的調整,常用的模型塑造方法如圖2所示。
1.1.1狀態(tài)特征塑造
狀態(tài)特征塑造[28]是智能體獲取信息的來源。對于特定的智能體來說,能夠執(zhí)行動作決策的種類通常是固定的,可以調整的范圍很小。但是狀態(tài)特征是不固定的,它往往來自于環(huán)境所給予的有用信息,有用信息能夠加快訓練速度,比算法本身的改進產生更好的訓練效果。因此,調整狀態(tài)特征使智能體從環(huán)境中獲取更多有用的信息,是模型塑造的首要考慮目標。狀態(tài)特征主要可分為不變向量長度輸入、可變向量長度輸入、矩陣特征輸入。這幾種狀態(tài)特征可以選擇性地進行拼接,共存于一個網絡之中。
不變向量長度輸入是構建狀態(tài)特征最常用的手段,通常包含了智能體本身的信息,主要有:智能體整體所處的位置、前進速度、旋轉速度、子物體的相對位置信息等。此外,如果環(huán)境中提供的信息量相對不變,這部分信息也將添加到不變向量長度輸入中。如果環(huán)境提供的信息過多,則需要有選擇地固定接收最有用的部分信息。相關的方法有2種:
第1種是直接篩選聯系最緊密的信息,例如將離智能體最近的數個物體作為不變向量長度輸入的一部分;第2種方法是在智能體上安裝傳感器,由傳感器返回信息,保證每次返回信息的長度是固定的[29]。如圖3所示,在智能體上安裝射線傳感器,每個傳感器返回探測到的物體種類和距離,無需關心場景中物體的數量和位置。這種塑造方式可以大大簡化狀態(tài)特征,加快訓練速度,但同時也會損失掉很多狀態(tài)信息,需要根據環(huán)境對傳感器的數量和返回的信息進行合理的配置。
可變向量長度輸入是解決環(huán)境信息長短不確定的方式之一。在一些應用場景下環(huán)境的信息量是變化的,例如物體的種類和個數并不確定,但是每一個物體的信息都不能隨意舍棄,這時可變向量長度輸入是一個較好的解決方案。自注意力機制(self-attention)[30]網絡能夠接收可變長度輸入的場景網絡結構,可以提取出固定長度的一維特征向量,再用不變向量長度輸入的方式做后續(xù)處理。
矩陣特征主要分為2種類型的信息:一種是圖像輸入;另一種是其他矩陣類型信息。其中圖像輸入直接獲取圖片作為狀態(tài)特征的一部分。圖片的像素點數以百萬計,導致狀態(tài)特征信息量非常龐大,通常情況下將圖像處理成灰度圖來降低訓練難度。在可以提取出重要狀態(tài)特征的情況下,不建議直接采用圖像作為狀態(tài)特征。其他矩陣類型信息包括了除圖像本身以外其他可作為矩陣處理的信息,通常在環(huán)境中需要處理的物體較多的情況下使用[31]。如圖4所示,將智能體周圍環(huán)境劃分成若干個大小相等的方形區(qū)域來獲取環(huán)境信息,當區(qū)域中沒有物體的時候,值設為0,反之設為對應種類的離散值[29]。圖4中不同顏色的區(qū)域代表不同的狀態(tài),和像素值一樣,這種矩陣信息也可以用卷積神經網絡來進行處理。每個格子的區(qū)域大小需要根據環(huán)境來進行設定,區(qū)域越小,狀態(tài)特征的信息越精準,但會增加網絡復雜度和訓練時長。這種構建矩陣信息的方式適合在空間物體較多且較為復雜時使用。
在單一應用環(huán)境下,只需要在上述的狀態(tài)特征中選取一種方式來塑造模型。在一些大語言模型的場景下,多模態(tài)輸入是需要考慮的問題。可以利用多種類型的網絡對不同類型的數據進行處理,將特征提取出來。因此需要綜合應用多種網絡,采用連接、加權求和以及注意力機制等策略將數據融合為統一的狀態(tài)特征表現形式。狀態(tài)特征可使用狀態(tài)疊加的形式[29],把連續(xù)k個時刻的狀態(tài)拼接到一起,形成一個更為龐大的狀態(tài)特征,這讓智能體不僅同時掌握k個時刻的狀態(tài)特征,學習到狀態(tài)變化的過程,還讓智能體擁有了短時記憶能力,在一定程度上能替代循環(huán)神經網絡的功能。但是狀態(tài)特征的復雜化會加重訓練負擔,需要綜合考慮模型復雜度和訓練難度。表2總結了不同狀態(tài)塑造方式的優(yōu)缺點和應用場景。
1.1.2模型選擇
基于上文狀態(tài)特征的塑造,用于構建模型的常用網絡是卷積神經網絡、循環(huán)神經網絡、自注意力機制、Transformer。
卷積神經網絡是提取矩陣類型向量特征的一種手段。利用多種卷積核(Inception模塊)[32]同時提取矩陣特征信息,能達到更好的特征提取效果。利用深度殘差網絡[33]解決梯度消失的問題,可以提高訓練效率。輸入的矩陣數據之間一般存在空間上的聯系,例如上一小節(jié)所述的圖像信息以及人為構建的矩陣區(qū)域信息。但是處理這2種信息的方式存在差別,處理圖像信息時,卷積神經網絡通常使用卷積層、池化層和激活函數的循環(huán)疊加來進行處理;處理矩陣區(qū)域信息等其他數據時,通常只使用卷積層和激活函數。池化層的作用是大幅度提取特征信息,使得信息量減少數倍。在圖像信息上,像素這樣的矩陣信息較多,信息壓縮并不會帶來太大的影響,但在自己構建的矩陣區(qū)域信息時應當慎用池化層[31,34]。
循環(huán)神經網絡通常用來處理具有序列關系的信息,它能夠讓網絡擁有“記憶力”,通常在進行特征提取后作為中間層的一部分使用?;谘h(huán)神經網絡改進的深度強化學習算法有DRQN[35]、LSTM-A2C[36]、LSTM-PPO[37]等。在深度強化學習中使用循環(huán)神經網絡的時候需要注意一個問題:智能體的決策是否可以完全由當前時刻的狀態(tài)特征所決定。如果可以完全決定,由于網絡的復雜化帶來的訓練難度增加,使用循環(huán)神經網絡可能會導致更差的訓練效果;如果不能完全決定,使用循環(huán)神經網絡是一種不錯的選擇。和“1.1.1”小節(jié)所述的狀態(tài)疊加相比,循環(huán)神經網絡使用的網絡參數更少,更加不容易過擬合,訓練難度更低。另外需要注意的是,使用循環(huán)神經網絡會使神經網絡模型的復雜度大幅增加,一般需要適當削減其他神經網絡層數。比較常用的循環(huán)神經網絡有長短期記憶網絡(LSTM)[38]、門控循環(huán)單元(GRU)[39]等。它們的共同點是接收一個序列的狀態(tài)信息,依次對同一個網絡進行調整,這些調整讓循環(huán)神經網絡內部擁有記憶、調整、選擇性輸出的功能。
自注意力機制是解決狀態(tài)特征長度不固定問題的一種方案,同時也是提取信息之間關聯性的手段[40]。狀態(tài)特征中包含很多數量不確定但種類和長度相同的信息,例如環(huán)境中多個物體的位置,需要綜合考慮它們之間的關系才能確定接下來采取的策略。由于任何同類信息都能用q、k、v3個矩陣進行處理,自注意力機制可作為提取可變輸入維度的方案。自注意力機制和循環(huán)神經網絡均能對輸入序列信息進行處理,然而循環(huán)神經網絡無法記憶過長的信息,并且無法進行并行化的輸出。有些研究者已經采用注意力機制替代循環(huán)神經網絡,還有人用它作為提取圖像通道關系的手段[41]。
Transformer是基于自注意力機制構建的網絡模型,最早在文獻[30]中被提出,其在監(jiān)督學習下出色的訓練效果使其成為自然語言處理的主流神經網絡框架。Transformer的網絡模型主要由多頭注意力機制、位置編碼、全連接和殘差連接這幾個模塊構成的編碼器和解碼器組成。由于多頭注意力機制在序列信息關系的處理上具有較強的學習能力,并且不受序列距離影響,因此多個多頭注意力機制疊加的Transformer在處理序列信息上具有獨到之處。在深度強化學習領域,因為強化學習模型需要針對環(huán)境進行獨特的特征設計,且在大部分環(huán)境下無需采用復雜的網絡模型,所以Transformer與深度強化學習的結合并不順利,探索程度仍然較低。在深度強化學習中應用Transformer需要解決2個問題:一是Transformer的復雜結構造成的高計算復雜度和內存成本問題;二是現有的深度強化學習算法對架構設計非常敏感,在特定環(huán)境下可能無法解決訓練的不穩(wěn)定情況,發(fā)生模型和環(huán)境不適配的現象。Transformer是一種更加強大的訓練模型,可以作為一個序列決策器,用于提升跨任務和領域的泛化性能,是一個非常有前途的研究方向[42]。Transformer有作為通用智能體模型的潛力,在大網絡大模型上具有突出的可拓展性。Transformer模型更多用于在大量數據集加持下的監(jiān)督式預訓練以及深度強化學習參與的微調工作,這會導致在探索策略時受到一定限制。如何更有效地利用Transformer并使其在未見過的任務上進行泛化,是一個有待研究的課題。
表3總結了這4類模型的特點和應用。這4類模型通常在深度強化學習中最為常用的全連接網絡效果不達標時使用。卷積神經網絡專門用于處理矩陣輸入,循環(huán)神經網絡、自注意力機制、Transformer都可以處理序列信息。其中循環(huán)神經網絡只對時間序列相關信息的處理較為敏感;自注意力機制可以處理任何序列,特定情況下可代替循環(huán)神經網絡;Transformer目前在深度強化學習領域不常用,但有成為通用策略的潛力。
1.2內在獎勵
與外部獎勵是環(huán)境給予智能體的獎勵相比,內在獎勵無法從環(huán)境中獲取,需由算法本身來定義。內在獎勵大幅度增加了智能體探索環(huán)境的能力,使訓練能夠順利進行下去,根本目的還是促進外部獎勵的增加,主要方法有:好奇心獎勵[20]、隨機網絡蒸餾[21]。除此之外,逆強化學習[43]也可以提供內在獎勵。
好奇心獎勵機制[20]是智能體探索環(huán)境的方法之一,好奇心指的是智能體的預測狀態(tài)與實際狀態(tài)之間的誤差。這個誤差越大,智能體就越“好奇”,好奇心獎勵越高。好奇心機制由3個模型構成,第1個模型進行特征提取,第2個模型擬合策略,第3個模型輸出預測。它鼓勵智能體探索環(huán)境并學習新的、有趣的信息,用于解決強化學習中的探索-利用困境。在傳統的強化學習中,智能體往往需要在探索新策略和利用已知策略之間取得平衡。好奇心機制通過引入內在獎勵,使智能體能夠更自然地進行探索,從而更容易發(fā)現新的、更優(yōu)的策略。
和好奇心機制類似,隨機網絡蒸餾[21]也從預測狀態(tài)特征入手,計算額外的內部獎勵,達到促進智能體探索的目的。不同的是,它擁有2個結構完全一致的網絡,是參數固定的目標網絡和用來訓練的預測網絡。在深度強化學習算法訓練的過程中,預測網絡不斷朝目標網絡擬合,2個網絡的輸出差距決定了內在獎勵的大小。隨機網絡蒸餾對狀態(tài)預測的能力取決于網絡的復雜程度。由于2個結構相同網絡的擬合不容易產生過擬合的現象,并且算法無需對特征進行提取,因此訓練更加簡單。
好奇心和隨機網絡蒸餾都能促使智能體更有效地探索環(huán)境,它們的特點是在不影響原生算法的情況下附加于外部獎勵之上,使獎勵更加稠密,對智能體的探索起引領作用。當狀態(tài)被反復探索,這個獎勵會趨近于0。當存在內在獎勵時,智能體不應定義過多稠密的外部獎勵,否則當環(huán)境本身局部存在的獎勵過深的時候,還是容易陷入局部最優(yōu)。因此環(huán)境本身除了最終設定的目標以外,不應存在過大的獎勵。表4總結了好奇心獎勵和隨機網絡蒸餾算法的特點。
1.3經驗回放
經驗回放最早在1992年被LIN提出[44],率先把它應用在深度強化學習算法中的是DQN。作為DQN的兩大創(chuàng)新點之一,經驗回收大大增加了深度強化學習的樣本利用率,使DQN在Atari游戲中表現出類人類的效果[5]。
智能體在與環(huán)境的交互中獲得經驗,一條經驗至少包括狀態(tài)、動作、獎勵和下一個狀態(tài)。智能體通過在經驗池中抽取經驗作為樣本用于模型更新。這樣的做法使得同一個經驗多次被用于訓練,提升了數據的復用性,同時打破了數據之間的時間相關性,使訓練穩(wěn)定性大大增加[45]。經驗回放常用于off-policy的深度強化學習算法中,訓練的策略和數據采集的策略分離,可同步進行訓練的數據采集[46]。在on-policy深度強化學習算法中經驗池的用法有所不同,訓練和數據采集的策略相同,訓練和數據采集的流程分離,并且會在訓練周期結束之后清空經驗池(例如PPO)。DQN使用的經驗回放在經驗池中隨機抽取經驗進行訓練,這種經驗抽取方法在許多特定環(huán)境中表現不佳。后來的研究者們圍繞儲存哪些經驗和如何進行回放的問題,衍生出許多不同版本的經驗回放算法[47-49],其中比較常用的有優(yōu)先經驗回放和事后經驗回放。
優(yōu)先經驗回放(prioritizedexperiencereplay)[23]的主要思想是根據經驗的重要性進行采樣。每條經驗對于智能體的重要性并不一致,采用均勻采樣的方式進行訓練忽略了經驗的重要性對訓練的影響。因此,優(yōu)先經驗回放希望增大重要經驗的采樣概率,減少次要經驗的采樣概率。
衡量經驗重要性的標準是時間差分(temporaldifference,TD)誤差,TD誤差越大,說明這條經驗越“出乎意料”,重要性越高。一般情況下,可以直接根據誤差的絕對值來確定優(yōu)先度,優(yōu)先度更高的經驗被采樣到的概率更高。實際應用中往往用一棵二叉樹的葉子節(jié)點儲存概率值和對應的經驗,父節(jié)點儲存子節(jié)點的加和,以便于采樣。
由于采樣方式的改變使樣本分布發(fā)生較大變化,導致智能體收斂到難于預料的結果,因此需要修正采樣方式改變帶來的偏差。在TD梯度更新的時候,引入了一個權重以調整更新的梯度,使得容易采樣到的經驗使用更小的梯度更新。權重的計算見式(1)。
wi=(1N·1P(i))β,(1)
式中:N為經驗池中的樣本數;β為超參數,決定了抵消采樣影響的程度。優(yōu)先經驗回放確保重要樣本在訓練過程中被更頻繁地回放,從而加速學習過程。這種方法有助于智能體更快地學習到關鍵信息,提高學習效率,在稀疏獎勵和CPU資源充足的情況下可以使用,在獎勵稠密的情況下盲目使用反而會導致訓練效果變差。
事后經驗回放(hindsightexperiencereplay)[24]的主要思想是使用修改目標的方法從失敗中獲取經驗,是一種針對目標導向任務的算法。算法重新解釋失敗的經驗作為達到不同目標的成功經驗,從而增加了學習過程中的有效樣本數量。事后經驗回放在環(huán)境獎勵稀疏、無法在差的軌跡學習得到任何獎勵的時候適用。和基礎的經驗回放不同,訓練策略函數和值函數需要同時輸入狀態(tài)和目標,目的是在訓練時可以自由切換目標。因此可以假設軌跡中間的某個狀態(tài)就是實驗想要達到的目標,更改目標之后就能得到對應的獎勵,推進訓練的流程。
更改目標的方式有3種:第1種方法是取軌跡中最后一個狀態(tài)作為新目標,這樣可以使經驗池中存放的經驗增加1倍;第2種方法是隨機選擇k個在軌跡上的經驗作為新目標,這樣可以使經驗池中存放的經驗增加k倍;第3種方法是在經驗池中所有的經驗中選擇k個經驗作為新目標。
綜上所述,經驗回放作為強化學習框架中的重要組成部分,對訓練數據的收集和利用提出了更高的要求。其中,優(yōu)先經驗回放適用于需要關注重要樣本和加速學習過程的情況,而事后經驗回放則更適用于目標導向任務和樣本有限的場景。在實際應用中,可以根據任務的特點和需求選擇合適的方法。在某些情況下,甚至可以將2種方法結合起來使用,以充分利用它們的優(yōu)勢。表5總結了DQN經驗回放、優(yōu)先經驗回放和事后經驗回放的特點。
2.1模仿學習
模仿學習[25]主要從人類的行為當中提取經驗,讓智能體能夠復制人類的行為。它可以讓智能體在比深度強化學習更短的時間內得到接近人類水平的結果。模仿學習在復雜環(huán)境中和深度強化學習共同使用,可以使智能體達到遠超人類的水平。模仿學習通常分為行為克隆[50]和逆強化學習2類。行為克隆的常用算法是DAgger[51],逆強化學習的常用算法為生成對抗模仿學習[52]。
行為克隆(behavioralcloning,BC)是一種純監(jiān)督學習方法,和其他深度強化學習插件不同,它可以和深度強化學習“分離”執(zhí)行,并不依賴于深度強化學習算法本身。行為克隆用收集的專家經驗訓練一個Actor網絡,使得Actor網絡在輸入相同狀態(tài)特征的情況下能夠得到相同的輸出。行為克隆的網絡性能高度依賴于專家經驗的質量和全面性,通常需要反復訓練和測試并收集特定情況下缺失的經驗,在樣本較多且覆蓋面廣的情況下較為有效。
生成對抗模仿學習(generativeadversarialimitationlearning,GAIL)是生成對抗網絡(generativeadversarialnetwork,GAN)[53]的啟發(fā)式算法,屬于逆強化學習的范疇。在深度強化學習中,訓練的最終目標是根據狀態(tài)和獎勵等經驗擬合出最佳的策略模型,而逆強化學習則需要在給定狀態(tài)st和動作at的情況下,用神經網絡模型擬合對應的獎勵。GAIL在無法人為定義出很好的獎勵函數的情況下利用專家經驗來擬合獎勵模型,并假定專家經驗的獎勵最高,學習出來的獎勵再被用于訓練深度強化學習中的策略模型。
GAIL需要訓練生成器(generator)和判別器(discriminator)2個模型。生成器就是策略模型Actor本身,輸入狀態(tài)st,輸出動作at。判別器輸入st和at,輸出對應的獎勵。假定專家經驗軌跡為τE,Actor產生的軌跡為τi,判別器參數為w,則訓練判別器的梯度遞減公式為
L(w)=-Eτi[logDw(s,a)]-EτE[log(1-Dw(s,a))]。(2)
這使得Actor生成的經驗在判別器中更趨向于0,專家經驗更趨向于1。在深度強化學習中,判別器輸出的獎勵用來訓練生成器Actor,Actor生成軌跡所得到的獎勵會不斷增加,和判別器處于“對抗”關系。生成器和判別器輪流訓練,會產生互相促進的作用。
GAIL是非監(jiān)督學習類型的模仿學習算法,并且必須附加于深度強化學習上使用。它相當于另一種形式的內在獎勵,可以乘上權重和外部獎勵加在一起進行訓練。權重設得越高,智能體在環(huán)境中就更傾向于模仿專家的行為。表6總結了行為克隆與生成對抗模仿學習的異同。
2.2自我博弈
自我博弈(self-play)[26]是應用于智能體之間處于對抗關系時的訓練方法,這里的對抗關系指的是一方的獎勵上升必然導致另一方的獎勵下降。通過輪流訓練雙方的智能體就能使得雙方的策略模型的性能得到顯著提升,使得整個對抗系統達到正和博弈的效果。這種訓練機制最早運用于跳棋游戲[54],后來在棋類、MOBA(multiplayeronlinebattlearena)類等對抗性策略游戲中被廣泛應用,例如AlphaGo[31]、AlphaStar[55]。
自我博弈有3個主要創(chuàng)新點。第一是探索課程,在稀疏獎勵的環(huán)境下,將最終目標分割成若干個容易實現的小目標,每個目標都給予一定的獎勵,使獎勵變得稠密,并對智能體的探索行為給予一定的獎勵。隨著訓練的進行,探索獎勵應當逐漸衰減為0。第二是對手抽樣,智能體在面對過強或過弱的對手時,訓練都會難以取得成效,因此環(huán)境中需要存儲對手不同時期的訓練版本,讓較弱的一方有機會獲勝,且在較弱的一方策略提升的同時會反過來促進較強一方變得更強。第三是魯棒學習策略,為了防止智能體的策略擬合在某一種固定的對手身上,需要給對手引入多樣性,給環(huán)境引入隨機變量。
為了判斷智能體的強弱,使自我博弈使用水平相近的智能體進行對抗訓練,可以引入ELO評級系統。這是一種計算零和游戲中2個玩家之間相對水平的方法。每一個玩家都有一個初始ELO分數。通過對戰(zhàn)勝負結果更新ELO分數。假定玩家A的初始ELO分數為
RA,玩家B的初始ELO分數為RB,則玩家A的預期勝利概率為
EA=11+10RB-RA400。(3)
比賽結束后,玩家A的分數調整為
R′A=RA+K(SA-EA),(4)
式中:K為可調整的超參數;SA為比賽結果,贏了則值為1,反之為0。
2.3課程學習
在復雜任務中,智能體需要掌握非常繁瑣的行為邏輯,而傳統的深度強化學習算法難以一次性訓練完成。課程學習(curriculumlearning)[27]的核心思想是循序漸進,在完成最終目標的過程中設定若干個由易到難的小目標,在完成前一個小目標之后,再轉移到下一個小目標進行訓練。因此在實操中應當讓智能體先學簡單的樣本和經驗,后學復雜的樣本和經驗。
課程學習可以分為2種:一種是人工預定義的課程,需要專家經驗,代價較高,并且不夠靈活,適合在課程難度容易定義的情況下使用;另一種是自動設計的課程。自動設計的課程可以分為4類:第1類是自定義進度,根據損失函數衡量訓練智能體的難度,根據難度來確定學習進度;第2類是教師遷移,利用一個已經訓練好的教師模型衡量任務難度,并將它的知識遷移到學生模型中,解決初始階段模型不成熟的問題;第3類是強化學習算法本身作為教師,教師以提高學生水平為目標為學生量身定制學習計劃,同時根據學生反饋調整教學策略;第4類是其他自動尋找課程的方法,如貝葉斯優(yōu)化、元學習等[56]。
通過將復雜的任務分解成更簡單的子任務,課程學習算法可以使模型更容易地學習并掌握相關知識,從而提高學習效率。此外,通過逐漸增加任務的難度,模型可以在已經學到的知識基礎上進一步地學習,避免了從頭開始學習所有知識的困難。課程學習使模型在訓練過程中逐步接觸到更多的數據和情況,從而增強模型的泛化能力。這種逐步增加難度的學習方式可以使模型更好地適應新的數據和情境,提高其在未知環(huán)境下的表現。課程學習可以更好地利用計算資源。在訓練初期,可以使用較少的計算資源來訓練簡單的子任務,隨著任務的難度逐漸增加,可以逐漸增加計算資源的投入。
3結語
本文介紹了深度強化學習算法的通用插件,其根據應用場景的不同可靈活添加于深度強化學習框架中。其中,模型構造、經驗回放、內在獎勵構成了模型、經驗池、獎勵這3個要素,是算法的基礎,極大程度地影響了最終的訓練效果。模仿學習、自我博弈、課程學習作為3類不同的訓練方法,都圍繞著更快的訓練速度和更有效率的探索展開,是對強化學習原生訓練方法的改進。目前,深度強化學習算法已經取得了較大的進展,基本算法框架趨于穩(wěn)定,因此發(fā)展各類改善原始框架的插件對增強智能體的訓練具有重要的作用。但是仍然普遍存在著樣本利用效率低下、獎勵設置困難、算法的泛化性較差等問題。尤其在實際應用中復雜環(huán)境下嚴重依賴專家經驗和獎勵塑造。因此,未來通用插件對于深度強化學習算法的作用可以根據以下方面展開。
1)提高經驗利用效率。目前的經驗回放技術普遍存在實時性無法保障、關鍵性經驗難以學習、次要經驗被過度擬合的問題,因此,未來的經驗回放算法需要綜合考慮如何篩選需要被重點關注的經驗和需要被丟棄的經驗,提出一種更有效的經驗篩選模型。
2)設計和訓練出通用神經網絡架構。對于復雜程度不同的應用環(huán)境,神經網絡的設計五花八門,中間層的調節(jié)是一個難以預測的超參數。自然語言處理領域擁有較為通用的預訓練模型,在預訓練模型上做微調即可擁有不錯的效果。深度強化學習的策略模型也需要一個通用的“人類思維”,使得無需過多的經驗就在特定的任務上達到人類的學習效果。
3)提高算法在稀疏獎勵環(huán)境的探索效率。好奇心和隨機網絡蒸餾等算法促使智能體探索環(huán)境,但是仍然存在著智能體的“無法抵達區(qū)域”,導致智能體在局部最優(yōu)周圍循環(huán)往復,無法探索到更遠的區(qū)域。因此,尋找一個覆蓋范圍更廣、探索效率更高的方式是深度強化學習應用于更多現實場景的關鍵。
4)提高算法在現實中應對各種突發(fā)狀況的能力。在應用方面,深度強化學習為金融、推薦系統、自動駕駛等領域的決策提供幫助。然而現實狀況具有較強的隨機性和不可預測性,因此算法需要采取深度強化學習和人工交互相結合的方式應對變化,并提高檢測突發(fā)情況的能力。
參考文獻/References:
[1]WANGHaonan,LIUNing,ZHANGYiyun,etal.Deepreinforcementlearning:Asurvey[J].FrontiersofInformationTechnologyamp;ElectronicEngineering,2020,21(12):1726-1744.
[2]BASHARDA.Surveyonevolvingdeeplearningneuralnetworkarchitectures[J].JournalofArtificialIntelligenceandCapsuleNetworks,2019,1(2):73-82.
[3]LIZewen,LIUFan,YANGWenjie,etal.Asurveyofconvolutionalneuralnetworks:Analysis,applications,andprospects[J].IEEETransactionsonNeuralNetworksandLearningSystems,2022,33(12):6999-7019.
[4]CLIFTONJ,LABERE.Q-Learning:Theoryandapplications[J].AnnualReviewofStatisticsandItsApplication,2020,7:279-301.
[5]MNIHV,KAVUKCUOGLUK,SILVERD,etal.PlayingAtariwithDeepReinforcementLearning[DB/OL].[2024-01-15].https://arxiv.org/abs/1312.5602.
[6]劉建偉,高峰,羅雄麟.基于值函數和策略梯度的深度強化學習綜述[J].計算機學報,2019,42(6):1406-1438.
LIUJianwei,GAOFeng,LUOXionglin.
Surveyofdeepreinforcementlearningbasedonvaluefunctionandpolicygradient[J].ChineseJournalofComputers,2019,42(6):1406-1438.
[7]HASSELTHV,GUEZA,SILVERD.DeepreinforcementlearningwithdoubleQ-Learning[C]//ProceedingsoftheThirtiethAAAIConferenceonArtificialIntelligence.Phoenix:AAAIPress,2016:2094-2100.
[8]SEWAKM,SEWAKM.DeepQNetwork(DQN),DoubleDQN,andDuelingDQN:AStepTowardsGeneralArtificialIntelligence[M].Singapore:Springer,2019:95-108.
[9]ZHANGJunzi,KIMJ,O′DONOGHUEB,etal.SampleefficientreinforcementlearningwithREINFORCE[C]//ProceedingsoftheAAAIConferenceonArtificialIntelligence:AAAI-21TechnicalTracks.PaloAlto:AAAI,2021:10887-10895.
[10]SEWAKM,SAHAYSK,RATHOREH.Policy-approximationbaseddeepreinforcementlearningtechniques:Anoverview[C]//InformationandCommunicationTechnologyforCompetitiveStrategies(ICTCS2020)ICT:ApplicationsandSocialInterfaces.
[S.l.]:[s.n.],2022:493-507.
[11]GRONDMANI,BUSONIUL,LOPESGAD,etal.Asurveyofactor-criticreinforcementlearning:Standardandnaturalpolicygradients[J].IEEETransactionsonSystemsManandCyberneticsPartC(ApplicationsandReviews),2012,42(6):1291-1307.
[12]LILLICRAPTP,HUNTJJ,PRITZELA,etal.ContinuousControlwithDeepReinforcementLearning[DB/OL].[2023-12-29].https://arxiv.org/abs/1509.02971.
[13]FUJIMOTOS,HOOFH,MEGERD.Addressingfunctionapproximationerrorinactor-criticmethods[C]//InternationalConferenceonMachineLearning.[S.l.]:PMLR,2018:1587-1596.
[14]SCHULMANJ,WOLSKIF,DHARIWALP,etal.ProximalPolicyOptimizationAlgorithms[DB/OL].[2024-01-05].https://arxiv.org/abs/1707.06347.
[15]HAARNOJAT,ZHOUA,HARTIKAINENK,etal.SoftActor-criticAlgorithmsandApplications[DB/OL].[2023-11-30].https://arxiv.org/abs/1812.05905.
[16]ALIIRS,PEHLIVANO[AKGˇ]LUMK.Model-freereinforcementlearningalgorithms:Asurvey[C]//201927thSignalProcessingandCommunicationsApplicationsConference(SIU).Sivas:IEEE,2019:1-4.
[17]SCHWINGAG,URTASUNR.FullyConnectedDeepStructuredNetworks[DB/OL].[2024-01-05].https://arxiv.org/abs/1503.02351.
[18]SALEHINEJADH,SANKARS,BARFETTJ,etal.RecentAdvancesinRecurrentNeuralNetworks[DB/OL].[2024-01-10].https://arxiv.org/abs/1801.01078.
[19]ALAEDDINEH,JIHENEM.Widedeepresidualnetworksinnetworks[J].MultimediaToolsandApplications,2023,82(5):7889-7899.
[20]PATHAKD,AGRAWALP,EFROSAA,etal.Curiosity-drivenexplorationbyself-supervisedprediction[C]//2017IEEEConferenceonComputerVisionandPatternRecognitionWorkshops(CVPRW).Honolulu:IEEE,2017:488-489.
[21]BURDAY,EDWARDSH,STORKEYA,etal.ExplorationbyRandomNetworkDistillation[DB/OL].[2023-12-11].https://arxiv.org/abs/1810.12894.
[22]ZHANGST,SUTTONRS.ADeeperLookatExperienceReplay[EB/OL].[2024-01-21].https://arxiv.org/pdf/1712.01275v1.pdf.
[23]SCHAULT,QUANJ,ANTONOGLOUI,etal.PrioritizedExperienceReplay[DB/OL].[2023-10-21].https://arxiv.org/abs/1511.05952.
[24]ANDRYCHOWICZM,WOLSKIF,RAYA,etal.Hindsightexperiencereplay[J].AdvancesinNeuralInformationProcessingSystems,2017,30:5048-5058.
[25]ZHENGB,VERMAS,ZHOUJ,etal.ImitationLearning:Progress,TaxonomiesandChallenges[DB/OL].[2023-11-21].https://arxiv.org/abs/2106.12177.
[26]BANSALT,PACHOCKIJ,SIDORS,etal.EmergentComplexityviaMulti-agentCompetition[DB/OL].[2024-01-04].https://arxiv.org/abs/1710.03748.
[27]BENGIOY,LOURADOURJ,COLLOBERTR,etal.Curriculumlearning[C]//Proceedingsofthe26thAnnualInternationalConferenceonMachineLearning.NewYork:ACM,2009:41-48.
[28]高陽,陳世福,陸鑫.強化學習研究綜述[J].自動化學報,2004,30(1):86-100.
GAOYang,CHENShifu,LUXin.
Researchonreinforcementlearningtechnology:Areview[J].
ACTAAutomaticaSinica,2004,30(1):86-100.
[29]JULIANIA,BERGESVP,TENGE,etal.Unity:AGeneralPlatformforIntelligentAgents[DB/OL].[2024-01-06].https://arxiv.org/abs/1809.02627.
[30]VASWANIA,SHAZEERN,PARMARN,etal.AttentionisAllYouNeed[DB/OL].[2023-10-30].https://arxiv.org/abs/1706.03762.
[31]SILVERD,HUANGA,MADDISONCJ,etal.Masteringthegameofgowithdeepneuralnetworksandtreesearch[J].Nature,2016,529(7587):484-489.
[32]SZEGEDYC,IOFFES,VANHOUCKEV,etal.Inception-v4,inception-ResNetandtheimpactofresidualconnectionsonlearning[C]//ProceedingsoftheThirty-FirstAAAIConferenceonArtificialIntelligence.SanFrancisco:AAAIPress,2017:4278-4284.
[33]HEFengxiang,LIUTongliang,TAODacheng.Whyresnetworks?residualsgeneralize[J].IEEETransactionsonNeuralNetworksandLearningSystems,2020,31(12):5349-5362.
[34]GHOLAMALINEZHADH,KHOSRAVIH.PoolingMethodsinDeepNeuralNetworks:AReview[DB/OL].[2023-12-12].https://arxiv.org/abs/2009.07485.
[35]CLAREC,VINCENTY,DILLONL.DeepQ-learningwithRecurrentNeuralNetworks[EB/OL].[2016-01-01].http://www.cnblogs.com/lucifer1997/p/13959532.html.
[36]LIRongpeng,WANGChujie,ZHAOZhifeng,etal.TheLSTM-basedadvantageactor-criticlearningforresourcemanagementinnetworkslicingwithusermobility[J].IEEECommunicationsLetters,2020,24(9):2005-2009.
[37]賀俊杰,張潔,張朋,等.基于長短期記憶近端策略優(yōu)化強化學習的等效并行機在線調度方法[J].中國機械工程,2022,33(3):329-338.
HEJunjie,ZHANGJie,ZHANGPeng,etal.RelatedparallelmachineonlineschedulingmethodbasedonLSTM-PPOreinforcementlearning[J].ChinaMechanicalEngineering,2022,33(3):329-338.
[38]YUY,SIXS,HUCH,etal.Areviewofrecurrentneuralnetworks:LSTMcellsandnetworkarchitectures[J].NeuralComputation,2019,31(7):1235-1270.
[39]CHUNGJ,GULCEHREC,CHOKH,etal.EmpiricalEvaluationofGatedRecurrentNeuralNetworksonSequenceModeling[DB/OL].[2024-01-08].https://arxiv.org/abs/1412.3555.
[40]申翔翔,侯新文,尹傳環(huán).深度強化學習中狀態(tài)注意力機制的研究[J].智能系統學報,2020,15(2):317-322.
SHENXiangxiang,HOUXinwen,YINChuanhuan.
Stateattentionindeepreinforcementlearning[J].
CAAITransactionsonIntelligentSystems,2020,15(2):317-322.
[41]SHENXiangxiang,YINChuanhuan,HOUXinwen.Self-attentionfordeepreinforcementlearning[C]//Proceedingsofthe20194thInternationalConferenceonMathematicsandArtificialIntelligence.NewYork:ACM,2019:71-75.
[42]LIWenzhe,LUOHao,LINZichuan,etal.ASurveyonTransformersinReinforcementLearning[DB/OL].[2024-01-18].https://arxiv.org/abs/2301.03044.
[43]ARORAS,DOSHIP.Asurveyofinversereinforcementlearning:Challenges,methodsandprogress[J].ArtificialIntelligence,2021.DOI:10.1016/j.artint.2021.103500.
[44]LINLJ.Self-improvingreactiveagentsbasedonreinforcementlearning,planningandteaching[J].MachineLearning,1992,8(3):293-321.
[45]FEDUSW,RAMACHANDRANP,AGARWALR,etal.Revisitingfundamentalsofexperiencereplay[C]//Proceedingsofthe37thInternationalConferenceonMachineLearning.[S.l.]:JMLR,2020:3061-3071.
[46]胡子劍,高曉光,萬開方,等.異策略深度強化學習中的經驗回放研究綜述[J].自動化學報,2023,49(11):2237-2256.
HUZijian,GAOXiaoguang,WANKaifang,etal.
Researchonexperiencereplayofoff-policydeepreinforcementlearning:Areview[J].ACTAAutomaticaSinica,2023,49(11):2237-2256.
[47]ROLNICKD,AHUJAA,SCHWARZJ,etal.Experiencereplayforcontinuallearning[J].AdvancesinNeuralInformationProcessingSystems,2019.DOI:10.48550/arXiv.1811.11682.
[48]BRITTAINM,BERTRAMJ,YANGX,etal.PrioritizedSequenceExperienceReplay[DB/OL].[2024-01-07].https://arxiv.org/abs/1905.12726.
[49]LIUHao,TROTTA,SOCHERR,etal.CompetitiveExperienceReplay[DB/OL].[2023-12-22].https://arxiv.org/abs/1902.00528.
[50]BAINM,SAMMUTC.AFrameworkforBehaviouralCloning[M].[S.l.]:OxfordUniversity,1995:103-129.
[51]ROSSS,GORDONG,BAGNELLD.Areductionofimitationlearningandstructuredpredictiontono-regretonlinelearning[C]//ProceedingsoftheFourteenthInternationalConferenceonArtificialIntelligenceandStatistics.FortLauderdale:JLMR,2011:627-635.
[52]HOJ,ERMONS.Generativeadversarialimitationlearning[J].AdvancesinNeuralInformationProcessingSystems,2016,29:4565-4573.
[53]GOODFELLOWI,POUGET-ABADIEJ,MIRZAM,etal.Generativeadversarialnetworks[J].CommunicationsoftheACM,2020,63(11):139-144.
[54]SAMUELAL.Somestudiesinmachinelearningusingthegameofcheckers[J].IBMJournalofResearchandDevelopment,2000,44(1/2):206-226.
[55]VINYALSO,BABUSCHKINI,CZARNECKIWM,etal.GrandmasterlevelinStarCraftⅡusingmulti-agentreinforcementlearning[J].Nature,2019,575(7782):350-354.
[56]WANGXin,CHENYudong,ZHUWenwu.Asurveyoncurriculumlearning[J].IEEETransactionsonPatternAnalysisandMachineIntelligence,2022,44(9):4555-4576.
收稿日期:2023-12-18;修回日期:2024-03-01;責任編輯:馮民
基金項目:
國家自然科學基金(61971147):廣東省基礎與應用基礎研究基金(2023A1515011888)
第一作者簡介:
鐘欣見(1998—),男,廣東陽江人,碩士研究生,主要從事深度強化學習方面的研究。
通信作者:王永華,博士。E-mail:wangyonghua@gdut.edu.cn
鐘欣見,王永華,李明.
深度強化學習的通用插件研究綜述
[J].河北科技大學學報,2024,45(4):362-372.
ZHONGXinjian,WANGYonghua,LIMing.
Researchreviewofgeneralpluginsfordeepreinforcementlearning
[J].JournalofHebeiUniversityofScienceandTechnology,2024,45(4):362-372.