22強化學習專題論壇.pdf

編號:111448 PDF 67頁 4.36MB 下載積分:VIP專享
下載報告請您先登錄!

22強化學習專題論壇.pdf

1、 1 22強化學習 2 美國密西根大學教授 Satinder Singh:強化學習中的“發現”整理人:智源社區 吳繼芳第二屆北京智源大會“強化學習”專題論壇上,Satinder Singh 教授做了題為強化學習中的發現(Discovery in Reinforcement Learning)的主題演講。Satinder Singh,美國密西根大學教授,Deep Mind 首席科學家,AAAI Fellow。在本次演講中,Satinder Singh 教授系統地介紹了他與其學生、同事近期關于強化學習的兩個研究工作。報告主要討論如何嘗試通過 Meta-Gradient 方法來學習發現以往強化學習智

2、能體中需要手動設置的參數:內在獎勵和輔助任務問題。針對于如何通過數據驅動的方式學習到內在獎勵函數,他們提出了一個學習跨多生命周期(lifetime)內部獎勵函數的 Meta-Gradient 框架,同時設計相關實驗證明學習到的內在獎勵函數能夠捕獲有用的規律,這些規律有助于強化學習過程中的 exploration 和 exploitation,并且可以遷移到到不同的學習智能體和不同的環境中。針對于如何在數據中發現問題作為輔助任務,他們擴展通用輔助任務架構,參數化表示General Value Functions,并通過 Meta-Gradient 方法學習更新參數發現問題。實驗證明這個方法可以快

3、速發現問題來提高強化學習效果。下面是智源編輯為大家整理的講座內容。一、“發現”的含義什么是強化學習中的“發現”?簡單地思考,強化學習智能體中的參數可以分成兩部分:一部分參數是從數據中學習發現得到,另一部分是由研究人員根據經驗手動設置。Satinder Singh 教授的報告主要討論他和他的團隊如何嘗試通過 Meta-Gradient 方法來學習發現參數。在強化學習中,策略(policy)函數和價值(value)函數的參數值通常從數據中學習得到。對于那些通常手動設置的參數,如圖 1 所示,表格中是最新論文中的一些例子以及它們的出處。這些例子都是采用 Meta-Gradient 方法發現參數。有些

4、通過元學習(Meta-Laring)發現一個好的策略參數初始值。有些是用 Meta-Gradient 方法發現學習率(learing rate)和折扣因子(discount factor)。有些是用 Meta-Gradient 方法發現內在獎勵(intrinsic rewards)和輔助任務(auxiliary tasks)等。在本次報告中,Satinder Singh 教授主要分享他和他的團隊近期發表在 ICML 2020 和 NeurIPS 2019 中的兩篇論文的相關研究工作(圖 1 中標紅的兩篇)。雖然有許多不同的發現方法,比如:基于人口的方法(population based met

5、hod)、進化方法(revolution method),但是 Satinder Singh 教授他們只是采用啟發式搜索方法發現超參數值。這次報告的重點是采用 Meta-Gradient 方法發現參數。圖 1:手動參數的最新研究方法 3 二、內在獎勵第一項工作由 Satinder Singh 教授和他的博生生共同完成的。文章的題目是:What can Learned Intrinsic Rewards Capture?1。2.1研究動機在強化學習中,智能體有很多結構存儲知識。這些結構分為:常見結構(common structure)和非常見結構(uncommon structure)。其中,常

6、見結構有:策略(policies)、價值函數(value functions)、環境模型(models)和狀態表示(state representations)等。在本次報告中,主要關注非常見結構:獎勵函數(reward function)。之所以是非常見結構是因為在強化學習中這些獎勵通常都是根據環境決定,并且是不可改變的。在論文中,將強化學習問題中的獎勵函數分為外在獎勵(extrinsic rewards)和內在獎勵(intrinsic rewards)。外在獎勵用來衡量智能體的性能,通常是不能改變的。內在獎勵是智能體內部的。在內在獎勵中,有很多方法用來存儲知識,但是這些方法都是手動設計的,

7、比如:reward shaping、novelty-based reward、curiosity-driven reward 等。這些手動的內在獎勵方法都依賴領域知識或者需要細致的微調才能起作用。在本次報告中,Satinder Singh 主要關注兩個研究問題:1.是否能夠通過數據驅動的方式,學習得到一個內在獎勵函數?2.通過學習到的內在獎勵函數,什么樣的知識能夠被捕獲到?針對第一個問題,論文中提出了一個學習跨多生命周期(lifetime)內部獎勵函數的可擴展的 Meta-Gradient 框架。針對第二個問題,論文中設計了一系列的實驗,通過實驗證明:1)學習到的內在獎勵函數能夠捕獲有用的規律

8、,這些規律有助于強化學習過程中的 exploration 和 exploitation;2)學習到的內在獎勵函數可以推廣到不同的學習智能體和不同的環境中;3)內在獎勵函數可以捕獲知識告訴智能體要做什么而不是怎么做,策略是用來告訴智能體應該怎么做。2.2Optimal Reward Framework圖 2:基于多生命周期的最優獎勵框架研究的目標是從經驗中學習到有用的內在獎勵,論文中考慮多生命周期(multiple lifetime)的情況(如圖 2 所示)。涉及到的相關概念定義如下:生命周期(lifetime):是指由多個情節(episodes)構成的智能體的整個訓練時間。生命周期可以有成千上

9、萬的情節。每個情節有多個不同的參數更新(如圖 1 所示)。在生命周期的開始,智能體被按照一定分布隨機采樣的 4 任務初始化。在實驗過程中,任務可以是靜態(stationary)或非靜態(non-stationary)的。當情節屬于一個生命周期時,任務隨著時間改變。內部獎勵(intrinsic reward):在一個生命周期內被用來訓練智能體策略(policy),策略不能看到外在獎勵,只能利用內部獎勵更新參數。最優獎勵問題(optimal reward problem):是指學習跨多生命周期的內在獎勵函數。通過訓練多個隨機初始化的策略,獲得累積最優的外在獎勵。目前針對最優化內在獎勵函數,仍然存在

10、兩個開發不足方面的問題:1.內在獎勵函數的輸入應該是整個生命周期的行為歷史而不是情節(episode)內的行為歷史。這樣有助于強化學習中的 exploration。這是因為 exploration 需要關注跨多個 episodes 的發生情況,即當進行探索時,需要觀察整個生命周期內的行為歷史。2.需要最大化整個長生命周期的返回(lifetime return),而不是單個情節的返回(episodic return)。這樣可以有更多空間來平衡跨多個場景之間的 exploration 和 exploitation。針對以上的不足,Satinder Singh 教授和他的團隊提出一個 scalabl

11、e gradient-based 的方法來解決最優化內在獎勵的問題。2.3Truncated Meta-Gradients with BootstrappingMeta-Gradient 方法有兩個循環,分別是:內部循環(inner loop)和外部循環(outer loop)。圖 3:Meta-Gradients 中的兩個循環內部循環在強化學習中很常見,如圖 3 所示,在展開的計算圖中進行策略參數()更新,直到生命周期結束。外部循環是指在整個生命周期通過反向傳播方法,更新內在獎勵函數參數()。內在獎勵函數可以是一個單獨的神經網絡或者是循環神經網絡(RNN)。神經網絡的節點與生命周期中各情節的

12、行為歷史對應,構成整個生命周期的行為歷史。Meta-Gradient 方法的核心思想是:在內部循環中的策略參數更新是關于內在獎勵函數參數可微到。因此,如果我們能夠展開計算圖,在整個生命周期內更新策略參數(),那么就可以通過這個巨大的計算圖反向傳播計算關于內在獎勵函數參數()的 meta-gradients。當然,由于受到內存空間的限制,展開整個計算圖更新參數是不可行的。這也是為什么之前的一些 meta-gradients 方法在更新了少量參數后就調優情節返回(episode return)的原因。為了解決這個挑戰,Satinder Singh 教授仍然采用了截斷計算圖只更新少量參數的方法。但是

13、他們采用生命周期價值函數(lifetime value function)來近似截斷內部循環參數更新之后的其他未 5 展開計算圖節點的生命周期獎勵(如圖 4 所示)。這個生命周期價值函數在未來不僅用來預測整個生命周期外部獎勵,同時不斷的更新內部循環中的參數。因此這個價值函數是在多生命周期間進行訓練。圖 4:Truncated Meta-Gradients with Bootstrapping2.4實驗Satinder Singh 教授分享了他們是如何實驗通過 meta-gradients 方法更新內部獎勵函數參數的。2.4.1方法(Methodology)1.設計特定領域的一系列具有特定規律的

14、任務。2.訓練跨多生命周期的內部獎勵函數。3.評價分析學習到的內部獎勵函數在新的生命周期的效果。2.4.2探索不確定狀態實驗設置如圖 5 所示,引入四個環境房間,智能體(圖中藍色方塊)在每個 episode 中找到不可見的目標位置。這個目標位置不同,生命周期不同,由隨機采樣得到。但是每個生命周期的目標位置是確定的。如果智能體到達目標位置,則當前 episode 結束。圖 5:探索不確定狀態實驗 6 這個實驗中的最優表現應該是:在生命周期的第一個 episode,智能體可以高效的探索整個房間來找到目標位置。當找到目標位置,則第一個 episode 結束。從第二個 episode 開始,智能體能夠

15、記住目標位置在哪并直接到達目標位置。圖 6:不同方法的智能體探索軌跡對比分析圖 6 中展示了生命周期內智能體的探索軌跡,圖(a)中黃色的位置代表對于智能體不可見的目標位置,(b)是智能體采用學習到的內在獎勵函數方法,(c)是智能體采用外部獎勵方法,(d)是智能體采用 count-based exploration 方法??梢钥吹?,(b)中有更多的黃色和綠色充滿了四個房間,這表明采用學習到的內在獎勵函數在探索過程中表現更好。2.4.3探索不確定的目的實驗設置如圖 7 所示,有三個目的(object)A、B、C,它們分別具有不同的獎勵,A 表示不好也不壞,B 表示總是壞的,C 表示并沒有那么好。這

16、些 object 在不同的生命周期內不同,通過隨機采樣產生,在特定的生命周期內是固定的。智能體收集到這三個目的中的任何一個,則該 episode 結束。圖 7:探索不確定目的實驗 7 在這個實驗中,我們希望學習到內在獎勵函數可以捕獲到的規律是:規避 B,因為它總是不好的,同時可以快速的指出 A 和 C 到底哪個更好,并在剩下的生命周期內總是做出最好的選擇。為了學到這些規律,智能體需要跨多個 episode 進行探索學習。圖 8 展示了不同的 episode 中探索到的 object,圖中每個方格代表每個軌跡中積累的內在獎勵,藍色代表正的獎勵,紅色代表負的獎勵??梢钥吹皆?Episode 1 中

17、,推薦 object A,在 Episode 2 中推薦 object C,在 Episode 3 中推薦 object A,整個過程中都沒有推薦 object B,它的顏色總是紅的。圖 8:每個軌跡的內部獎勵可視化2.4.4處理非固定任務在這個實驗中,假設 A 和 C 的外部獎勵在一定時間后會發生變化,智能體需要學習預測這個變化是在什么時候發生,以此來改變策略適應新的任務。圖 9 展示了實驗結果,左側圖中藍色柱狀條代表內部獎勵,在開始時內部獎勵一直是正的,大約在 Episode 400 接近 500 的時候,內在獎勵開始變為負值(綠色框的部分),即智能體開始緩慢的調整策略,到達 Episod

18、e 500 時,策略調整為一個新的行為來應對新的任務。右側圖展示了整個過程策略的 Entropy 變化,可以看到在前 400 個 episodes 中 Entropy 一直保持很小,當內部獎勵為負值時,智能體不知道任務會如何改變,因此它的 entropy 開始增加。緊接著,智能體可以快速學習到這些改變,做出策略調整,快速適應新的任務。圖 9:處理非固定任務實驗結果 8 2.4.5性能(performance)設計實驗與手動設置內部獎勵方法進行比較,如圖 10 所示,前三個子圖代表靜態任務,在三個子圖中學習到的內在獎勵函數獲得最高的 episode return。最后一個子圖代表非靜態任務,可以

