八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

AIBigbull2050發表於2019-10-21

機器之心釋出

作者:Luo Sainan編輯:H4O

遷移學習透過將源任務學習到的經驗應用到目標任務,從而讓目標任務的訓練更靈活高效,也更貼近現實情況——往往要解決的目標問題可能很難直接學習,因為訓練資料不足或者無法直接與環境互動難以獲得訓練資料。因此將遷移學習應用到強化學習中,勢必能幫助強化學習更好地落地到實際問題。本文將從遷移學習、強化學習中的遷移學習、強化學習中的遷移技術最新進展三個部分向大家分享。

Part 1 遷移學習

一、遷移學習是什麼?

機器學習技術在許多領域取得了重大成功,但是,許多機器學習方法只有在訓練資料和測試資料在相同的特徵空間中或具有相同分佈的假設下才能很好地發揮作用。當分佈發生變化時,大多數統計模型需要使用新收集的訓練資料重建模型。在許多實際應用中,重新收集所需的訓練資料並重建模型的代價是非常昂貴的,在這種情況下,我們需要在任務域之間進行知識遷移 (Knowledge Transfer) 或遷移學習 (Transfer Learning),避免高代價的資料標註工作。

比如說,我們在一個感興趣的領域中有一個分類任務,但我們只在另一個感興趣的領域中有足夠的訓練資料,其中後者的資料可能在不同的特徵空間中或遵循不同的資料分佈,我們希望能夠從後者中將知識進行遷移從而幫助完成前者的任務。現實生活中就有許多遷移學習的例子,比如說,掌握 C++語言有助於快速上手 Java、Python 等。人們可以聰明地應用以前學到的知識來更快更有效地解決新的問題,這就是一種遷移學習。

遷移學習的定義[1] 如下:給定一個源域 Ds 和學習任務 Ts,一個目標域 Dt 和學習任務 Tt,遷移學習致力於透過使用源域 Ds 和源任務 Ts 中的知識,幫助提升目標域 Dt 中的目標預測函式 f_T() 的學習,其中 Ds≠Dt,或者 Ts≠Tt。

二、遷移學習的三個主要研究問題

在遷移學習中主要研究以下三個問題:

  • 遷移什麼
  • 如何遷移
  • 何時遷移

「遷移什麼」指的是跨域或跨任務遷移哪一部分知識。一些知識可能是特定於單個域或任務的,而一些知識可能在不同域之間是相同的,透過遷移知識的選擇可以幫助提高目標域或任務的效能。目前,遷移學習的內容主要可分為四類:例項遷移、特徵表示遷移、引數遷移、關係知識遷移。

在發現可以遷移的知識之後,需要開發學習演算法來遷移知識,這就是 「如何遷移」的問題。

「何時遷移」指的是在什麼情況下可以進行遷移,在哪些情況下不應該遷移。在某些情況下,當源域和目標域彼此不相關時,強行進行遷移可能會失敗。而在最壞的情況下,它甚至可能損害目標域的學習表現,這種情況通常被稱為負遷移。當前有關「遷移什麼」和「如何遷移」的大多數遷移學習工作都暗含源域和目標域彼此相關這一假設。但是,如何避免負遷移仍舊是遷移學習領域受關注的問題。

三、遷移學習方法劃分

根據遷移學習的定義,表 1 中總結了傳統機器學習與各種遷移學習設定之間的關係,其中根據源域和目標域與任務之間的不同情況,將遷移學習分為三個類別:

  • 歸納式遷移學習(Inductive Transfer Learning)
  • 無監督遷移學習(Unsupervised Transfer Learning)
  • 直推式遷移學習(Transductive Transfer Learning)
八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

表 1:傳統機器學習與各種遷移學習設定之間的關係。

1. 在 歸納式遷移學習設定中,無論源域和目標域是否相同,目標任務都與源任務不同。演算法利用來自源域的歸納偏差幫助改進目標任務。根據源域中資料的不同情況,歸納式遷移學習進一步分為兩種情況:

