學習解決順序決策任務是困難的。人類花了數年時間,基本上以一種隨機的方式探索環境,直到他們能夠推理,解決困難的任務,并與他人合作實現一個共同的目標。人工智能智能體在這方面和人類很像。強化學習(RL)是一種眾所周知的通過與環境的交互來訓練自主智能體的技術。遺憾的是,學習過程具有很高的樣本復雜性來推斷一個有效的驅動策略,特別是當多個智能體同時在環境中驅動時。
然而,以前的知識可以用來加速學習和解決更難的任務。同樣,人類通過關聯不同的任務來構建技能并重用它們,RL代理可能會重用來自先前解決的任務的知識,以及來自與環境中其他智能體的知識交換的知識。事實上,目前RL解決的幾乎所有最具挑戰性的任務都依賴于嵌入的知識重用技術,如模仿學習、從演示中學習和課程學習。
本書概述了多agent RL中關于知識重用的文獻。作者為重用知識定義了最先進的解決方案的統一分類,提供了該領域最近進展的全面討論。在這本書中,讀者將發現關于知識在多智能體順序決策任務中重用的許多方法的全面討論,以及在哪些場景中每種方法更有效。作者還提供了他們對該地區目前低垂的發展成果的看法,以及仍然開放的大問題,可能導致突破性的發展。最后,本書為想要加入這一領域或利用這些技術的研究人員提供了資源,包括會議、期刊和實現工具的列表。
這本書將對廣大讀者有用;并有望促進社區間的新對話和該地區的新發展。
//www.morganclaypool.com/doi/10.2200/S01091ED1V01Y202104AIM049
近年來,人工學習系統在計算機視覺、自然語言處理和語音識別等許多具有挑戰性的領域取得了巨大的進展。這些最新進展的一個顯著特點是,將靈活的深度函數逼近器與為特定問題收集的大型數據集結合起來,這似乎是一個簡單的公式。然而,這些系統在泛化新輸入以獲取新功能時,很難利用其學習能力,通常需要在類似的大型數據集上從頭開始重新訓練。這與人類形成了鮮明的對比,人類有一種非凡的能力,可以在之前的經驗基礎上,從少數幾個例子中學習新概念。在本論文的第一部分,我們將研究如何構建系統來模擬這種快速適應新任務的能力。本文這一部分的核心原則之一是,利用大量以前的經驗/任務中的結構來實現快速適應和不確定性。首先,我們將研究獎勵規范的設置,這是強化學習中的一個常見挑戰,接下來,我們將研究元學習設置的概率框架如何能夠在不確定性下進行推理。
在本文的第二部分中,鑒于先前的任務數據集在加速學習方面發揮的潛在作用,我們將提出一個自然的問題:如何讓智能體完全自主地收集數據。這將消除人類為人工智能“管理”任務數據集的需要,并實現完全可擴展的、永無止境的具身學習。我們所采取的方法的中心主題將是考慮智能體必須解決的在線現實世界“任務”的本質,并通過它重新審視偶發性RL的基本假設。最后,我們將在現實世界靈巧操作領域展示這些想法,并為今后在這種更“自主”的強化學習設置方面的工作提供一些提示。
強化學習是人工智能中一個強大的工具,其中虛擬或物理代理學習優化他們的決策,以實現長期目標。在某些情況下,這種機器學習方法可以節省程序員的時間,超越現有的控制器,達到超人的性能,并不斷適應不斷變化的條件。這本書認為,這些成功表明強化學習可以成功地應用于許多不同的情況,包括機器人控制、股票交易、供應鏈優化和工廠控制。
然而,強化學習傳統上僅限于虛擬環境或模擬環境中的應用,在這些環境中已經提供了設置。此外,實驗可以完成幾乎無限次的嘗試無風險。在許多現實生活任務中,使用強化學習并不像(1)數據沒有正確的形式;(2)數據稀缺,(3)自動化在現實世界中有局限性。
因此,這本書是寫來幫助學者,領域專家,和數據愛好者一樣理解的基本原則,應用強化學習到現實世界的問題。這是通過將重點放在使用實際示例和將標準數據建模為所需的正確形式,然后應用基本智能體的過程來實現的。為了進一步幫助讀者獲得對這些方法的深入和接地氣的理解,本書展示了完整的手工計算示例,以及如何用代碼以更自動化的方式實現這一點。
對于對強化學習作為解決方案感興趣但不精通的決策者,本書在介紹和案例研究部分包括簡單的、非技術的例子。這些提供了強化學習的背景,以及在實踐中應用它的挑戰和風險。具體來說,這些部分闡述了強化學習和其他機器學習方法的區別,以及知名公司如何成功地使用這種方法解決他們的問題。
//www.morganclaypool.com/doi/abs/10.2200/S01170ED1V01Y202202AIM052
摘要
多任務學習(Multi-Task Learning, MTL)是機器學習中的一種學習范式,其目的是利用多個相關任務中包含的有用信息來幫助提高所有任務的泛化性能。
本文從算法建模、應用和理論分析三個方面對MTL進行了綜述。在算法建模方面,給出了MTL的定義,并將不同的MTL算法分為特征學習、低秩、任務聚類、任務關系學習和分解五類,并討論了每種方法的特點。
為了進一步提高學習任務的性能,MTL可以與半監督學習、主動學習、無監督學習、強化學習、多視圖學習和圖形模型等學習范式相結合。當任務數量較大或數據維數較高時,我們回顧了在線、并行和分布式的MTL模型,以及維數降維和特征哈希,揭示了它們在計算和存儲方面的優勢。
許多現實世界的應用程序使用MTL來提高它們的性能,我們在本文中回顧了代表性的工作。最后,我們對MTL進行了理論分析,并討論了MTL的未來發展方向。
引言
人類可以同時學習多個任務,在這個學習過程中,人類可以使用在一個任務中學習到的知識來幫助學習另一個任務。例如,根據我們學習打網球和壁球的經驗,我們發現打網球的技巧可以幫助學習打壁球,反之亦然。多任務學習(Multi-Task learning, MTL)[1]是機器學習的一種學習范式,受人類這種學習能力的啟發,它的目標是共同學習多個相關的任務,使一個任務中包含的知識能夠被其他任務利用,從而提高手頭所有任務的泛化性能。
在其早期階段,MTL的一個重要動機是緩解數據稀疏問題,即每個任務都有有限數量的標記數據。在數據稀疏性問題中,每個任務中標記數據的數量不足以訓練出一個準確的學習器,而MTL則以數據增強的方式將所有任務中的標記數據進行聚合,從而為每個任務獲得更準確的學習器。從這個角度來看,MTL可以幫助重用已有的知識,降低學習任務的手工標注成本。當“大數據”時代在計算機視覺和自然語言處理(NLP)等領域到來時,人們發現,深度MTL模型比單任務模型具有更好的性能。MTL有效的一個原因是與單任務學習相比,它利用了更多來自不同學習任務的數據。有了更多的數據,MTL可以為多個任務學習到更健壯、更通用的表示形式和更強大的模型,從而更好地實現任務間的知識共享,提高每個任務的性能,降低每個任務的過擬合風險。
MTL與機器學習中的其他學習范式有關,包括遷移學習[2]、多標簽學習[3]和多輸出回歸。MTL的設置與遷移學習相似,但存在顯著差異。在MTL中,不同任務之間沒有區別,目標是提高所有任務的性能。而遷移學習是借助源任務來提高目標任務的性能,因此目標任務比源任務起著更重要的作用。總之,MTL對所有的任務一視同仁,但在遷移學習中目標任務最受關注。從知識流的角度來看,遷移學習中的知識轉移流是從源任務到目標任務,而在多任務學習中,任何一對任務之間都存在知識共享流,如圖1(a)所示。持續學習[4]是一個一個地學習任務,任務是有順序的,而MTL是將多個任務一起學習。在多標簽學習和多輸出回歸中,每個數據點都與多個標簽相關聯,這些標簽可以是分類的或數字的。如果我們把所有可能的標簽都當作一個任務,那么多標簽學習和多輸出回歸在某種意義上可以看作是多任務學習的一種特殊情況,不同的任務在訓練和測試階段總是共享相同的數據。一方面,這種多標簽學習和多輸出回歸的特點導致了與MTL不同的研究問題。例如,排名損失使得與數據點相關的標簽的分數(例如分類概率)大于沒有標簽的分數,可以用于多標簽學習,但它不適合MTL,因為不同的任務擁有不同的數據。另一方面,這種在多標簽學習和多輸出回歸中的特性在MTL問題中是無效的。例如,在2.7節中討論的一個MTL問題中,每個任務都是根據19個生物醫學特征預測患者帕金森病的癥狀評分,不同的患者/任務不應該共享生物醫學數據。總之,多標簽學習和多輸出回歸與圖1(b)所示的多任務學習是不同的,因此我們不會對多標簽學習和多輸出回歸的文獻進行綜述。此外,多視圖學習是機器學習的另一種學習范式,每個數據點與多個視圖相關聯,每個視圖由一組特征組成。雖然不同的視圖有不同的特征集,但是所有的視圖是一起學習同一個任務的,因此多視圖學習屬于具有多組特征的單任務學習,這與圖1(c)所示的MTL是不同的。
在過去的幾十年里,MTL在人工智能和機器學習領域引起了廣泛的關注。許多MTL模型已經被設計出來,并在其他領域得到了廣泛的應用。此外,對MTL的理論問題也進行了大量的分析。本文從算法建模、應用和理論分析三個方面對MTL進行了綜述。在算法建模方面,首先給出了MTL的定義,然后將不同的MTL算法分為5類: 特征學習方法,又可分為特征轉換與特征選擇方法、低秩方法、任務聚類方法、任務關系學習方法和分解方法。然后,我們討論了MTL與其他學習范式的結合,包括半監督學習、主動學習、無監督學習、強化學習、多視圖學習和圖形模型。為了處理大量的任務,我們回顧了在線、并行和分布式的MTL模型。對于高維空間中的數據,引入特征選擇、降維和特征哈希作為處理這些數據的重要工具。MTL作為一種很有前途的學習范式,在計算機視覺、生物信息學、健康信息學、語音、自然語言處理、web等領域有著廣泛的應用。從理論分析的角度,對MTL的相關工作進行回顧。最后,討論了MTL的未來發展方向。
終身機器學習(LL)是一種先進的機器學習(ML)范式,它不斷學習,積累過去學到的知識,并使用/適應它來幫助未來的學習和問題解決。在這個過程中,學習者變得越來越有知識,學習能力也越來越強。這種持續不斷的學習能力是人類智力的特征之一。然而,目前占主導地位的ML范式是孤立學習的:給定一個訓練數據集,它只在數據集上運行ML算法來生成模型。它不試圖保留所學的知識,并在以后的學習中使用。雖然這種主要基于數據驅動優化的孤立ML范式已經非常成功,但它需要大量的訓練示例,并且只適用于封閉環境中定義明確的狹窄任務。相比之下,我們人類學習有效地與幾個例子,在動態和開放的世界self-supervised方式或環境因為我們的學習也非常知識:知識學習在過去幫助我們學習新事物沒有數據或努力和適應新的/看不見的情況下。這種自我至上(或自我意識)的學習也使我們能夠在工作中,在與他人的互動中,在沒有外部監督的情況下,與現實世界的環境進行學習。LL的目標是實現所有這些能力。諸如聊天機器人、無人駕駛汽車或任何與人類/物理環境交互的人工智能系統都需要這些功能,因為它們需要應對動態和開放的環境,這讓它們別無選擇,只能不斷學習新東西,以便更好地工作。如果沒有LL能力,AI系統就不能被認為是真正智能的,也就是說,LL是智能或AGI(人工一般智能)所必需的。(見我的終身學習研究頁面)。
這本教科書是關于計算機科學的。它也是關于Python的。然而,還有更多。算法和數據結構的研究是理解計算機科學的核心。學習計算機科學與學習其他困難的學科沒有什么不同。要想成功,唯一的方法就是有意識地、不斷地接觸基本思想。初學計算機的科學家需要實踐,以便在繼續學習課程中較復雜的部分之前有一個徹底的了解。此外,初學者需要獲得成功的機會和獲得信心。本教材旨在作為數據結構和算法的第一門課程的教材,通常作為計算機科學課程的第二門課程教授。雖然第二門課程被認為比第一門課程更高級,但本書假設你是這個水平的初學者。您可能還在努力學習第一門計算機科學課程的一些基本思想和技能,但已經準備好進一步探索這一學科并繼續實踐解決問題的方法。我們將介紹抽象數據類型和數據結構、編寫算法和解決問題。我們將研究大量數據結構,并解決出現的經典問題。你在這里學到的工具和技術將會在你繼續學習計算機科學的過程中不斷地被應用。
摘要
本文綜述了遷移學習在強化學習問題設置中的應用。RL已經成為序列決策問題的關鍵的解決方案。隨著RL在各個領域的快速發展。包括機器人技術和游戲,遷移學習是通過利用和遷移外部專業知識來促進學習過程來幫助RL的一項重要技術。在這篇綜述中,我們回顧了在RL領域中遷移學習的中心問題,提供了一個最先進技術的系統分類。我們分析他們的目標,方法,應用,以及在RL框架下這些遷移學習技術將是可接近的。本文從RL的角度探討了遷移學習與其他相關話題的關系,并探討了RL遷移學習的潛在挑戰和未來發展方向。
關鍵詞:遷移學習,強化學習,綜述,機器學習
介紹
強化學習(RL)被認為是解決連續決策任務的一種有效方法,在這種方法中,學習主體通過與環境相互作用,通過[1]來提高其性能。源于控制論并在計算機科學領域蓬勃發展的RL已被廣泛應用于學術界和工業界,以解決以前難以解決的任務。此外,隨著深度學習的快速發展,應用深度學習服務于學習任務的集成框架在近年來得到了廣泛的研究和發展。DL和RL的組合結構稱為深度強化學習[2](Deep Reinforcement Learning, DRL)。
DRL在機器人控制[3]、[4]、玩[5]游戲等領域取得了巨大的成功。在醫療保健系統[6]、電網[7]、智能交通系統[8]、[9]等領域也具有廣闊的應用前景。
在這些快速發展的同時,DRL也面臨著挑戰。在許多強化學習應用中,環境模型通常是未知的,只有收集到足夠的交互經驗,agent才能利用其對環境的知識來改進其性能。由于環境反饋的部分可觀察性、稀疏性或延遲性以及高維觀察和/或行動空間等問題,學習主體在沒有利用任何先驗知識的情況下尋找好的策略是非常耗時的。因此,遷移學習作為一種利用外部專業知識來加速學習過程的技術,在強化學習中成為一個重要的課題。
在監督學習(SL)領域[10]中,TL得到了廣泛的研究。與SL場景相比,由于MDP環境中涉及的組件更多,RL中的TL(尤其是DRL中的TL)通常更復雜。MDP的組件(知識來自何處)可能與知識轉移到何處不同。此外,專家知識也可以采取不同的形式,以不同的方式轉移,特別是在深度神經網絡的幫助下。隨著DRL的快速發展,以前總結用于RL的TL方法的努力沒有包括DRL的最新發展。注意到所有這些不同的角度和可能性,我們全面總結了在深度強化學習(TL in DRL)領域遷移學習的最新進展。我們將把它們分成不同的子主題,回顧每個主題的理論和應用,并找出它們之間的聯系。
本綜述的其余部分組織如下:在第2節中,我們介紹了強化學習的背景,關鍵的DRL算法,并帶來了這篇綜述中使用的重要術語。我們還簡要介紹了與TL不同但又緊密相關的相關研究領域(第2.3節)。
在第3節中,我們采用多種視角來評價TL方法,提供了對這些方法進行分類的不同方法(第3.1節),討論了遷移源和目標之間的潛在差異(第3.2節),并總結了評價TL有效性的常用指標(第3.3節)。
第4節詳細說明了DRL領域中最新的TL方法。特別是,所討論的內容主要是按照遷移知識的形式組織的,如成型的獎勵(4.1節)、先前的演示(4.2節)、專家策略(4.3節),或者按照轉移發生的方式組織的,如任務間映射(4.4節)、學習可轉移表示(4.5節和4.6節)等。我們在第5節討論了TL在DRL中的應用,并在第6節提供了一些值得研究的未來展望。
強化學習是機器學習的一個熱門領域,從基礎開始: 發現代理和環境如何演變,然后獲得它們之間如何相互關聯的清晰聯系。然后你將學習與強化學習相關的理論,并了解建立強化學習過程的概念。
這本書討論了對強化學習很重要的算法實現,包括馬爾可夫決策過程和半馬爾可夫決策過程。下一節將向您展示如何在查看Open AI Gym之前開始使用Open AI。然后您將學習Python中關于增強學習方面的群體智能。
本書的最后一部分從TensorFlow環境開始,并給出了如何將強化學習應用于TensorFlow的概述。還有Keras,一個可以用于強化學習的框架。最后,您將深入研究谷歌的深層思想,并看到可以使用強化學習的場景。
你將學習
這本書是給誰看的
數據科學家、機器學習和深度學習專業人員、希望適應和學習強化學習的開發人員。