19、看到在任務發生改變時通過學習到的內在獎勵函數智能體的表現可以最快地恢復到最佳狀態。圖 10:Learned v.s.Handcrafted Intrinsic Rewards圖 11:Comparison to policy transfer methods圖 11 中展示的是與策略轉移(policy transfer)方法(比如:MAML、RL2)的實驗比較結果,可以看出內部獎勵方法的表現優于 MAML,最終達到同 RL2 一樣的效果。這是因為內部獎勵方法需要從部分 episode 中學習策略,而 RL2 有一個好的初始化策略。2.4.6遷移到新智能體環境因為有些情況下策略是不能轉移的,所以

20、通用轉移內部獎勵比策略轉移更可行。圖 12 中,采用新的動作空間(action space)來驗證訓練得到的內部獎勵,因此策略無法進行轉移。permuted actions 是指左/右和上/下的語義相反,extended actions 是指添加 4 個對角移動的動作。從圖中可以看到學習到的內在獎勵可以很好地轉移到新的動作空間中,對新環境是敏感的。圖 12:Generalisation to new agent-environment interfaces in Random ABC 9 2.4.7Ablation Study如圖 13 所示,藍色曲線代表將 lifetime 的歷史行為作為輸

21、入的 LSTM 內部獎勵網絡,橙色曲線代表將 Episode歷史行為作為輸入的 LSTM 內部獎勵網絡,綠色帶表去掉 lifetime 歷史行為。從圖中可以看出綠色曲線表現最差。這表明智能體在探索過程中,lifetime history 很重要。橙色曲線基本都比綠色曲線表現差,這也表明了long-term lifetime history 在智能體平衡 exploration 和 exploitation 過程中是必需的。圖 13:Evaluation of diff erent intrinsic reward architectures and objectives2.4.8總結文章中證明

22、通過 Meta-Gradient 方法可以學習到有用的內在獎勵。學習內在獎勵可以捕獲到有用的規律應用于智能體的 exploration 和 exploitation。同時捕獲到的知識可以遷移到其他學習環境的智能體上。目前該方法仍然太簡單,有很多限制,Satinder Singh 教授他們未來將研究在更加復雜環境下的內在獎勵學習。三、輔助任務第二項工作由 Satinder Singh 教授和他的 DeepMind 同事共同完成的。文章的題目是:Discovery of Useful Questions as Auxiliary Tasks 2。3.1預測問題基本上所有的機器學習研究都是通過學習回

23、答預先定義好的問題。為了能夠實現更一般的人工智能,智能體需要能夠自己發現問題并回答這些問題。在本文中,作者關注于將發現問題作為輔助任務來幫助構造智能體的表示。3.2General Value Functions(GVFs)General value Functions 是指表示任意狀態特征的價值函數,是強化學習中的價值函數的擴展,它可以由如下公式表示。由于 GVFs 可以表達豐富的預測知識,因此被成功的用作輔助任務。3.3發現問題輔助任務架構圖 14 中展示的是通用輔助任務架構,以最近一次的觀察作為輸入,為模型參數,輸出為任務策略和預先定義的問題的回答(GVF)。10 圖 14:通用輔助任務架

24、構在訓練過程中,損失函數包含兩部分,分別為:主任務損失函數 LRL()和輔助任務損失函數 Lans()。本文中提出將發現問題作為輔助任務,而不只是回答問題,架構如圖 15 所示。針對于發現問題,提出單獨的問題網絡,用未來的觀察作為輸入,表示參數,輸出為累積向量和折扣因子向量。注意:未來的觀察只能在訓練階段可以獲取到,無法在驗證階段獲得。但這對于本文提出的方法沒有影響,因為本身在驗證階段就不需要問題,只需要在訓練階段提供與回答網絡相對應問題的語義表示。圖 15:發現問題輔助任務架構文中采用 meta-gradients 方法學習更新參數,具體的參數更新過程如圖 16、17 所示。11 圖 16:

25、Meta-Gradients(inner-loop)圖 17:Meta-Gradients(outer-loop)3.4實驗為了驗證發現問題輔助方法效果,作者設計了兩組實驗,分別為:只有輔助任務學習更新參數(圖 18)、主任務和輔助任務共同學習更新參數(圖 19),同時設計問題發現輔助任務方法與其他輔助任務方法進行比較(圖 20)。實驗結果顯示采用問題發現輔助任務方法更新參數達到最好的效果。12 圖 18:Representation Learning Experiments圖 19:Joint Learning Experiments圖 20:Comparison of Auxiliary

26、Tasks on ATARI 13 3.5總結文章中提出的方法解決了在強化學習領域如何從自身數據中發現問題作為輔助任務的方法。這個方法可以快速發現問題來提高強化學習效果,但是仍然存在一些限制,比如:計算長序列問題參數更新受內存大小影響。這也是 Satinder Singh 教授他們未來的研究方向。四、結語Satinder Singh 教授分享了他的團隊最近的兩篇研究工作 12,討論了如何將 Meta-Gradient 方法應用的學習發現強化學習智能體中的內在獎勵和輔助任務問題中。并通過實驗證明通過數據驅動的方式可以發現很多有用的知識來優化強化學習效果。Q&AQ1:在強化學習中,內在獎勵學習和熵

27、正則化之間的關系?Singh:讓我用兩種方式來回答。第一種是可以通過 Meta-Gradient 方法來學習熵正則化系數。Deepmind 的Junhyuk Oh 曾經采用過類似的方法,利用反向傳播方法學習熵正則化。第二種是熵正則化可以看成是一種質量比較差的探索方法,它無法學習到有用的探索策略。內在獎勵學習可以跨多個 epsoides 學習到有用的知識,這一點熵正則化是無法做到的,但它確實是另外一種特別的探索方法。Q2:你主要關注 Meta-Gradient 框架,請問您有什么理論能保證性能嗎?比如:什么場景下效果會更好?Singh:簡單來說,Meta-Gradient 就是不斷的進行梯度計算

28、。我們采用類似 local minimize optimization 等方法保證 Meta-Gradient 性能。但是這些計算是受內存限制的,仍然存在很大的挑戰。簡短的回答就是:我們沒有很強的理論保障。但是我認為這里有很多有趣的工作值得去做。參考文獻:1 Zheng Z,Oh J,Hessel M,et al.What Can Learned Intrinsic Rewards Capture?J.arXiv preprint arXiv:1912.05500,2019.2 Veeriah V,Hessel M,Xu Z,et al.Discovery of useful question

29、s as auxiliary tasksC/Advances in Neural Information Processing Systems.2019:9310-9321.14 南洋理工大學安波:競爭環境下的人工智能整理:智源社區 熊宇軒當前,以深度學習為代表的人工智能技術已經被應用在了人們日常生活的方方面面。然而,就學術界而言,許多研究仍然停留在通過小規模數據集進行算法驗證的層面上,并為涉及到大規模智能系統之間的合作、競爭、通信等問題。在邁向強人工智能的道路中,越來越多的學者試圖通過博弈論、強化學習等技術探索競爭環境下的多智能體人工智能系統。在本屆智源大會上,來自南洋理工大學的安波副教授帶

30、來了題為競爭環境下的人工智能的主題演講,從算法博弈論和強化學習兩個方面介紹了他們在該領域的研究成果。一、競爭環境下的人工智能在人工智能發展的早期,研究者們主要考慮的是單個智能體(agent)。到了 80 年代后期,研究者們逐漸開始研究合作的、分布式多智能體系統。到了 90 年代末期,隨著互聯網、電子商務的發展,人們開始越來越多地考慮競爭環節下的人工智能。當人工智能系統中有多個智能體相互競爭的時候,我們通常會通過博弈論的方法來分析這些問題。起初,博弈論是數學的一個分支,隨后在經濟學等領域得到了廣泛的應用。今天,對于 Google、微軟、百度、阿里等 IT 巨頭而言,它們的廣告拍賣等技術背后都有博

31、弈論的身影。到目前為止,已經有了一些將博弈論用于人工智能技術的成功案例。例如,人工智能德州撲克系統幾乎完全是基于求解大規模博弈的技術實現的。此外,博弈論也被用于反恐、安全資源的調度、公司的拍賣業務,以及美國的大規模頻譜拍賣等方面。在研究競爭環境下的人工智能時,有兩種主流的范式:(1)基于算法的技術,即算法博弈論。即設計算法來解決競爭環境下的人工智能問題。這類方法有時會涉及近似算法,利用到很多 OR 的技術,尤其是求解大規模優化的技術。(2)強化學習。這是本次演講的重點。接下來,我會分別介紹本團隊在以上兩個方面做的工作。首先,我們先介紹如何通過算法博弈技術來解決人工智能中有關競爭的問題。15 二

32、、冷撲大師圖 1:冷撲大師原理示意圖冷撲大師計算機撲克系統可以說是 AlphaGo 之后最為人所知的人工智能成功應用范例。CMU 團隊設計的冷撲大師的架構如圖 1 所示。與 AlphaGo 相類似,冷撲大師也需要解決超大規模的優化問題,所以 CMU 的團隊采取了很多提升效率的算法技術。例如,他們將原始問題從規模很大的博弈抽象成一個規模較小的博弈,再求解這個小規模博弈。在抽象的過程中,他們應用了很多圖異構、同構的概念和技術。在求解這個小規模博弈并得到納什均衡之后,他們通過逆模型將小規模博弈的納什均衡映射回原始的問題中。值得一提的是,這項技術與深度學習并沒有關系,這個例子很好地說明了深度學習(甚至

33、是深度強化學習)并不能解決所有的問題。實際上,也曾經有很多團隊試圖通過深度學習解決與撲克相關的問題,但是其最終得到的效果與使用基于優化的技術所得到的效果仍然有一定差距。實際上,深度強化學習技術至今沒有很好地得到理論上的證明。面對一個復雜的問題,如果我們能利用優化技術和基于算法的技術對其進行求解,達到均衡或最優(或者近似最優)的狀態,通常會比使用基于強化學習的技術效果更好。接下來,我會介紹一些本團隊近期利用優化技術求解競爭環境下的人工智能問題的一些工作。16 圖 2:計算零和多方擴展式博弈中的 Team-Maxmin 均衡在被 AAAI 2020 錄用的論文Computing Team-Maxm

34、in Equilibria in Zero-Sum Multiplayer Extensive-Form Games中,我們在多方博弈問題上進行了一些研究。之前我們提到,在人工智能德州撲克系統剛剛被成功研發的時候,它只能處理兩方的博弈,因此其商業價值是有限的。實際上,在網絡游戲平臺,或現實的賭場中,德州撲克比賽需要有很多人參與,因此研究涉及多方博弈的德撲系統是過去七八年中該領域面臨的重大挑戰。在涉及多方博弈的德州撲克比賽中,原先基于條件隨機場(CRF)的理論和技術都會失效。盡管去年 Facebook 的研究團隊做了一些多人德撲環境下機器與人對抗的工作,但是就技術本身而言,并沒有任何的進展,他們

35、還是擴展了之前雙人德撲的技術,并且進行了一些真實的對抗。近年來,許多研究者都試圖開發人工智能德州撲克系統,Sandbolm 等人他們首先提出了一種解決方案:首先,我們把多人德撲分成兩個隊,即形成一個人跟多個人競爭的局面,而這里的多個人可能形成一個團隊,這樣的博弈叫 Team-maxmin 均衡(TME)。我們采用了很多優化技術,在求解 TME 的問題上做了一系列工作,我們提出的方法的性能要優于所有現有的方法。17 圖 3:在多方標準式博弈中收斂到 Team-Maxmin 均衡在標準式博弈方面,我們于 ICML 2020 上發表了論文Converging to Team-Maxmin Equil

36、ibria in Multiplayer Norm-Form Games。該論文所面臨的主要的挑戰仍然是超大規模的動作空間,當博弈涉及大量參與者時,團隊的動作空間會隨著參與者數量的增加而呈指數式增長。本質上說,我們的目標是找到有效的算法來處理這種超大規模的博弈。在這篇文章中,我們試圖擴展現有的增量式策略生成(ISG),但是如果想要收斂到 TME 狀態,現有的 ISG 方法往往是無效的。我們采用了 ISGT 和 CISGT 等新的技術保證 ISG 算法能夠完全收斂到 TME。18 圖 4:對抗博弈中的欺詐性行為在博弈過程中,各方進行對抗時,我們可能會試著去嘗試使用一些策略,根據對手的反應和策略獲