1)源域中有很多帶標籤的資料。在這種情況下,歸納式遷移學習設定類似於多工學習設定。但是,歸納式遷移學習設定僅旨在透過遷移源任務中的知識來實現目標任務中的高效能,而多工學習則嘗試同時學習目標任務和源任務;

2)源域中沒有標籤資料。在這種情況下,歸納遷移學習設定類似於自學習。在自學習設定中,源域和目標域之間的標籤空間可能不同,這意味著不能直接使用源域的資訊。

2. 在 無監督遷移學習設定中,與歸納遷移學習設定類似,目標任務不同於源任務,但與源任務有關。然而,無監督的遷移學習側重於解決目標域中的無監督的學習任務,例如聚類,降維和密度估計。在這種情況下,源域和目標域中都沒有可用的標籤資料。

3. 在 直推式遷移學習設定中,源任務和目標任務是相同的,而源域和目標域是不同的。在這種情況下,目標域中沒有可用的標籤資料,而源域中有許多可用的標籤資料。另外,根據源域和目標域之間的不同情況,我們可以進一步將直推式學習設定分為兩種情況:

1)源域和目標域之間的特徵空間不同;

2)源域和目標域之間的特徵空間相同,但輸入資料的邊際機率分佈不同。

Part 2 強化學習中的遷移學習

一、描述強化學習中的遷移問題

強化學習是一種根據環境反饋進行學習的技術。強化學習 agent 辨別自身所處的狀態 (state),按照某種策略決定動作(action),並根據環境提供的獎賞來調整策略,直至達到最優。馬爾可夫決策 MDP(Markov Decision Process)是強化學習任務的標準描述,我們定義一個任務 M,用四元組< S , A , T, R>表示,其中 S 是狀態空間,A 是動作空間,T 是狀態轉移機率,R 是獎賞函式。state-action 空間 S×A 定義了任務的域,狀態轉移機率 T 和獎賞函式 R 定義了任務的目標。當強化學習的狀態動作空間 S×A 很大時,為了尋找最優策略,搜尋過程非常耗時。此外,學習近似最優解所需的樣本數量在實際問題中往往令人望而卻步。無論是基於值的方法還是基於策略的方法,只要問題稍稍變動,之前的學習結果就會失效,而重新訓練的代價巨大。因此,研究者們針對強化學習中的遷移學習展開了研究,希望能夠將知識從源任務遷移到目標任務以改善效能。

二、對強化學習中的遷移進行分類

八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

表 2:RL 中遷移學習的三個維度。每個遷移解決方案都是為特定設定設計的,傳輸某種形式的知識,追求某一目標。

關於強化學習中的遷移研究已經有很多,這些研究涉及到許多不同的遷移問題。由於在處理這一複雜而具有挑戰性的問題時採用的方法和思路大不相同,因此通常很難清晰地瞭解 RL 的當前最新技術。在 [2] 中,Lazaric A 從主要的遷移設定,遷移的知識種類以及遷移目標這三個方面,對強化學習中的遷移進行分類,如表 2 所示。

設定(setting):

根據源任務數量和與目標域之間的差異,強化學習中的遷移設定如圖1所示,有以下三種:

1)從單一源任務到目標任務的固定域遷移。任務域由其狀態-動作空間 S×A 決定,而任務的具體結構和目標由狀態轉移模型 T 和獎勵函式 R 決定。RL 中遷移學習的早期研究大多工域是固定的且只涉及兩個任務:一個源任務和一個目標任務。

2)跨多個源任務到目標任務的固定域遷移。在這種情況下,任務共享相同的域,遷移演算法將以從一組源任務中收集到的知識作為輸入,並使用它來改進在目標任務中的表現。

3)源任務和目標任務不同域遷移。在該設定中,任務有不同的狀態-動作空間,無論是在數量上還是範圍上。在這種情況下,大多數遷移方法都著重於如何定義源狀態-動作變數和目標變數之間的對映,以便獲得有效的知識遷移。

八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

圖1: 根據源任務數量和與目標任務的任務域差異而定義的三種主要的遷移設定 (圖修改自 [2])

知識 (Knowledge):

1. 例項遷移 (Instance Transfer)。RL 演算法依賴於從與 MDP 的直接互動中收集的一組樣本來為手頭的任務構建解決方案。這組樣本可以用於在基於模型的方法中估計 MDP 模型,或者在無模型方法中構建值函式或策略的近似。最簡單的遷移演算法收集來自不同源任務的樣本,並將其重用於目標任務的學習。

2. 特徵遷移(Representation Transfer)。每種 RL 演算法對於任務和解決方案都使用特定的表示,如神經網路,或一組近似最優值函式的基函式。在不同任務的學習過程中,遷移演算法通常會改變任務和解的表示形式以進行目標任務的學習。

3. 引數遷移(Parameter Transfer)。RL 演算法有大量引數定義了初始化和演算法行為。一些遷移方法根據源任務改變和調整演算法引數。例如,如果某些狀態-動作對中的動作值在所有源任務中都非常相似,則可以據此將目標任務的 Q-table 初始化,從而加快學習過程。初始解決方案 (策略或值函式) 通常被用來在只有一個源任務的遷移設定中初始化演算法。

目標 (Objective):

1. 學習速度的提升。學習演算法的複雜性通常由實現所需效能所需的樣本數量來衡量。在實踐中,可以使用時間與閾值,面積比,有限樣本分析等來衡量學習速度的提升。透過設定閾值,並測量單任務和遷移演算法需要多少經驗 (如樣本、片段、迭代) 來達到這個閾值,以判定遷移效果。面積比度量方法透過考慮遷移學習前後學習曲線下的區域進行度量。

2. 初始(JumpStart)提升。透過從源任務進行遷移,看 agent 在目標任務中的初始效能的提升來衡量遷移學習的效果。學習過程通常從假設空間中的隨機或任意的假設開始。根據環境的定義,所有的任務都來自同一個分佈Ω。

3. 漸進(Asymptotic)提升。在大多數實際感興趣的問題中,最優值函式或策略的完美近似是不可能的。使用函式逼近技術,近似值越精確,收斂性越好。近似的準確率嚴格依賴於用於表示解決方案的假設空間的結構。該目標就是看遷移學習後,Agent 最終表現的提升。

Part 3 強化學習中的遷移應用最新進展

筆者整理了部分結合強化學習與遷移學習的最新技術研究,速覽如下:

《Transfer Learning For Related Reinforcement Learning Tasks Via Image-to-Image Translation(ICLR-2019)》

中文名:透過影像到影像翻譯的相關強化學習任務的轉移學習

論文連結:

程式碼連結:

論文速覽:儘管深度 RL 在從原始畫素中學習控制策略取得了巨大的成功,但是結果模型泛化能力太差。作者使用 Atari Breakout 遊戲 (打磚塊遊戲),證明了訓練後的 agent 難以應對小的視覺變化(比如說在背景上增加矩形圖案作干擾,或者在背景上新增一些對角線,人類可以輕鬆適應這些小的變化,如圖 2)。

八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

圖 2 :(a) 為原始版本的打磚塊遊戲,其餘為在背景上新增了一些小的視覺變化。(b) 新增固定藍色矩形干擾,(c) 紅色矩形在三個固定位置閃現 (d) 綠色線條干擾 (e) 對角線干擾。

作者使用常見的遷移學習策略——微調,來應對這些視覺上的改變卻遭遇了慘敗。甚至從某種程度上來說,從頭開始對 agent 進行訓練比對經過訓練的 agent 進行微調還要更快。因此,作者建議透過新增專用元件來改善遷移學習,該元件的目標是學習在已知域和新域之間進行對映。作者提議將視覺遷移和動態遷移分開,agent 嘗試從新域到舊域進行類比:觀察新域中的一組狀態(影像)後,代理可以學習將其對映到源域中相似熟悉的狀態,並根據其源域策略對對映狀態採取行動。