37、取有關對手的知識。接著,我們進一步利用這些知識來制定策略,達到更好的效果。對于人類而言,我們經常會采取上述策略,有針對性地探測對手的弱點。但是在競爭的環境下,上述策略是較為危險的,對手可能利用我們的學習算法來誤導我們,讓我們最終得到比較差的結果。因此,我們假設在對手可能誤導你的情況下,試圖找到一種魯棒的學習算法。當我們使用這種學習算法時,即使對手知道我們的學習算法,最后我們仍然可以得到較好的策略效果。在我們團隊于 NeurIPS 2019 上發表的論文Manipulating a Learning Defender and Ways to Counteract中,我們考慮到人工智能系統中的競爭

38、對手可能會采取一些欺騙性的技術,試圖能夠通過我們的方法得到較好的結果。19 圖 5:提升大規模博弈中的可擴展性為了提升大規模博弈中的可擴展性,我們在 EC 2020 上發表的論文Playing Games with Machines中,我們通過自動學習機等技術對每個參與者的策略進行更加緊湊的編碼,并且從理論上保證了策略最終得到的結果與真實情況的差距在一定范圍內。三、競爭人工智能環境下的強化學習在前面的演講中,我介紹了在有競爭的人工智能問題中,可以采用一些優化技術來解決相應的問題。而對于大多數上述技術而言,幾乎最后都存在一個理論的界(bound)來衡量求得的解與真正的最優、均衡之間的距離。針對此

39、類能找到近似的最優解、或近似均衡的人工智能問題,也許使用基于優化或 OR 的技術是最合適的選擇。然而,在很多復雜的有競爭的人工智能場景下,我們可能會用到強化學習(RL)技術。在我看來,RL 可能更適合以下場景:(1)無法很好地對問題建模。對于 AlphaGo 和德州撲克系統而言,盡管存在不確定性,但是這些問題本身是能被完美地建模的。(2)規模。人工智能德州撲克系統最早只能解決兩方博弈,如今研究者們嘗試求解多方博弈問題。當智能體數量越來越大時,傳統的優化技術就越來越難以求解博弈問題。(3)對于非凸或完全不能近似的問題,則難以應用傳統的優化技術。(4)無法有效利用領域結構(domain struc

40、ture)。在大規模博弈場景下,由于計算復雜度的限制,我們無法進行許多任務。然而,我們可以利用很多人工智能問題中的領域結構找到更快速的求解方法。例如,冷撲大師應用了很多圖同構,異構的領域結構;此外,許多研究者利用了圖的性質,試圖研究圖上的博弈?;谶@些領域結構,我們也許能夠設計出更高效的算法。在上述情況下,我們可以考慮使用基于強化學習的技術。近年來,與強化學習以及多智能體強化學習相關的研究熱度越來越高。在沒有協調器(coordinator)的情況下,智能體之間可能是相互競爭的、可能是相互對抗的,20 有可能部分智能體相互競爭,部分智能體相互對抗。在這樣的環境下,我們需要確定每個智能體采取的策略

41、,通常我們會采用中心化訓練、去中心化執行(CTDE)等架構。近年來,在這個欣欣向榮的領域中,人們提出了各種各樣的算法(例如,MADDPG、COMA、VDN、QMIX 等)。接下來,我會介紹本團隊最近年來使用強化學習技術,求解復雜競爭環境下的人工智能問題的相關工作。我們的工作涉及包括游戲、安全、電子商務、城市規劃等諸多領域。在有些領域中,智能體之間的競爭會特別激烈,而在其它的領域中競爭則沒有那么激烈;在有些領域中,我們獲得的數據很多,但是可能在其它的領域中,數據就會少一點,所以我們會針對具體情況設計不同的算法來解決實際問題。圖 6:基于深度神經網絡的橋牌系統在我們于 AAMAS 2019 上發表

42、的論文Competitive Bridge Bidding with Deep Neural Networks中,我們以橋牌為場景展開了研究。我們在進行這項研究時,CMU 的隊伍還沒有嘗試研究多人德州撲克。那時,我們認為橋牌比兩人德州撲克更加復雜:橋牌游戲中有四個玩家,這些玩家起碼會組成兩個隊,盡管我和我的合作伙伴會合作,但實際上我并不知道合作伙伴的牌是什么。所以在不確定合作者的牌是什么的情況下,想要更好地進行合作確實是一個挑戰。實驗結果表明,我們的工作取得了目前最好的效果。實際上,我們采取的方法與 AlphaGo 存在一些相似之處:我們針對如何出牌設計了一個策略網絡(PNN),而我們還設計了

43、另外一個網絡來預測合作伙伴的牌,預測結果會成為 PNN 輸入的一部分。21 圖 7:將深度強化學習用于阻止電商平臺上的惡意刷單行為此外,我們也嘗試使用強化學習技術幫助電商平臺去制定很好的策略,來優化某些優化目標。在我們于 IJCAI 2018 上發表的論文Impression Allocation for Combating Fraud in E-Commerce via Deep RL中,針對淘寶平臺上的刷單問題(有很多惡意用戶想利用阿里電商平臺的推薦系統中的漏洞最大化他們的效益),我們從平臺的角度設計懲罰這些惡意用戶的策略,從而阻止這些惡意用戶參與刷單。為了實現這一目標,我們基于深度確定性

44、策略梯度(DDPG)以及相關技術,學習到了一系列有效的策略,并且成功應用于該電商平臺。圖 8:通過對抗性樣本提升刷單檢測網絡的魯棒性 22 此 外,在 于 WWW 2019 上 發 表 的 論 文Improving Robustness of Fraud Detection Using Adversarial Examples中,我們使用對抗性樣本攻擊能夠偵測交易是否存在刷單行為的網絡,根據網絡受攻擊后的情況,研究如何提升網絡的魯棒性。盡管這項研究工作于對抗生成網絡(GAN)有相似之處,但是當我們要攻擊的網絡與傳統的圖形圖象識別系統有很大的差別。因為在刷單檢測的場景下,幾乎所有的變量都是離散的

45、,這導致傳統的基于梯度的技術效果都較差。因此,我們需要設計一些新的技術來解決此類問題。圖 9:將強化學習用于城市規劃(動態 ERP)我們也嘗試將強化學習技術應用城市規劃(例如,電子收費系統 ERP)。具體而言,我們通過 ERP 系統收擁堵費,這種做法在新加坡等地被廣泛應用。例如,在早高峰的時段,可能經過市中心的擁擠路段需要花費 30 元人民幣。對于傳統的基于 ERP 的擁堵收費算法而言,其收費的計算方法是固定的。然而,我們認為可以設計更為合理的收費方式。我們希望能夠針對不斷變化的交通路況動態調整收費標準:可能某時刻市中心道路十分暢通,但是考慮到 ERP 的收費價格,很多人不愿意進入市中心,是對

46、道路資源的極大浪費。為此,我們提出了動態 ERP的概念。研究初期,我們嘗試通過強化學習(非深度強化學習)的技術以及一些函數近似方法求解該問題,從而緩解新加坡的城市擁堵現象。在這種復雜的大規模規劃問題中,我們需要對所有的需求及其不確定性進行建模。此外,我們還需要對架構變化之后,所有的車選擇路徑的決策進行建模,這其中也涉及到一些博弈的問題。23 圖 10:基于多智能體強化學習的大規模動態 ERP在 IJCAI 2019 上,我們在論文Dynamic Electronic Toll Collection via Multi-Agent Deep Reinforcement Learning with

47、 Edge-Based Graph Convolutional Networks中使用多智能體強化學習技術,并考慮了交通問題的相關特質(例如,影響的局部性某處的交通堵塞開始可能只會影響周邊區域,然后慢慢向外傳遞)。因此,我們試圖將 GCN 引入模型,從而更好地對針對該領域的特點進行建模。這些技術放在一起,我們基本上能夠解決新加坡的道路擁堵問題。通過動態地對擁堵費進行定價,我們提升了整個交通系統的性能,即減少整個系統的堵塞,或優化其它任何可能的目標。圖 11:基于事件的深度強化學習方法 24 在 ICLR 2020 上,我們發表的論文Learning Expensive Coordination

48、:An Event-Based Deep RL Approach考慮幫助政府或公司高層進行決策,這些決策可以激勵下層的參與者達到性能良好的均衡狀態,最終使優化目標最大化。具體而言,我們的方法會考慮一個制定決策的領導者(政府或公司的高層),這名領導者下面有一些自私的、相互競爭的下屬。我們的方法旨在在上述情況下為領導者設計一種好的決策方案,令激勵下屬達到好的均衡狀態,從而使整個系統的性能最優。本質上來講,這是一種機制設計問題,但是我們需要考慮一些更復雜的場景。為此,我們設計了一種新的架構來解決該問題。對于領導者而言,我們將領導的決策建模為一個事件(events),并以此更新基于事件的策略。如圖 1

49、1 右側所示,從領導者的角度來說,每隔一段時間會給每一個下屬施加一種新的激勵措施,或者希望修改其策略。這里的難點在于,我們需要在給定領導者的策略的前提條件下,對下屬之間博弈的過程建模。同樣,這里的博弈可能涉及到超大規模的動作空間。因此,我們也研發了一些抽象技術。圖 11 展示了該模型的總體的架構,它包含領導者模塊、下屬模塊。在實驗中,我們將本文提出的模型跟目前性能最優的一些算法進行了對比。圖 12:基于交互式影響的分層強化學習在 IJCAI 2020 上,我們發表了論文IHRL:Interactive Infl uence-based Hierarchical Reinforcement Le

50、arning,試圖解決分層強化學習的場景下,高層的策略通常會存在的非穩定性(non-stationarity)問題。從本質上說,非平穩性指的是低層的策略會不斷動態變化。即使高層處于相同的狀態(state),在不同的時間步上,低層的策略可能是完全不一樣的,這會導致我們得到不同的狀態轉移結果以及高層策略的獎勵。25 我們采用了一種簡單的方法解決上述問題,即我們希望高層策略會基于低層策略的表征而變化,我們需要對低層策略進行適度的表達,在高層和低層策略之間建立適度的通信,在這種機制之上再對高層策略進行優化。系統的架構如圖 12 所示,我們要對低層策略進行建模與表征,然后將這種表征傳遞給高層策略,從而使

51、高層策略基于這種表征進行更穩定的策略更新。同時,我們設計了相應的技術提升整體策略的探索效果,取得了比目前最優的模型更好的效果。在 我 們 于 ICML 2020 上 發 表 的 論 文Learning Effi cient Multi-agent Communication:An Information Bottleneck Approach中,研究了有關多智能體通信中帶寬有限的問題。在許多領域的多智能體通信過程中都存在這一問題。例如,在機器人足球比賽中,會限制每個機器人在一定的時間內,取得相應數量的勝場,這是一種強硬的約束。在這種環境下,我們需要學習相應的策略,決定該智能體應該如何進行通信、

52、與誰進行通信,如何確定獲勝等信息。首先,我們根據無噪聲編碼、服從高斯分布的隨機變量熵值最大這兩個通信原理確定了有限帶寬與信息熵之間的關系?;谠摾碚?,我們試圖將帶寬約束轉化為對于熵的約束,試圖壓縮傳遞的通信信息的熵。實際上,我們通過信息瓶頸技術引入這種約束。信息瓶頸是一種幾年來非常流行的技術,它被廣泛用于分析深度學習系統中的基礎理論。本質上說,我們希望在滿足熵約束的同時,傳遞更多有效的信息。因此,我們通過該約束決定保留怎樣的信息,以及調度器(scheduler)如何聚合來自不同智能體的信息并將其分發給其它的智能體,最終進行決策。實驗證明,我們的方法也取得了比所有目前最優的方法更好的效果。圖 1

53、3:通過非確定性的人類反饋學習行為此外,我們在 UAI 20 上發表的論文Learning Behaviors with Uncertain Human Feedback中使用強化學習 26 技術,讓智能燈能夠根據用戶在不同的狀態下的反饋,學習如何找出最優的設置,優化其性能,從而使用戶滿意。在這項研究中,我們僅僅使用了用戶的反饋,用戶如果不喜歡當前設置,可以對燈做出調整。但是用戶有各種各樣反饋模型,難點在于確定這種反饋到底如何反映出用戶真實的喜好。圖 14:合作式人工智能挑戰賽獲勝方案我們的團隊之前也參與了一些合作式人工智能挑戰賽。實際上,該競賽也涉及到一些競爭問題。該競賽比現在的人工智能星際

54、爭霸比賽要簡單一些,但需要注意的是:我們需要在該競賽中進行特別高效的學習。因為在現在的人工智能星際爭霸比賽中,我們可以使用模擬器進行無數局訓練。那當時我們所面對的比賽場景下,模擬器的速度非常慢,并且不能加速。因此,在狀態空間非常大的情況下,我們需要通過極其有限的時間步的訓練,找到很好的策略。四、結語在我看來,未來的人工智能系統可能需要更多地考慮復雜的環境下的決策問題。例如,環境可能是隨機的,可能有多個參與者,可能需要考慮序列化的決策,參與者之間可能存在競爭或合作的關系,還有可能涉及到分布式的優化。27 圖 15:復雜環境下的人工智能我認為,在未來,對于解決上述問題來說,多智能體強化學習可能會非

55、常的重要。但是目前來看,這些技術正處于起步階段,還有很多問題有待解決。目前,多智能體強化學習技術在解決上述問題的時候,幾乎仍然完全沒有辦法把基于優化技術的相關結論和方法集成到解決方案中,該領域的研究仍然面臨著很大的挑戰。28 滴滴 AI Labs 首席研究員秦志偉:深度強化學習賦予網約車交易市場新機遇整理:智源社區 任黎明在第二屆北京智源大會“強化學習”專題論壇中,滴滴 AI Labs 首席研究員秦志偉博士做了深度強化學習在網約車交易市場中的應用的主題演講。秦志偉,滴滴 AI Labs 首席研究員,滴滴 AI Labs 強化學習負責人,主要研究方向為強化學習、運籌學優化,智能交通線上運營及網約

56、車交易市場策略優化研究。與團隊獲得 2019 年度瓦格納運籌學杰出實踐獎(Daniel H.Wagner Prize)。在本次報告中,秦志偉介紹了滴滴網約車如何利用深度強化學習來全局優化提升用戶出行體驗和司機收入。一、滴滴網約車興起的背景及訂單分配的重要性網約車已經風靡全球,在中國和美國兩個市場獲得了前所未有的發展。其興起的主要原因是,隨著美國的城市人口已經接近總人口的 82%,中國的城市人口接近總人口 58%,傳統的交通方式已經無法滿足人們的出行需求,唯一解決的方案就是雙邊交易市場(Two-side Marketplace)。在雙邊交易市場中,司機和乘客都是市場參與者,其中司機關注的是如何增

57、加收入以及如何盡可能地降低空駛時間;而乘客則更關注乘車體驗,如司機接駕時間、接駕距離、訂單響應率、完成率等。于是作為雙邊交易市場平臺,就需要通過訂單分配、司機調度及價格設定來同時優化這些指標??紤]訂單分配的過程。當乘客把出發地和目的地輸入到平臺后,平臺會為每個適用的路線提供一個預計報價,然后生成訂單。隨后,系統會搜索附近空閑車輛,進行訂單分配,如果分配成功,該訂單會被指派給一個司機,乘客會被告之駕駛員距離當前位置有多遠。如果由于附近車輛需求量低而沒有車輛,導致訂單搜索和分配耗時太久,乘客可能會放棄該訂單;如果司機需要很長時間來接駕,乘客也可以取消訂單,尋找其他出行方式。訂單分配事實上并不僅僅是

58、影響到當下司機和乘客的接乘結果/短期收益,更重要的還會影響到未來的結果/長期的收益。29 圖 1:訂單匹配重要性引例舉例來說,假設某地區有冷區(乘客較少)和熱區(乘客較多)兩個區域,如圖 1 左圖所示,在冷區,有一位乘客和兩輛空閑的車輛(熱、冷區各一輛),如果把訂單與冷區車輛分配成功,則會降低總體司機空駛時間,因為熱區的車輛可以馬上接到另一個訂單。再來看右圖,有一輛空乘車和兩個訂單(熱、冷區各一單)的情況。兩個訂單舉例都比較遠,在司機去接乘的過程中,乘客很容易因為等待時間較長而取消訂單。但相對來說,前往熱區的訂單可以降低整體空駛時間,并提升整體司機收入,因為即使乘客取消了訂單,司機在熱區也更容

59、易接到新單。二、泛化策略迭代框架網約車訂單分配問題實際上是一個動態優化問題。首先從需求上來看,用戶在任意時間都有可能打車,訂單請求是全天候不斷進入系統。其次,司機也可以隨意上、下線,出租車可用狀態是隨機的。解決的辦法是在線訂單分配/匹配策略(),讓訂單進入系統之后立刻可以做出分配決策。針對這一策略,優化的目標是交易市場的效率,具體則包括,1)提升整體的司機收入()()1Niimax Jp=;2)訂單的完成率()11(0)/NiipN=;30 3)響應率N/N+;4)減小司機接駕距離()()()()()11,/N ioNiioolid ll+=等。這里各個符號的意義可以查看下表:圖 2:在線訂單

60、分配/匹配策略符號表秦志偉提出了基于強化學習的泛化策略迭代框架,來解決上述動態優化問題。31 圖 3:泛化策略迭代框示意圖首先,在一個既定派單策略下,收集訂單交易數據;隨后,使用策略評估方法(Policy Evaluation)學習所有數據的價值函數,通過價值網絡生成一個新的訂單分配策略,然后反復迭代優化。在分配策略輸出的過程中,持續迭代深值網絡也便于遷移學習,從而能夠更好地為多個城市制定出分配策略。三、行程分配-庫恩-蒙克雷斯(KM)算法圖 4:KM 算法求解動態供需匹配問題 32 動態供需下的優化訂單分配的基本方法是,在預先定義的時間窗口內對訂單需求和空閑司機進行批量化處理,并在時間窗口末

61、端(如圖 4 右邊紅色豎線)求解訂單分配問題。這是一個線性的分配問題,它可以通過 Kuhn-Munkres 算法或匈牙利算法來求解,其權重(w)可以簡單的設為司機和乘客之間的預計距離,從而最小化批量處理內部的總接駕距離。這個數學規劃問題可以看做,輸入是邊權重(w),輸出(z)是匹配,尋求恰當的 z 使得策略值最大。圖 5:Kuhn-Munkres(KM)算法上述方法得到的策略()是短時優化(幾秒內)訂單分配問題。而從前文提到的冷熱區分配問題中,我們知道,在訂單分配中長遠利益很重要的。因此,我們可以把司機的狀態(state,離散時空網格)及動作(option:服務訂單或空閑)建模為半馬爾科夫決策

62、過程,如圖所示。圖 6:半馬爾科夫決策過程 33 option 可以跨越多個時間單元。對 option 的即時獎勵(reward)是司機行程收入,司機的轉移狀態是由轉移概率控制11,)|(ttttsP ss o+,在該案例中,轉移概率可以認為是固定的。半馬爾科夫決策過程(Semi-Markov Decision Process)是回合制。當狀態中時間是一天的最后一刻時,司機的狀態為終止狀態。如圖 6 所示詳細描述司機軌跡:第一段,司機空駛來接駕,即時獎勵為 0;第二段為司機在服務狀態中,即時獎勵為 p;第三階段為新訂單的空駛,即時獎勵為 0。Option 的獎勵跨越多個時間單元。把 optio

63、n 獎勵分為段,假設未來時間越遠獎勵越小,對每段做一個適度的衰減,同時考慮到司機空駛接駕時間(e)所帶來的獎勵系數e),我們可以得到長時間內司機的獎勵函數:司機的策略是從狀態映射到訂單的一個函數,該策略從個體的角度出發,與系統策略成為對偶關系,即當系統()將訂單 i 分配給司機 x,司機的策略(d)選擇接受訂單。價值函數(Value function)與給定的策略()相關聯,它是在一個長期累計收入的期望;給定當前司機的狀態,它可以從大量歷史真實數據中學習出來。那么如何學習訂單策略的價值函數呢?秦志偉提到發表在 KDD 2018 上的一項工作:表格時間差異學習(Tabular Temporal-

64、diff erence(TD)Learning)。34 圖 7:表格時間差分學習策略評估方法圖 7 中的四個表格(對應圖 6 中四個時間點),分別代表不同時間點的時空狀態。在 TD 學習方法中每個狀態的價值由動態規劃更新,狀態轉移為行程的價值差分,即起始位置價值函數的預測和當前價值函數的差。于是,我們可以利用當前分配策略的價值函數,通過計算每個司機和乘客的 TD 差,來求得分配問題的邊權重。圖 8:邊權重 35 邊權重的定義同時考慮了訂單的當前狀態價值和目的地的狀態價值,有效地解決了前面兩個引例中長期收益的問題。從線性分配問題生成的分配策略并不是對單一的司機貪婪,而是對批量的群體司機貪婪,目標

65、是優化批量司機的整體長期總收入,即司機累計獎勵總和:雖然表格式策略評估方法易于使用,但其存在以下三個不足,所以其需要繼續完善相關表征和訓練方法。維度詛咒:表格式表征不能捕獲供求動態的特質,需要更多的場景狀態來豐富狀態表征,表格式價值函數在特征數量上是極少的,其大小會隨特征數量的增加而指數增加;數據稀疏:訓練數據不能很好覆蓋整個狀態空間,如何將這個價值函數泛化到以前沒有出現的狀態,得到的結果將會很差;知識遷移:平臺如何從一個城市的模型訓練中提取有用的信息,來支持其他城市的模型訓練,從而提高訓練的效率和質量?表格式的價值函數缺乏遷移學習的基礎,神經網絡則比較適合。四、基于深度強化網絡價值學習的訂單

66、策略評估為了克服上述局限性,秦志偉等人提出了基于深度神經網絡的價值學習算法 CVNet(如下圖所示),來進行策略評估:圖 9:泛化策略迭代 36 在狀態表征方面,CVNet 能夠充分利用層次化的六邊形網格系統,來學習自適應空間位置的變化。首先,通過不同層級和大小的格子組合獲得特征空間地理位置,每一個位置都能表示為一組不同層級記憶式嵌入的加合,這些嵌入形成了一個高維可學習的向量,它們組成了嵌入矩陣M的行,量化單元 q 為激活矩陣的行,這些向量行隨后會被加和算子聚合起來。在價值函數的訓練方面,CVNet 設計了一個正則化的方法,每個隨機梯度下降更新的平方損失項后面加上一個神經網絡 Lipschit

67、z 的懲罰項,Lipschitz 常數可以使輸入的新函數對輸入過程的擾動不太敏感,這對于神經元網絡非線性價值函數的逼近很重要,因為在網絡更新中每一步都要用到上一步對價值函數的逼近,在隨機梯度下降過程中,低質量的更新產生的誤差會迅速蔓延至全網絡,因此保持一個穩定的值函數對訓練的穩定性至關重要。圖 10:CVNetLipschitz 正則化秦志偉介紹了深度價值網絡泛化策略迭代的整體網絡架構(如圖 9),該網絡結構除了未知的輸入信息還有時間,動靜態的場景特征作為狀態特征的輸入,場景特征會通過記憶式嵌入與位置特征嵌入拼接在一起,經過 MLP 層輸出價值數值?;诖?,我們可以獲得一個非常實用的兩階段迭代

68、解決方案,包括基于 DRL 學習階段和二分圖訂單分配的規劃階段:學習階段負責策略評估且價值網絡的訓練在一個類似 DQN 的框架內進行 TD 類的更新;規劃階段負責基于更新過的價值函數生成一個進階的分配策略,在分配邊權重中體現長期價值司機、乘客的TD 差,其與前文所述的 TD 學習的情況一致。37 圖 11:AB 測試滴滴公司將此方案部署到三個城市,進行歷時一個月的 AB 測試。AB 測試派單算法并不簡單,它和測試推薦系統有較大的差異,主要原因該場景為雙邊市場,雖然訂單可以分流,但是司機可以同時接兩組的訂單,這使得實驗無法完全獨立分配。若把司機獨立會產生兩套系統,造成較大的工程成本。所以應該選擇