更具體地來說,給定具有訓練引數θ的訓練策略π(a|s;θ) 提出針對源域狀態 s∈S 的動作 a,希望從目標域狀態 t∈T 學習對映函式 G:T→S 這樣,透過應用策略π(a|G(t));θ) 與環境 T 進行互動。也就是尋求一個對映函式 G,該函式允許在與目標環境 T 互動時重用為源環境 S 學習的相同策略πθ。由於源域專案和目標域專案都是影像,因此透過從 S 和 T 收集影像集並使用 Unaligned GAN 直觀地對映它們之間的影像來啟發式學習函式 G。作者將透過π(a|G(t));θ) 與環境相互作用獲得的分數用於 GAN 模型選擇和停止標準。

作者使用 unaligned GAN 建立對映,以將目標任務中的影像轉換為源任務中的相應影像。這種對映使得能夠在 Breakout 遊戲的各種變體之間以及 Road Fighter 遊戲的不同級別之間進行遷移。結果顯示,學習此對映比重新訓練更有效。作者給出了本文方法在兩種遊戲上的視覺化效果,圖 3 給出 Breakout 上的視覺化動圖。

此外,這篇論文的 review 也非常有意思,值得一看:

八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

圖 3:Breakout 遊戲上的視覺化動圖。影片來源

《Transfer in Deep Reinforcement Learning using Knowledge Graphs》

中文名:使用知識圖譜的深度強化學習中的遷移

論文連結:

論文速覽:文字類冒險遊戲是一種玩家必須透過文字描述來了解世界,透過相應的文字描述來宣告下一步動作的遊戲(有點像大家比較熟知的橙光小遊戲)。教 agent 玩文字類冒險遊戲是一項具有挑戰性的任務,學習它的控制策略需要大量的探索。主要原因是大多數深度強化學習演算法都是在沒有真實先驗的情況下針對任務進行訓練的,從本質上來說,agent 必須從與環境的互動中瞭解關於遊戲的一切。然而文字類冒險遊戲充分利用了常識知識(比如斧頭可以用來砍木頭)和一些型別主題(在恐怖題材的遊戲中,棺材裡可能會有吸血鬼等等),遊戲本身就是個謎,因此也導致了訓練效率低下。

知識圖是一個有向圖,由一組語義三元組(主體,關係,物件)構成。在本文中,作者探索使用知識圖和相關的神經嵌入作為域知識遷移的表示形式,以訓練文字類冒險遊戲的強化學習 agent,從而減少訓練時間並提高所學習控制策略的質量。作者在 KG-DQN 的基礎上展開他們的工作,探索知識圖和網路引數的遷移。從靜態文字資源中提取出 graph,並使用它向 agent 提供特定領域的詞彙,物件能力等知識。agent 也能訪問遊戲解析器接收到的所有 action,透過提取解析器接收到的一系列模板(用 OBJ 標記替代 action 中的 object 或者名詞短語),將 OBJ 標記更換為遊戲給定詞彙中可能的 object 即可。DQN 網路由兩個獨立的神經網路構成,分別編碼 state 和 action,由最終的 state-action 對的 Q 值作為兩個網路之間互動的結果,使用貝爾曼方程更新。

八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

圖 5:KG-DQN 架構。

將知識圖從靜態文字資源遷移到 DQN 中的問題作者稱之為播種,KG-DQN 使用知識圖作為狀態表示,並對動作空間進行精簡,圖 X 是隨著時間的推移,透過 agent 的探索而建立起來的,當 agent 首次開始遊戲時,這個圖是空的,因此在 action 精簡過程中幫助不大。而從另一個來源種子化知識圖,比如同一故事型別的文字冒險遊戲,就可以給 agent 一個強的先驗。