69、其他替代方案,如讓兩個派單算法在同一個城市運行,并且最小化相互干擾。通過時間片輪轉方法讓這兩個算法在一天中交替執行相同的時間(如 3 小時),且每天執行順序都在切換,實驗持續偶數天。實驗結果(如圖 11 所示),與距離派單的基線相比,基于 Deep-RL 的方法都具有顯著的表現。在司機收入、訂單應答及訂單成交率指標都有統計學意義的顯著表現,這說明司機和乘客的體驗都有所改善。五、重定位策略研究分析及未來研究方向車輛重定位(復位)策略,即把司機轉移到有更好長期收入前景的地方以增加司機整體收入,減少空駛時間。該策略類似于人工智能司機輔助系統,它可以為司機空閑時提供去那里的指示,并且可以告訴司機何時上

70、線或休息。傳統的做法是,司機根據自己的經驗來做重定位決策。針對該問題,秦志偉等人建模了兩種類型的重定位動作:1)常規重新定位:司機停留在當前的區域或到相鄰區域,其涉及相對較短的訂單距離;2)長時間搜索重定位動作:訂單可能會超越當前區域,把司機帶到更遠的地方,但其獎勵的期望值更高。在訂單分配策略中假設所有的狀態空間情況相同,重定位動作的獎勵是由訂單重新定位策略的成本和費用決定。38 圖 11:核心思想由于重新定位的模型是動態的,因為司機在空駛狀態進行重定位動作,且在重定位過程中平臺可以隨時將訂單分配給司機,司機也可以在任何給定的狀態下停留,這些可能會導致平臺的成本增加。為此,秦志偉提出決策-時間

71、規劃(Decision-Time Planning)模型來評估訂單分配策略。在決策-時間規劃模型中,司機在狀態 s 訂單分配的概率為 P(s)d,空駛的概率為 1-P(s)d,重定位的當前狀態為 S0,目標狀態為 Si,訂單服務預期時間間隔 ETA 為 t(s0,si)。圖 12:決策-時間規劃的環境模型為了在決策時間計算出最優重新定位策略動作,該模型會基于價值的策略搜索方法,來評估重定位策略動作的狀態價值(),Q s a的優劣(見下式)。39 圖 13:估計 Q 值其中 Conditional V-Net 是指保持分配數量相同情況下,使用 V-Net 學習上式中 Conditional V-

72、Net 的狀態價值 V,()V s表示狀態動作()Q s,o的價值函數。通過下式進行雙重策略評估,即同時訓練()Q s,o和 V(s)(見下式),并使用與 V 和 Q 網絡相同的狀態表征層和雙重分類器更新優化 V(s)和()Q s,o?;趦r值的策略搜索方法,通過下列三個式子,對訓練過程進行調整可以獲得新狀態最優動作的狀態值,并且每一步都會產生近似最優 Q 值的樣本值,以擴展重新定位策略。此外,向平臺上的最優秀的司機學習,也很重要。每位司機關于城市道路擁有極強的領域知識,這些知識可能很難從價值函數中推斷出來,例如,有些地區可能更容易停車和接駕。充分利用擁有高收入及高完成率的司機的空駛軌跡數據,

73、從而學習重定位的隨機策略。40 圖 14:充分利用司機經驗學習時空特征此外,針對行程較長的訂單,會把司機送到郊區或低需求的區域,當應用鄰近區域重定位時,效率就會很低。針對這一問題,秦志偉等人提出了單步預測(貪婪算法)的方案。該方法可以搜索更大的區域半徑以提供更多的訂單策略,形成一個訂單狀態價值(如訂單完成時間最短)排列的目的地候選集。但該算法進行重定位時搜索訂單時間會比較久,并可能要求司機到一個存在更高需求的地區(在該區域可能會有連續的訂單會分配給司機)。圖 15:長程搜索因此,在重定位策略中,根據司機所處的當前狀態及不同的場景會形成三種不同時間決策規劃策略:1.當訂單較多時,模擬歷史高績效的

74、重定位策略會被觸發;41 2.當訂單目的地相差不大時,高價值搜索訂單重定位策略會被觸發;3.當司機在低需求且沒有明確目的地的區域時,長期搜索訂單重定位策略將會被觸發。秦志偉等人將上述方法在中國南方的兩個主要城市進行了 500 個滴滴司機試點。算法組:報名的司機能夠收到算法重定位的提示;對照組:從普通司機群體中隨機取樣(自由空閑駕駛)。實驗連續進行三周,從周一至周五,每天上午 11 點到晚上 7 點。該試點項目的結果以收入率和利用率為評價指標。其中收入率是單位在線時長的收入,即總收入除以總在線時長;利用率是總在線服務時間與總在線時間的比值。圖 16:實驗結果分析如圖 16,三個星期的實驗,在兩個

75、指標上,算法組的結果總體都顯著好于對照組。圖 17:每天的實驗數據對比圖 42 圖 17 是收入率和利用率隨時間的變化。秦志偉團隊發現,在實驗中下雨天氣(B 城市)會導致車輛需求的結果差別很大,而高度動態的供需環境,給真實場景模型訓練帶來重大挑戰,其關乎該城市當地車輛供需量間隙大小,并且該測試實驗的環境也是一個很大的挑戰性,所以在未來將研究中,秦志偉將深入研究如何制定一個快速適應動態環境的魯棒策略以滿足網約車交易市場需求作為本場主題演講的結尾。參考文獻:1 Xu,Z,Ll,Z,Guan,Q,Zhang,D,L,Q,Nan,J,Lu,C,Bian,w.and Ye,J,2018,July.Lar

76、ge-Scale Order Dispatch in On-Demand Ride-Sharing Platforms:A Learning and Planning Approach.In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery Dota Mining(pp 905913).ACM.2 Tang X,Qin Z,Zhang F,et al.A Deep Value-network Based Approach for Multi-Driver Order Dispat

77、chingC.knowledge discovery and data mining,2019:1780-1790.3 Huang T,Ma Y,Qin Z T,et al.Origin-destination Flow Prediction with Vehicle Trajectory Data and Semi-supervised Recurrent Neural NetworkC/2019 IEEE International Conference on Big Data(Big Data).IEEE,2019.4 Qin Z T,Tang X,Jiao Y,et al.Deep R

78、einforcement Learning for Ride-sharing Dispatching and RepositioningC/Twenty-Eighth International Joint Conference on Artifi cial Intelligence IJCAI-19.2019.43 南京大學教授俞揚:更好的環境模型,更好的強化學習整理|AI 科技評論第二屆北京智源大會“強化學習”專題論壇上,南京大學人工智能學院俞揚教授做了更好的環境模型,更好的強化學習的報告。強化學習到底能不能用?有些觀點認為它不能用,這里不能用主要指的是它在真實環境下很難用,但是在類似游戲

79、這種封閉環境下強化學習其實都是很好用的,而且能夠達到很好的效果。我們該如何把強化學習用在真實的環境里面呢?針對于此,俞揚在這次分享中帶來一個很簡單很直接的辦法:使用模擬器。模擬器就是強化學習所運行的環境,通過它我們就可以把強化學習跑出來并得到一個很好的效果。用一句話來說就是,真實環境不好用,模擬器來湊!俞揚的團隊已經和眾多企業合作把基于數據驅動模擬器的強化學習技術用在了淘寶搜索、在線購物、滴滴出租車、倉庫派單、砍價機器人等業務中并取得了很好的效果。另外基于數據驅動模擬器的強化學習技術途徑,正在孵化南棲仙策公司,在制造、物流、營銷等場景落地賦能,致力于將人工智能決策的力量轉化為生產力。在報告最后

80、,俞揚總結了在真實場景下做決策這件事情的四個層次:1.人直接來做決策;2.人為設定模擬器;3.用預測的方法來替代決策;4.數據驅動的模擬器。以下為演講正文:今天這個報告主要是集中在強化學習里面的環境模型上面,我們經常說的 model 指的是環境,像監督學習里面,我們經常說的 model 可能指的是神經網絡的模型或者是其他的模型,像 model based reinforcement 指的就是環境模型。一、強化學習 VS 監督學習這里簡單介紹一下強化學習和機器學習的關系,最經典的一個機器學習領域的劃分包括:監督學習、無監督學習和強化學習。這種劃分基于對某一任務上面的不同反饋機制,監督學習是立即反

81、饋,無監督學習是沒有反饋,強化學習就是涉及他們兩者之間的一種滯后的反饋。這種滯后的反饋對應的就是做決策這樣的任務:做完決策過一段時間后才能看得到最終的決策結果是什么。強化學習其實就是用來處理這樣的決策任務,如果把它和監督學習做預測進行對比,那么我們主要回答的是怎么做,怎么做才能達到我們的目標,不同的任務就會導致我們的整個算法流程會有很大的不一樣。比如說在監督學習里面,做預測主要是解決數據里面是什么,做決策主要想回答怎么做能夠達到我們的目標以 44 使得我們的學習過程變得不一樣。如監督學習會從環境里采集一些數據然后給數據打上標記。輸入和輸出都有了之后我們把中間對應的函數用監督學習的算法還原出來,

82、此時這個可用模型指的就是做預測的輸入到輸出的模型。強化學習模型則不一樣,因為強化學習要考慮的是有沒有達到想要設定的目標。我們從環境中通過我們自己的模型采一批我們自己的策略和一批數據以后,我們學好策略后又會回到這個環境中,我們去驗證一下這個策略有沒有更好、有沒有達到我們的目標。所以我們從目標上面最容易看得清楚這件事情的過程是和監督學習不一樣的。監督學習通常是針對一個固定的數據分布來優化損失,但是在強化學習里面,我們的數據分布是 D,就是我們自己的決策、我們自己的策略。也就是說當我們的策略發生變化時我們的數據也會發生變化,這樣的一個性質就會造成多變。一個很重要的區別就是,監督學習是在一個固定的分布

83、上面來優化損失,這里假定我們過去的數據和我們將來要應用的數據來自于同一個分布,這樣學出來的東西就是可用的。在強化學習里面做決策時會碰到什么樣的數據,實際上取決于做的決策是什么樣的,這就使得我們很難在歷史數據上面訓練得到一個比較好的策略。比如說下圍棋,我們選擇的不同走法會把我們帶到不同的未來,那么要找到最好的未來光靠一個固定的數據集就不太可行,比如說在阿法狗的第一個版本里面用了到人類下棋的數據集,但是在后面就沒有用到。我們光從一個固定的數據集上很難去找到一個最優的決策,那么如果我們不能從數據上面直接找到最優的決策,我們應該怎么做呢?實際上就是要靠試錯,也就是說要試試看,今天走到這一步拿到了 80

84、 分,那么走到另外一步會拿到多少分?我們去嘗試一下,看到了這個結果,才能知道拿到多少分,這樣才能找到比較好的一個決策。有這樣一個區別以后,雖然我們看到強化學習也是通過大量的數據在學,但是這個數據是我們所謂的 agent,也就是我們在環境里面主動采樣出來的策略。所以如果說監督學習依賴的原料是數據集,那么強化學習依賴的一個原料其實是它學習的環境。所以這個環境的存在與否直接決定了我們的強化學習能不能高效的運行起來。那么我們現在能看到的強化學習用的比較好的案例,比如說下圍棋打游戲這樣的案例,其環境都是已經給定的。那里面的所有規則都是非常清楚的,所以我們可以在計算機的環境里面進行大量的采樣,那么我們可以

85、取得達到人類專家、甚至是能夠超越人類水平的效果。所以我們可以看到,當強化學習能夠取得這樣好的結果時,它所運行的環境是一個我們已經非常清楚的或者是一個封閉的環境。如果想把它用在一個真實業務上面,我們就會面臨很大的問題。首先需要強調的是很多業務問題、很多真實的應用都是需要做決策的。如果我們確實能夠把現在做決策的這種能力放到各種應用中去,那么就能夠比人做的好、比專家做的還好,那么我們自然會有很大的收益。但是如果我們去看具體的這些應用時,我們會發現它和打游戲很不一樣的地方就是我們沒有一個現成的做好的一個環境,在真實業務中的環境都是一些真實、開放的、一些邊界不那么確定的一些環境。45 那么我們能不能直接

86、把強化學習用在這樣的環境里面呢?實際上如果我們去看任何一個強化學習運行的過程,我們都會發現它需要很多的探索。所謂的探索就是我們要去試錯,所以這也引來了前段時間對于強化學習能不能用的這么一些批評,有些觀點認為它不能用,其實不能用主要指的是它在真實的環境里面很難用,但是在游戲這種封閉環境下面其實都是很好用的,而且能夠達到很好的效果。二、模擬器針對這樣的情況,我們應該想些什么辦法能夠把強化學習用在真實的環境里面呢。其實有一個很簡單很直接的一個想法,那就是使用模擬器,模擬器就是強化學習所運行的環境,通過它我們就可以把強化學習跑出來并得到一個很好的效果。那么如何得到這樣一個模擬器,如何讓我們的模擬器能夠

87、和我們的真實環境對應上?實際上這并不是一個很新鮮的事情。我們可以看到在制造業和工業界里面有大量的模擬器的工作,所以以往的模擬器大部分是基于人類的知識來進行構造的,也就是用人工來構造的。里面包括比較常見的機器人控制、流體動力學、物流:我們可以把物流的整個場景虛擬的建模出來;上面這些已經有很多人研究了很多年,其實就是為了把里面的動力學模擬做的又快又準。雖然在很多場景上面可以做出來模擬器,但是它們精度還是存在一些不足的,特別是當我們的場景稍微有點復雜的時候,我們很難完全準確的去模擬這個場景。那么當它出現誤差的時候,我們能不能使用這樣的模擬器呢?實際上是可以的?,F在有一些技術能夠讓我們基于這些人工構造

88、的模擬器做出一些比較好的決策出來。舉一個例子,這是我們之前做過的一個關于機械手臂的控制。在真實環境下我們可能不太清楚機械手臂具體有多長,但是由于我們有一個類似的人造的環境,我們可以通過這個環境產生大量的不同機械手臂的長度,使得我們在不同的環境中訓練我們的 agent 以用來適應這樣的環境。所以我們在真實環境中學出來的模型可以對環境做少量的試探,做完試探后的結果可以用來刻畫這個環境的樣子,它就可以很快地把經驗用起來去適應環境。圖 1:模型最初并不知道機械臂有多長,但做幾個動作之后便知道了。46 比如說上圖左右是兩個不同的手臂,剛才執行的 5 個動作就是在試探這個手臂到底是多長,實際上它并不知道手

89、臂有多長,那么做了 5 個動作的適應以后就可以完成這個問題了。也就是我們把經驗的模型重用起來來完成這個任務??梢钥吹?,使用這樣的方法之后,我們在環境里面做少量的幾個試探后就可以一定程度的完成任務。但是如果我們從頭來訓練這個任務,可能需要上百萬的試錯才能完成。所以這是一種能夠利用人工的模擬器方式。另外雖然人工的模擬器不是很準確,但是也能夠給我們的學習進行加速。之前我們做過這樣一個工作:在新機的環境下把各種強化學習的技術整合起來,來看我們能夠把這個問題解決的多快。之前在 19 年的工作中,我們做過在訓練兩天后,能在一臺計算機上面打敗它的內置 AI 的這樣一個實驗。其實我們可以做一個對于星際爭霸游戲

90、這樣復雜的任務:我們可以把它抽象,先做一個人工的小的模擬器,里面只有幾條簡單的規則。通過這個模擬器進行預訓練以后,我們再把它搬到復雜的大的游戲上面來。這樣的一個做法可以使得我們在任何一臺計算能力更弱的機器上面做到在一個小時之內學會打敗他的內置 AI,只需要幾個迭代,就可以達到一個非常高的勝利。這也說明人工設計的模擬器實際上是有很大用處的。但是同時我們還在想,如果模擬器一直是人工設置的,那它會面臨很多問題。第一個就是在人工設置的過程中人力開銷是很大的,另外一個就是人工設置的模擬器都定下來以后不能很好地跟隨環境的變化而變化。所以如果我們能夠從數據上面還原模擬器,就可以緩解這兩個問題。從數據上面去做

91、模擬器就是在當前的狀態下做一個決策,然后確定下面會進到哪個狀態去,這個則是模擬器希望給出的一個答案。我們看到這個也是一個輸入輸出的模型結構。而且如果我們有一些歷史的數據,我們歷史上看到了哪些狀態、做了哪些決策以后,它隨之進入到了哪些新的狀態去,這個看起來很自然的是一個監督學習任務。那么是不是可以用監督學習來幫我們把模擬器建好?實際上在一些情況下面是可以的,比如說這個是去年一個做機器人的工作。這個機器人的實體控制靠收集的大量數據,然后從它的數據上去做一個監督學習,來把這個模型還原出來,然后再在還原出來的模擬器里面學會怎么去控制機器人。結果它的控制會變得像生物一樣更自然一些。但是這種用法實際上有一

92、個條件:機器人在實驗室的環境下能夠完全掌控。換句話說,我們在實驗室的環境下能夠收集到大量的它在各種狀態下面做出控制決策后的響應,這樣的數據我們是能夠收集得到的。收集到這樣的數據以后,我們可以做一個監督學習來還原出一個模擬器出來。47 圖 2:關鍵的問題雖然更多的時候我們面對的數據會更復雜,但是如果所有的決策空間都被我們遍歷過,拿到這樣的數據之后,模擬器也是可以學出來的,可能只是需要一些更復雜的神經網絡模型而已。其實我們在很多實際應用的環境下做過的決策很少,我們不可能把所有的角色全部遍歷過。那么在這樣的情況下面,我們還有沒有可能把模擬器建好,這個是我們面臨的一個最關鍵的挑戰。在缺少大量的響應數據

93、和它的決策情況下,我們有沒有可能做好?在這一方面我們可以先來看一下用簡單的監督學習來做會有什么樣的問題。我們假設真實的環境就是 M*,我們會有歷史上的一個采樣策略,我們歷史上去做一些決策,然后能夠收集到一些數據。我們把我們歷史上做了哪些狀態、有了哪些狀態、做了哪些決策作為我們的輸入,然后把它下面變到哪些狀態作為我們的標記,那么我們可以簡單的訓練一個監督學習。比如說我們可以用 KL 作為我們的目標來訓練監督學習的一個模型,那么這樣我們構造出來的模擬器會怎么樣呢?實際上從我們最新的結果可以看得到,當我們構建的模型在 KL 上面有一個損失有一個界限以后,可以看得到它最后的結果。也就是說我們在模擬器里

94、面去評估一個策略和在真實的環境下面去評估一個策略,它們兩個之間的差別有多大,就是下面這個式子所展現出來的。48 那么這里特別想強調的一點,關于 1-這一項是什么意思?實際上就是我們在學強化學習的時候每一步會有的一個的折扣,折扣通常會選像 0.99 或者 0.999 這樣的一個比較接近于 1 的數字。那么 1/(1-)實際上就是全部的長度加起來以后,它的折扣的權重一共能有多大,所以我們也把它叫做 eff ective horizon。它是我們做決策能夠看多遠的一個評價。在公式右邊我們可以看到是 eff ective horizon 的平方,這實際上是一個很大的數,如果我們用這樣一個方法去學一個模

95、擬器出來,我們面臨的問題就是當我們多走了幾步以后,它的誤差會迅速的放大,會導致我們最后學出來模型的策略很難用。有沒有辦法能夠緩解這件事情呢?實際上我們可以把這種簡單的監督學習換成對于我們分布的一個匹配。這里的分布指的是我們一直在環境里面去運行的策略,我們會不斷的收集數據,我們一直運行下去以后,我們收集到這個數據會呈現一個什么樣的分布?如果只看狀態那就是上圖第一行的定態分布,如果看狀態和動作的,就是第二行的樣子,如果再把這個模型的某一步的轉移概率加上去就是 state-action-next-state 分布。所以這里我們發現我們其實可以把我們的目標從簡單的監督學習換成分布的匹配,主要是做后面這

96、一個匹配也就是 state-action-next-state 分布匹配。那么如果換成這樣的一個匹配以后,我們的算法應該怎么實現呢,之前我們有一些論文的發表,實際上也涉及到了這個方面的一種新的損失,一種新的目標的使用??偟膩碚f,從 idea 上來說,實際上是可以通過對抗學習的方法來使我們的分布匹配(分布匹配)做的比較好,那么如果我們換成這樣的一個目標以后,我們能得到一個什么結果?上面的設置和前面簡單的監督學習是一樣的,我們能得到的結果就是我們去掉了其中的一項的平方,就會使得我們這一項的誤差降低 1000 倍以上。那么這個是我們這個理論上面的一點進步,實際上還有很多關于模型學習的問題沒能得到完全

97、的回答。但是我們在算法應用上面實際上已經做了一些嘗試,所以下面我們就想做一些拋磚引玉,然后看看我們之前實踐過的一些環境上面做出來的一些應用,希望能夠給大家一些啟發。三、應用1.淘寶搜索這個地方要做的決策是什么呢?就是來了一個用戶的搜索請求以后,我們需要展示一個商品以及商品的順序。以往的做法大多數是以預測的方法來做的,也就是說我們過去哪些人點擊了哪些東西,然后我們總的來說是把這樣的一個數據作為一個監督學習的方式來進行利用,然后把學到的模型拿到今天的場景下面來做推薦。49 這里我們考慮到,對用戶而言,實際上以什么樣的順序去呈現這個商品會帶來很大的影響。我們想做決策,但是又不想去干擾真正的用戶,所以

98、我們這里的一個路徑就是用歷史上用戶的數據來學一個模擬器出來。這個模擬器里面是虛擬的用戶,所以我們在模擬器里面推薦一些商品以及商品的順序出來,然后虛擬的用戶就會來買,會點擊或者是跳過去,那么我們就可以在模擬器上面去尋找怎樣的方式能夠有更好的銷售,能夠讓用戶有更好的體驗。之前我們做了實驗的效果,在模擬器里面我們的 GMV 提高了 4 個點。然后我們就想在模擬器里面做的結果能不能拿到真實的環境下面直接去試試看,因為這是我們做的第一個應用例子的環境。圖 3:案例一,用戶模擬實際上在上圖右下角顯示的就是真實的淘寶數據分布和我們的模擬器里面生成的數據分布,紅色的是真實的,藍色的是模擬器的,可以看到它們已經

99、比較接近了。所以我們當時也是把模擬器里面訓練出來的決策的模型,比如說怎么去做推薦的模型,直接放到了真實的環境下面去做測試。AB 測試的結果顯示處比最好的 baseline 提高了兩個百分點。所以這個可以看得到我們即使是沒有做任何的遷移、沒有做任何的環境的擾動這些事情就直接把這個模型拿出來,也是在一定程度上是可以用的。2.在線購物這個例子實際上和淘寶是比較像的,它也是一個在線購物的環境。但它要做的事情是在另外一個側面,也就是怎么樣去設計這個商品才能夠更好地去滿足我們的消費者。這里以冰箱舉例,冰箱有很多屬性,消費者可能更喜歡哪些屬性呢?我們的做法其實是一樣的,我們把這個買家虛擬出來,然后我們去調整

100、商品的屬性,我們可以看到下面是一個實驗的結果,橙色的柱子是現有的在數據上面的商品的一個分布,藍色的是我們在模擬器里面尋找到的更好的一個分布。50 圖 4:案例二,市場比如說我們看第一個圖上面,它會預測現在賣雙開門的冰箱比較多,但是實際上我們的模擬器里面求解出來的結果認為喜歡的用戶可能不是那么多,反而是對開門的冰箱可能會賣得更好。這個例子就是在右上角畫的這兩個冰箱。3.滴滴出租車這里要做的事情是如何給司機推薦一個他的 program 和 plan,然后能夠使得司機的收入盡可能的增加,這里我們的做法也是類似的。圖 5:案例三,出租車實際模擬 51 我們從歷史的數據里面去把司機的虛擬模型學出來,這就

101、是我們的模擬器。然后我們在模擬器里面給司機安排一些程序使得司機的收入能夠提高。我們在去年 4 月份的時候完成了這個事情的線上測試,在線下的我們自己測試的時候差不多提高了 13 個點左右的完單量,然后在線上測試實際上提高了 11 個點多的完單量,同時還提高了司機的 8%的這么一個收入,這也是一個有意義的應用環境。4.倉庫派單在這個倉庫里面,我們實際上要做的是在一個倉庫里面進行一個派單的這樣一件事,這是很小的一個環節。在這個環節我們要把很多訂單給一個工人,工人拿訂單去把我們下單的商品放到袋子里面去,那么把哪些訂單給同一個工人去揀貨,這就是一個優化的問題。圖 6:案例四,倉庫訂單選擇以往在物流場景上