八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

圖 6 :播種知識圖示意。

此外,作者證明了可以使用 DQN 網路引數權重有效地遷移知識,或者透過使用問答系統對網路的各個部分進行預訓練,也可以將引數從源遷移到目標遊戲。這樣 agent 整體訓練速度更快(包括對源任務進行預訓練和訓練所需的情節數量),並且與未使用這些技術的 agent 相比,其收斂效能提高了 80%。作者的方法在多種計算機生成的和人工創作的遊戲中進行了測試,這些遊戲的域和複雜性各不相同,透過實驗作者得出結論,知識圖透過為 agent 提供不同遊戲的狀態和動作空間之間的更明確且可解釋的對映,從而使他們能夠在深度強化學習 agent 中進行遷移。

《Transfer of Temporal Logic Formulas in Reinforcement Learning(IJCAI-2019)》

中文名:強化學習中時序邏輯的遷移

論文連結:

論文速覽:將高層次知識從源任務遷移到目標任務是加快強化學習的有效方法。例如,命題邏輯和一階邏輯已被用作這種知識的表示。作者將事件時序至關重要的那些任務稱為時序任務(temporal tasks),透過邏輯可遷移性的概念具體化時序任務之間的相似性,並開發不同但相似的時序任務之間的遷移學習方法。作者首先提出一種推理技術,以從兩個 RL 任務收集的標記軌跡中,按順序析取正態形式提取度量間隔時序邏輯(MITL)公式。如果透過此推斷確定了邏輯可遷移性,作者為從這兩個任務推斷出的 MITL 公式的每個順序合取子式構造一個定時自動機。作者在擴充套件狀態下執行 RL,其中包括源任務定時自動機的位置和時鐘評估。然後,作者根據兩個任務在定時自動機的相應元件(時鐘,位置等)之間建立對映,並根據已建立的對映來遷移擴充套件的 Q 函式。最後,作者從遷移的擴充套件 Q 函式開始,對目標任務的擴充套件狀態執行 RL。兩個案例研究中的結果表明,根據源任務和目標任務的相似程度,透過在擴充套件狀態空間中執行 RL,可以將目標任務的取樣效率提高一個數量級。

八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

圖 7:基於時序邏輯遷移的遷移學習方法工作流程圖。

《Value Function Transfer for Deep Multi-Agent Reinforcement Learning Based on N-Step Returns (IJCAI-2019)》

中文名:基於 N 步返回的深度多智慧體強化學習的值函式遷移

論文連結:

論文速覽:許多現實世界的問題,如機器人控制,足球比賽,都被建模為稀疏互動多 agent 系統。在具有稀疏互動的多 agent 系統中重用單 agent 知識可以極大地加速多 agent 學習過程。先前的工作依賴於互模擬度量(bisimulation metric)來定義馬爾可夫決策過程(MDP)的相似性以控制知識遷移。但是,互模擬度量的計算成本很高,並且不適用於高維狀態空間問題。在這項工作中,作者提出了一種基於新型 MDP 相似性概念的可擴充套件的遷移學習方法。首先根據 MDP 的 N 步返回值(NSR)定義 MDP 相似度。然後,作者提出了兩種基於深度神經網路的知識遷移方法:直接值函式遷移和基於 NSR 的值函式遷移。作者在基於影像的網格世界,MPE 和《吃豆人》遊戲中進行實驗。結果表明,所提出的方法可以顯著加速多 agent 強化學習,同時具有更好的漸近效能。

八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

圖 8:直接值函式遷移網路架構。

八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

圖 9:基於 NSR 的值函式遷移網路架構。

《Importance Weighted Transfer of Samples in Reinforcement Learning (ICML-2018)》

中文名:強化學習中樣本的重要性權重遷移

論文連結:

論文速覽:作者考慮從一組源任務中收集強化學習(RL)中的經驗樣本(即元組<s,a,s',r>)的遷移,以改善給定目標任務中的學習過程。大多數相關方法都集中於選擇最相關的源樣本來解決目標任務,但隨後使用所有遷移的樣本沒有再考慮任務模型之間的差異。在本文中,作者提出了一種基於模型的技術,該技術可以自動估計每個源樣本求解目標任務的相關性(重要性權重)。在所提出的方法中,所有樣本都透過批強化學習演算法遷移並用於解決目標任務,但是它們對學習過程的貢獻與它們的重要性權重成正比。透過擴充套件監督學習文獻中提供的重要性加權結果,作者對提出的批 RL 演算法進行了有限樣本分析。此外,作者將提出的演算法與最新方法進行了經驗比較,表明即使在某些源任務與目標任務明顯不同的情況下,該演算法也能獲得更好的學習效能,並且對負遷移具有非常強的魯棒性。

《StarCraft Micromanagement with Reinforcement Learning and Curriculum Transfer Learning》

中文名:強化學習和課程遷移學習進行星際爭霸微操

論文連結:

機器之心解讀:

論文速覽:實時策略遊戲已成為遊戲人工智慧的重要領域。本文提出了一種強化學習和課程遷移學習方法,以控制星際爭霸微操中的多個單元。作者定義了一種有效的狀態表示形式,該表示形式可以消除遊戲環境中大型狀態空間所引起的複雜性。然後提出了一種引數共享的多 agent 梯度 Sarsa(λ)(PS-MAGDS)演算法來訓練單元。單元之間共享學習策略,以鼓勵合作行為。

八千字長文深度解讀,遷移學習在強化學習中的應用及最新進展

圖 10:星際爭霸微操場景中的 PS-MAGDS 強化學習圖示。

作者使用神經網路作為函式逼近器來估算動作-值函式,並提出獎賞函式以幫助部隊平衡其行動和進攻。另外,使用遷移學習方法將模型擴充套件到更困難的場景,可以加快訓練過程並提高學習效能。在小規模場景中,部隊成功學習瞭如何以 100%的獲勝率與內建 AI 戰鬥並擊敗它。在大型方案中,課程遷移學習方法用於逐步訓練一組單元,並且在目標方案中顯示出優於某些 baseline 方法的效能。透過強化學習和課程遷移學習,訓練的單元能夠在《星際爭霸》微管理場景中學習適當的策略。

作者介紹

羅賽男,西安電子科技大學電腦科學與技術學院研究生,研究方向為網路空間安全與機器學習,關注前沿技術,熱愛文字分享,希望能夠與大家一起學習,共同進步,ღ( ´・ᴗ・` ) 比心!

參考文獻:

  • Pan S J, Yang Q. A survey on transfer learning[J]. IEEE Transactions on knowledge and data engineering, 2009, 22(10): 1345-1359.——本文 Part 1 主要參考
  • Lazaric A. Transfer in reinforcement learning: a framework and a survey[M]//Reinforcement Learning. Springer, Berlin, Heidelberg, 2012: 143-173.——本文 Part 2 主要參考
  • Taylor M E, Stone P. Transfer learning for reinforcement learning domains: A survey[J]. Journal of Machine Learning Research, 2009, 10(Jul): 1633-1685.——本文 Part 2 主要參考

下方為筆者推薦的與遷移學習相關的資料:

  • 遷移學習各個領域的最新論文 list 集,強推 :
  • 《綜合實踐指南:遷移學習及在深度學習中的應用》
  • 機器之心曾推出一篇來自清華大學的關於深度遷移學習綜述的解讀文章
  • 《綜述論文:
  • 四大類深度遷移學習》
  • ,這篇綜述定義了深度遷移學習並回顧了目前關於深度遷移學習的研究工作,感興趣的朋友可以去看看。








來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946223/viewspace-2660765/,如需轉載,請註明出處,否則將追究法律責任。

相關文章