102、面的做法通常是運籌學這種傳統的做法,它首先需要去制定目標,這個目標怎么制定呢?以往的做法就是我們去把地圖給拉出來,然后我們看每一個商品在地圖上放在什么位置,然后我們就按照這個商品在地圖上的位置規劃出一個最短的路徑來作為指標給工人進行派單。但是如果是針對人造的地圖來進行這么一個派單,有很多細節其實沒有辦法體現進去。比如說工人拿貨的時候有不同的高度,這個貨物有不同的重量和不同的形狀,這些實際上都會影響他揀貨的效率。如果我們只是看地圖的路徑長度,則就會忽略掉這些因素。所以用我們的方法來做的時候,也是從數據上面去把這個功能給還原出來,所以我們就會有虛擬的功能,然后我們就給虛擬的工人來派單,然后看這個虛

103、擬功能它怎么派會完成的時間會最少。這個事情做完了以后,我們去年 5 月份的時候在這個倉庫里面做了對比實驗。這個對比就是現有的系統派一單、我們的系統派一單,對比的 6 天下來,我們可以看到上面的數字顯示的是:針對每一個商品,工人去揀貨平均下來的時間是多少秒?6 天平均完以后,我們可以看到我們的效率提升了 10%以上。52 5.砍價機器人有人買東西的時候經常會砍價,那么我們能不能自己做一個機器人出來和那個人來砍價,目標可能是希望我們的這個二手貨平臺的成交率要盡可能的高。圖 7:案例五,砍價機器人這個是當時在云棲大會上的一個展示,這里面還涉及到一些別的像自然語言處理不是我們做的,我們做的是里面的砍價

104、策略。當對方出了一個價之后,我們要決定是賣了還是說我們要還一點價。所以我們這個實驗做完了以后,我們和人去比砍價,要比歷史數據上面的成交率提高一倍。我們在歷史數據上面去學出來一個買家,然后這個買家來和我們砍價,所以在模擬器里面就有很多買家來和我們砍價,然后我們就和買家來學習我們怎么砍價使它的成交率會更高。四、總結以上的這幾個案例希望能夠拋磚引玉、給大家一些啟發。另外我們在做了這些實踐以后,現在做一個總結,看看對于在真實場景下面做決策這件事情,我們都有哪些做法。圖 8:決策方法 53 1.人直接來做決策。人們親自來做決策來使目標最優化,這可能是最原始的做法。2.人為設定模擬器。在模擬器里面去求解最

105、優的決策,然后把它放到真實的環境去用。這樣的好處就在于我們有了模擬器,我們可以用很多算法來求解最優的決策。3.用預測的方法來替代決策。比如說以前做推薦系統基本上是從數據里面來做一個預測,然后將預測的結果交給人或者人做的一個規則,以此來把它變成一個決策的結果。舉個例子就是我們在做推薦的時候通常會有一個預測模型,然后它能夠告訴我們什某樣商品購買率可能是多少,然后我們就按照購買率從高到低來把它展現出來,把商品展現出來。實際上在真實的系統里面已經看到從高到低這個規則已經不是一個最優的規則了。實際上我們在用預測來解決決策問題的時候,中間都有一個轉換。但是如果我們把第二種方式和第三種方式進行對比就會發現第

106、三種方式很好的一個地方就在于它是從數據出發的,當環境發生變化時,它能夠適應得上,但是它的缺陷就在于他沒有辦法去尋優,沒有辦法自己去尋優,因為它沒有一個模擬的環境。4.數據驅動的模擬器。我們首先具有從數據出發這樣的一個優勢,我們可以根據數據來適應環境。另外我們可以在模擬器里面去尋找最優的決策,所以這一條路線有可能實現人不在回路里面。上面的前三種方法都是人在環境中、在整個過程中起到關鍵的作用。而第四種方法人則是可以在旁邊,這不代表人不做監管,所有的決策當然都是需要符合我們設計者的目標,但是它可以完全自動運行,這也是我們現在希望能夠完全實現的一條路徑。54 上交大張偉楠:基于模型的強化學習算法,基本

107、原理以及前沿進展整理:智源社區 張文圣在第二屆北京智源大會“強化學習”專題論壇上,上海交通大學張偉楠副教授做了主題為Model-based Reinforcement Learning:Fundamentals and Advances的演講。在本次報告中,張偉楠教授介紹了基于模型的深度強化學習算法的研究背景及最新的前沿進展。張教授從無模型強化學習與有模型強化學習的對比開始,結合基于黑盒的有模型強化學習的發展歷史,深入淺出地講解了有模型強化學習諸多算法的基本概念、算法起源、實現原理、理論分析以及實驗結果等,詳細介紹了所在課題組在這一領域的最新工作進展,并對這一領域今后的發展方向進行了前瞻性的總

108、結概述。我們查閱演講中介紹的相應算法的論文原著以及相關文獻,對本報告進行了一定的補充說明。報告分為如下幾個部分:1.基于模型的深度強化學習算法研究背景。2.基于黑盒模型的 Dyna 算法。3.Shooting methods:基于隨機采樣的 MPC 算法。4.MBPO 算法理論分析與實現方法。5.最新的 BMPO 算法理論分析與實現方法。6.總結。一、基于模型的深度強化學習算法研究背景深度強化學習算法自提出以來,常用于 Atari Game、圍棋、DOTA、星際等虛擬場景中。人們通常將這種不建立環境模型,僅依靠實際環境的采樣數據進行訓練學習的強化學習算法稱為無模型強化學習(Model-Free

109、 Reinforcement Learning,MFRL)算法,也即是不依賴于環境模型的強化學習算法。這種方法適合應用于深度神經網絡的框架,人們將大量數據以 mini-batch 的形式傳入神經網絡,可以對價值網絡或者策略網絡進行非常高效的訓練。然而,MFRL 發展中遇到的一個困境:數據采集效率(sample effi ciency)太低。在有監督或無監督學習中,人們構建一個目標函數,通過梯度下降(或上升)的方式,不斷趨近理想結果。與有監督/無監督學習不同的是,強化學習屬于一種試錯的學習范式,當前策略的采樣結果如果無法有效幫助當前策略進行提升,則可以認為當前試錯的采樣結果是無效采樣。在 MFR

110、L 訓練過程中,智能體有大量的交互采樣屬于無效采樣,這些采樣沒有對行動策略的改進產生明顯的影響。為了解決無模型強化學習中的這一數據效率低下的問題,人們開始轉向基于模型強化學習(Model-Based Reinforcement Learning,MBRL)的方法。MBRL 的基本思想在于首先建立一個環境的動態模型,然后在建立的環境模型中訓練智能體的行動策略,通過這種方式,實現數據效率的提升。55 將 MBRL 與 MFRL 對比來看,MBRL 存在如下特點:1.環境模型一旦建立起來,便可以采用 on-policy 的訓練方法,利用當前采樣得到的數據訓練當前的策略,在這種情形下,采樣效率是最高的

111、。2.建立環境模型后,便可以選擇性地不再與實際場景交互,在模型中進行訓練學習,完成訓練后再在實際場景中投入使用(off-line RL,也稱為 batch RL)。3.相比于 MFRL,MBRL 數據采樣效率會往往有較大的提升。4.存在模型與實際環境之間的復合誤差問題(compounding error),模型向后推演的幅度越長,推演誤差就會越大,直至模型完全失去作用。MFRL 存在如下特點:1.相比于 MBRL,MFRL 擁有最好的漸進性能(asymptotic performance),當策略與環境交互達到收斂狀態時,相比于 MBRL,MFRL 下訓練所得策略所最終達到的性能會更好,能夠避

112、免出現復合誤差的問題,因而在實際環境中表現會更為優異。2.MFRL 非常適合使用深度學習框架去采樣超大規模的數據,并進行網絡訓練。3.MFRL 經常采用 off-policy 訓練方法,這種情況下會有偏差(bias)導致的訓練效果不穩定(instability)的問題。4.MFRL 需要進行超大量的數據采樣,因而需要超高的算力要求,這種算力要求是很多科研院所或者企業所無法負擔的。關于 MBRL 的進一步分類,其主要包括黑盒模型與白盒模型兩類:黑盒模型中,環境模型的構造是未知的,僅作為數據的采樣來源。由于采樣數據來自于黑盒模型,而不是和真實環境交互得到,因此這些來自模型的采樣數據不計入數據采樣效

113、率的計算中。雖然從計算結果來看 MFBL 的數據采樣效率較高,但由于訓練過程中使用了大量基于模型采樣的數據,因此從采樣數據總量上來看,實際采樣了更多的數據。常用的基于黑盒模型的 MBRL 算法包括 Dyna-Q、MPC、MBPO 等。圖 1:黑盒模型白盒模型中,環境模型的構造是已知的,可以將模型中狀態的價值函數直接對策略的參數進行求導,從而實現 56 對策略的更新。常用的基于白盒模型的 MBRL 算法包括 MAAC、SVG、PILCO 等。圖 2:白盒模型二、基于黑盒模型的 Dyna 算法在報告中,張偉楠教授主要主要介紹了基于黑盒模型的 MBRL 算法。這里環境模型的構造未知,通過采集更多數據

114、的方法來進行策略訓練。這樣處理的一大優勢在于算法具有更好的普適性,可以和幾乎所有無模型強化學習方法結合。MBRL 算法主要流程如圖 3 所示:圖 3:MBRL 算法主要流程首先,當前的價值函數 Q(s,a)以及策略函數(a|s)與真實環境進行交互,完成交互后采樣出環境反饋的數據experience(s,a,r,s)。然后通過采樣出的數據來訓練建立的環境模型 p(s,r|s,a),環境的模型本質上是通過輸入的當前狀態 state 以及采取的動作 action,來預測產生的 reward 以及下一步的狀態 state,很多情況下 57 reward 是根據先驗規則或領域知識生成,這時模型只預測下一

115、步的狀態 state 即可。接下來在當前模型中進行plannning,也就是通過當前模型進行數據的采樣,通過數據采樣的結果去訓練新一輪的價值函數 Q(s,a)以及策略函數(a|s)。Q-Planning 是最簡單的 MBRL 算法。通過與真實環境交互的數據來訓練環境模型,然后基于當前的環境模型來進行一步 planning,從而完成 Q 函數的訓練。首先采集智能體與環境交互的 state 以及采用的 action,將數據傳入建立的黑盒模型中,采集并得到模型虛擬出來的 reward 以及下一步的 next_state,將傳入模型的 state、action 以及模型虛擬出來的 reward、nex

116、t_state 進行一步 Q-Learning 訓練,這樣就完成了一步 Q-Planning算法的更新。期間智能體僅僅通過與環境模型交互來進行數據的采樣,得到虛擬的 reward 以及下一步的 next_state,并進行策略的訓練和更新,智能體未通過與實際環境交互數據來進行策略的更新。圖 4:Q-Planning 算法更進一步,可以將 Q-Planning 與 Q-Learning 結合在一起,并將這種算法稱之為 Dyna 算法。Dyna 算法提出于 90 年代早期,完整的流程示意圖如圖 5 所示??梢钥吹?,將中間的 direct RL 步驟去掉后,就是剛剛討論的Q-Planning 算法。

117、圖 5:Dyna 算法流程示意圖 58 在 Dyna 算法中,首先通過智能體與實際環境的交互進行一步正常的 Q-Learning 操作,然后通過與實際環境交互時使用的 state、action,傳入環境模型中進行 Q-Planning 操作,真實環境中進行一步 Q-Learning 操作,對應環境模型中進行 n 步 Q-Planning 操作。實際環境中的采樣與模型中的采樣具有 1:n 的關系,通過這種方式來提升訓練過程中的 sample effi ciency。圖 6:Dyna-Q 算法以一個迷宮問題的場景為例,智能體從起始點 S 出發,前往目標點 G,智能體可以沿上下左右四個方向任意行動,

118、期間不能穿過迷宮的四周墻壁以及深色方塊所示的障礙物。圖 7:迷宮問題 59 下圖分別對比了 0 planning-steps(只進行強化學習 Q-learning)、5 planning-steps(每做 1 步 Q-learning,做 5 步 Q-Planning)以及 50 planning-steps(每做 1 步 Q-learning,做 50 步 Q-Planning)的情況下的結果。這里的 n planning-steps 不代表前向(forward)推演 50 步,而是指從頭進行一次 state、action 的采樣,從而進行一步 Q-Planning,按照這種方式進行 n 次

119、 Q-Planning 操作。如下圖所示,橫坐標為當前總計完成任務數量,也就是智能體在實際場景中累計從起始點 S 走到目標點 G 的次數??v坐標為完成當前輪次任務時智能體從起始點 S 走到目標點 G 所使用的 action 步數,所使用的步數越低,則當前策略的性能越好。圖 8:對比 0、5、50 Planning-Steps 的情況從圖中可以看到,當 n 值越大,環境模型推演越多時,所需的 episode 任務數量越少,policy 達到最優的時間點越靠前,數據采樣效率越高。MBRL 算法的發展面臨著三個關鍵問題,也是發展的三個思路:1.環境模型的建立是否真的有助于 sample effi c

120、iency 的提高?2.所建立的模型基本都是基于神經網絡建立,不可避免的會出現泛化性誤差的問題,那么人們什么時候可以相信建立的模型并使用模型進行策略的訓練與更新?3.如何適當地把握模型的使用尺度,來獲得最好的或者至少獲得正向的策略訓練結果?三、Shooting methods:基于隨機采樣的 MPC(Model Predictive Control)算法在已經獲得一個有效的環境模型 p(s,r|s,a)后,人們可以從初始狀態出發,基于當前模型對后續動作進行序列采樣12,Ta aa的方式,來獲得一個采樣序列()()()()()()1112221,kkkkkkTTTkNsa rsa rsar=,其

121、中動作序列12,Ta aa通過完全隨機采樣的方式獲得,與智能體的 state 等無關。對于當前狀態為 s,a 的 60 智能體,可以建立一個動作序列12a,Ta aa,從當前的狀態出發,在模型中連續向后進行 T 步推演,可以通過計算得到累計獎勵。共計采樣 N 次,可以得到 N 個積累獎勵,對這 N 個積累獎勵求取平均值,從而得到了在當前狀態 s 下,采取動作 a 時,所獲得的價值函數的無偏估計。()()10s,a1NTkttktQrN=通過對每一個 action 的無偏估計的值的計算,可以選取價值函數的無偏估計值最大的 action,作為當前 state下選擇 action 的策略。在以上整個

122、過程中,幾乎沒有進行策略的學習訓練,而是在基于環境模型的演繹樹上進行搜索。當完成一步action 的選擇后,再在新的狀態的基礎上進行 MPC 操作即可。模型建立之后可能會出現不確定性(uncertainty)的問題,一個解決思路是建立 N 個不同模型,每個模型都對下一步狀態進行預測,將 N 個模型的預測結果取平均,作為接下來預測的結果(Probabilistic Ensembles with Trajectory Sampling,PETS)。這里每一個模型是一個高斯過程,基于當前 state、action 來預測下一步的 state,通過當前 state、action 來得到高斯分布的中心值

123、和方差值,然后通過模型采樣接下來的狀態。每次采樣時,通過 Ensemble 中的 N 個高斯里面采集一個高斯出來,做接下來的推演。通過這樣的方式,可以 capture 環境模型中的兩部分的 uncertainty。一是認知不確定性(epistemic uncertainty),在某些狀態情況下,由于數據缺乏的原因,會導致模型的推演不穩定,方差較大,因此需要通過 Ensemble 的方式來降低模型的不確定性;二是固有的隨機性(aleatoric uncertainty),在每一個模型中,在預測下一步狀態時,會有一個自帶的隨機性,因此通過高斯建模的方式直接將這種隨機性刻畫出來。最終,通過 ense

124、mble 的高斯過程模型,首先采樣出模型,得到一個狀態分布,然后采樣出接下來的狀態,不斷往前(forward)推演。通過這一過程,再結合使用 MPC 算法,從而可以得到有效的行動策略。四、MBPO 算法理論分析與實現方法另一方面,建立的環境模型與真實環境之間一定有偏差(error),這會導致從虛擬的環境模型中訓練得到的策略,在虛擬環境中交互得到的 Value 值與在真實環境中交互得到的 Value 值有所差距,稱為 value discrepancy bound(以下簡稱 bound)。人們將相應的差值定義為如下形式,左側為真實環境中的 Value 值,右側為環境模型中的 Value 值及其相

125、應 bound 差值。是策略自身所導致的偏移(policy shift),這是由于采集數據 61 時的策略為D,而當前采用策略為,策略的不同會導致與環境交互產生的數據分布不同。m為環境模型與真實環境之間的誤差?;谝陨戏治?,伯克利研究員提出一種新的基于模型的強化學習算法 MBPO(Model-based Policy Optimization)。如下所示,灰色模塊所在的主干為智能體與真實環境交互時的一條軌跡。中間采樣出來一個 state 后,由該state 所在的 branch point 開始,使用模型進行一個 k-steps 的分支采樣,如下面的藍色模塊所在的分支所示,并將采樣出來的數據放

126、到一個正常的 model-free 的強化學習算法中進行訓練,從而提高數據采樣效率,并降低模型與真實環境之間的 bound。圖 9:動態模型環境下的 k-steps 分支采樣在這個過程中,分叉后的推演步數 k 的取值起著重要的作用,人們推導了一個 bound 的計算方式:左側為真實環境中的 Value 值,右側為環境模型中的 Value 值及其相應 bound 差值,根據上式計算,只有當 k=0 時 bound 最小,對應著不使用模型進行推演的情形。為了解決這一問題,人們重新查驗推導過程,發現其中一步的m中使用了基于之前時刻的 policy 采樣得到的數據分布,此時如果換成使用當前時刻的 po

127、licy采樣得到的數據分布,如下所示:62 則可以得到一個非常有意義的結果:在新的公式中,通過對 bound 值的計算會發現,當足夠小,也就是當基于環境模型與真實環境之間的誤差相比策略自身所導致的偏移(shift)足夠小時,則 k0 的時候會得到 bound 值最小的情形。以 Mujoco 等環境為例進行分析會發現,的取值通常在 10-410-2之間,能夠滿足相應的要求,從而為環境模型的使用提供了理論上的保證。圖 10:的經驗分析這一分析結果為人們處理為什么使用模型、如何使用模型的問題提供了思路。在解決實際問題的時候,可以去尋找一個合適的 k 值,使得這個 k 值能夠保證 bound 達到最小

128、。63 如下是 MBPO 算法的主要流程,通過尋找基于當前模型的最好的 branch rollout 的步數 k,使得最后獲得最佳的訓練策略。這一流程基于黑盒模型,最后通過 model-free 的方法來對 branch rollout 的數據進行訓練,比如soft AC 等。圖 11:MBPO 算法的主要流程下圖是 MBPO 算法在不同環境下與其它算法的對比實驗,通過 MBPO 的對比實驗可以看出,MBPO 算法在訓練效果上比較明顯的領先于其它算法。圖 12:MBPO 算法的實驗結果 64 五、最新的 BMPO 算法理論分析與實現方法人們使用環境模型進行前向(toward)推演的時候,總是基

129、于當前的 state 去逐步推演后續的 state,也就是當前時刻之后的狀態。相應的,人們也可以建立環境模型,基于當前的 state 去逐步推演之前出現的 state,也就是當前時刻之前的狀態。通過建立環境模型去推演到達當前時刻 state 之前,智能體所經歷的軌跡,這樣的模型被稱為反向模型(backward model)?;诖?,張偉楠等人在 ICML 2020 提出了一個新的算法:BMPO(Bidirectional Model-based Policy Optimization)。推演過程中如果使用前向模型(forward model),從當前 state 向當前時刻后續進行推演,由于每

130、一步推演都存在復合誤差(compounding error),隨著推演的不斷進行,誤差不斷積累,模型推演出的結果與真實環境實際結果之間的差距將會逐漸增大,直至徹底失去作用。進行反向推演的意義在于,當使用雙向模型(bidirectional model)同時進行前向與反向推演時,推演出的軌跡的總長度與使用單向模型一樣的時候,前向模型與后向模型各自所需推演的步數均少于完全使用單向模型的情形,復合誤差的積累要顯著小于完全使用單向模型的情形。圖 13:前向模型和后向模型他們使用 PETS 方法,利用神經網絡結合高斯過程的方式建模,建立反向推演的策略(backward policy),根據當前所在的狀態

131、,通過 MLE(maximum likelihood estimation)的方式學習之前 state 所采用的 action:也可以通過 GAN 的方式,來確定之前 state 下最可能采用的 action:65 通過這兩種方式,便可以學習到反向推演的環境模型。在 BMPO 的采樣環節做 MBPO 的 branch rollout 時,根據玻爾茲曼分布來對選取具有更高價值函數的狀態,以此來保證軌跡中有一個狀態具有比較高的價值函數,從而可以通過雙向模型來學習如何走到當前價值函數比較高的狀態,以及之后選取動作的行動策略,從而最終獲得最好的行動策略。另一方面,我們希望采樣到高價值的狀態。在策略與真

132、實環境中交互過程中,結合當前模型,使用 MPC 的方式來采樣獲得帶來更好價值函數的動作。BMPO 的整個流程如上所述,首先通過 MPC 的方法來進行與環境交互的高價值數據的收集。通過收集到的數據建立模型,根據模型采樣價值函數較高的狀態作為雙向 rollout 的初始狀態。通過雙向模型來進行雙向推演,在獲得的軌跡上使用 model-free 的方法(soft actor-critic)進行策略的訓練。圖 14:BMPO 的總體算法張偉楠等人對 BMPO 與 MBPO 的結果進行了理論分析。當使用前向推演的單向模型(forward model)時,累積的復合誤差為 k1+k2,而使用雙向模型時,累

133、積的復合誤差為 max(k1,k2)。由于 max(k1,k2)一定小于 k1+k2,因此雙向模型帶來的復合誤差會更小,訓練效果也會更好。66 圖 15:理論分析最終基于 Mujoco 環境的對比實驗結果證明了他們的分析:提出的 BMPO 算法能夠比之前人們提出的 MBPO 算法具有更好的數據采樣效率以及收斂效果,圖 16:SOTA 比較他們還對 BMPO 與 MBPO 的復合誤差進行了量化的對比計算,結果發現在 rollout length 相同時,雙向模型具有更小的復合誤差。67 圖 17:復合誤差六、總結MBRL 將會使接下來幾年強化學習領域的研究熱點,對于真實環境下的問題,我們都需要建

134、立虛擬的環境來進行策略的訓練與測試,之后才能應用于真實環境。MBRL 主要分為基于黑盒模型的 MBRL 以及基于白盒模型的MBRL 兩類,這項研究著重分析了基于黑盒模型的 MBRL?;诎缀心P偷?MBRL 近期也出現了許多的成果,比如 ICLR 2020 的 MAAC 等算法。對于 MBRL 未來的發展趨勢,有如下幾點:一是當前研究中所使用的環境比較簡單,比如 Mujoco 環境等。對于復雜的現實環境中的問題,比如研究電商中用戶購買行為時,所面對的挑戰難度非常大,因為這樣的問題中具有非常多的不確定性,環境的 state 本身是離散的。人們所采用的高斯過程更適合連續的機械問題的建模,進行離散問題的建模時,一定會有偏差,這時偏差帶來的累計誤差就會非常大,面對復雜問題時,如何實現高質量的環境建模將是未來研究的熱點。二是如何將理論中推導出的 bound 使用到具體的算法中,MBPO 是一個非常好的實踐,而未來會有更多的發展前景。最后一點,MBRL 可以應用于多智能體強化學習(Multi-Agent RL,MARL)中,例如當前滴滴公司使用 MARL處理車輛派單問題時,也會建立虛擬的環境模型來進行訓練和測試,然后再在現實環境中進行部署。

友情提示

1、下載報告失敗解決辦法
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站報告下載后的文檔和圖紙-無水印,預覽文檔經過壓縮,下載后原文更清晰。

本文(22強化學習專題論壇.pdf)為本站 (會議專家) 主動上傳,三個皮匠報告文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。 若此文所含內容侵犯了您的版權或隱私,請立即通知三個皮匠報告文庫(點擊聯系客服),我們立即給予刪除!

溫馨提示:如果因為網速或其他原因下載失敗請重新下載,重復下載不扣分。
客服
商務合作
小程序
服務號
折疊
午夜网日韩中文字幕,日韩Av中文字幕久久,亚洲中文字幕在线一区二区,最新中文字幕在线视频网站