人類具有不斷從經驗中學習的非凡能力。我們不僅可以把以前學到的知識和技能運用到新的情況下,我們也可以把這些作為以后學習的基礎。人工智能(AI)的宏偉目標之一是構建一個人工的“持續學習”代理,通過自主增量開發越來越復雜的知識和技能,從自身經驗構建對世界的復雜理解(Parisi, 2019年)。然而,盡管有早期的推測和很少的先前工作(Ring, 1998; Thrun, 1998; Carlson, 2010),很少有研究和努力致力于解決這一愿景。當前人工智能系統深受新數據或新環境的影響,這些新數據或新環境與他們所接受的訓練稍有不同(Goodfellow, 2013)。此外,學習過程通常被限制在限定和孤立的任務內的固定數據集,這可能很難導致出現更復雜和自主的智能行為。從本質上講,持續學習和適應能力,雖然經常被認為是每一個智能代理的基本支柱,但大多被排除在主要的人工智能研究重點之外。
在本教程中,我們提出根據機器學習研究和人工智能深度架構(Lomonaco, 2019)的最新進展總結這些想法的應用。從一個動機和一個簡短的歷史開始,我們將最近的持續學習進展與之前在相關主題上的研究努力聯系起來,并總結了主要方法、基準和關鍵結果方面的最新進展。在教程的第二部分,我們計劃涵蓋更多關于低監督信號的持續學習的探索性研究,以及與其他范式的關系,如無監督,半監督和強化學習。我們還將強調神經科學的最新發現對原始持續學習算法設計的影響,以及它們在現實應用中的部署。最后,我們將強調持續學習的概念,作為可持續機器學習的關鍵技術推動者及其社會影響,并概述有趣的研究問題和未來值得解決的方向。
持續學習是一種學習模式,在這種模式下,學習系統按照一系列任務進行訓練。這里的目標是在當前任務上執行得很好,而不會受到前面任務的性能下降的影響。在神經網絡持續學習的最新進展中,有兩個值得注意的方向: (1) 基于變分貝葉斯的正則化,通過學習先前任務的先驗信息,以及(2)學習深度網絡的結構以適應新的任務。到目前為止,這兩種方法在很大程度上是相互正交的。我們提出了一個新的貝葉斯框架,基于不斷學習深度神經網絡的結構,以統一這些不同但互補的方法。該框架通過學習任務所使用的權值來學習任務的深層結構,并通過不同任務學習的權值的不同稀疏子集的重疊來支持任務間的遷移。我們提出的持續學習框架的一個吸引人的方面是,它既適用于甄別(有監督的)設置,也適用于生成(無監督的)設置。在有監督和無監督基準上的實驗結果表明,我們的方法在持續學習方面的表現與最近的進展相當或更好。
持續學習——按序列學習許多任務的能力——對人工學習系統至關重要。然而,深度網絡的標準訓練方法往往會遭遇災難性的遺忘,即學習新的任務會抹去先前任務的知識。雖然災難性的遺忘給問題貼上了標簽,但任務之間相互干擾的理論原因仍不清楚。在這里,我們試圖通過在教師-學生的設置中學習持續學習來縮小理論和實踐之間的差距。我們將以前在教師-學生設置中對兩層網絡的分析工作擴展到多個教師。我們以每位教師代表不同的任務,研究教師之間的關系如何影響學生在任務轉換時表現出的遺忘和遷移量。根據最近的研究,我們發現當任務依賴于相似的特征時,中間任務相似導致最大的遺忘。然而,特征相似性只是任務之間關聯的一種方式。教師-學生方法允許我們在eadouts(隱藏到輸出的權重)和特征(輸入到隱藏的權重)這兩級分解任務相似性。我們發現兩種類型的相似性、初始轉移/遺忘率、最大轉移/遺忘和長時間(開關后)轉移/遺忘量之間存在復雜的相互作用。總之,這些結果有助于闡明導致災難性遺忘的各種因素。
近年來,在控制和強化學習中出現了新的方法,這些方法結合了遺憾(regret )最小化和在線凸優化技術。由此產生的理論為控制和強化學習中一些長期存在的問題提供了可證明的保證:對數后悔和快速速率,沒有系統知識的端到端LQG-LQR,帶有對抗噪聲的卡爾曼濾波,具有可證明的有限時間保證的黑盒控制,系統識別的緊下界,等等。
這些結果的主要創新之處在于在線控制模型將隨機擾動替換為對抗性擾動,并以后悔最小為最優控制目標。我們將描述設置,以及基于梯度和依賴于新的凸松弛的新方法。
本教程將是關于無監督學習和強化學習的交叉。隨著自然語言處理中基于語言模型的預訓練和計算機視覺中的對比學習的出現,無監督學習(UL)在過去幾年中真正得到了發展。在這些領域中,無監督預訓練的一些主要優勢是在下游有監督學習任務中出現的數據效率。在如何將這些技術應用于強化學習和機器人方面,社區中有很多人感興趣。考慮到問題的連續決策性質,RL和機器人技術比被動地從互聯網上的圖像和文本中學習面臨更大的挑戰,它可能不會那么簡單。本教程將涵蓋如何在強化學習中應用和使用無監督學習的基本模塊,希望人們可以帶回最新的最先進的技術和實踐的知識,以及在這個具有挑戰性和有趣的交叉領域的廣泛的未來可能性和研究方向。
在不依賴下游任務的情況下評估學習表征的質量仍然是表示學習的挑戰之一。在這項工作中,我們提出幾何成分分析(GeomCA)算法,評估表示空間的幾何和拓撲性質。GeomCA可以應用于任何維度的表示,獨立于生成它們的模型。我們通過分析從各種場景中獲得的表征來證明其適用性,如對比學習模型、生成模型和監督學習模型。
圖神經網絡(GNN)中缺乏各向異性核極大地限制了其表達能力,導致了一些眾所周知的問題,如過度平滑。為了克服這個限制,我們提出了第一個全局一致的各向異性核GNN,允許根據拓撲導出的方向流定義圖卷積。首先,通過在圖中定義矢量場,我們提出了一種方法應用方向導數和平滑投影節點特定的信息到場。然后,我們提出用拉普拉斯特征向量作為這種向量場。在Weisfeiler-Lehman 1-WL檢驗方面,我們證明了該方法可以在n維網格上泛化CNN,并證明比標準的GNN更有分辨力。我們在不同的標準基準上評估了我們的方法,發現在CIFAR10圖數據集上相對誤差減少了8%,在分子鋅數據集上相對誤差減少了11%到32%,在MolPCBA數據集上相對精度提高了1.6%。這項工作的重要成果是,它使圖網能夠以一種無監督的方式嵌入方向,從而能夠更好地表示不同物理或生物問題中的各向異性特征。
人工神經網絡在解決特定剛性任務的分類問題時,通過不同訓練階段的廣義學習行為獲取知識。由此產生的網絡類似于一個靜態的知識實體,努力擴展這種知識而不針對最初的任務,從而導致災難性的遺忘。
持續學習將這種范式轉變為可以在不同任務上持續積累知識的網絡,而不需要從頭開始再訓練。我們關注任務增量分類,即任務按順序到達,并由清晰的邊界劃分。我們的主要貢獻包括:
(1) 對持續學習技術的分類和廣泛的概述;
(2) 一個持續學習器穩定性-可塑性權衡的新框架;
(3) 對11種最先進的持續學習方法和4條基準進行綜合實驗比較。
考慮到微型Imagenet和大規模不平衡的非自然主義者以及一系列識別數據集,我們以經驗的方式在三個基準上仔細檢查方法的優缺點。我們研究了模型容量、權重衰減和衰減正則化的影響,以及任務呈現的順序,并從所需內存、計算時間和存儲空間等方面定性比較了各種方法。
//www.zhuanzhi.ai/paper/c90f25024b2c2364ce63299b4dc4677f
引言
近年來,據報道,機器學習模型在個人任務上表現出甚至超過人類水平的表現,如雅達利游戲[1]或物體識別[2]。雖然這些結果令人印象深刻,但它們是在靜態模型無法適應其行為的情況下獲得的。因此,這需要在每次有新數據可用時重新啟動訓練過程。在我們的動態世界中,這種做法對于數據流來說很快就變得難以處理,或者可能由于存儲限制或隱私問題而只能暫時可用。這就需要不斷適應和不斷學習的系統。人類的認知就是這樣一個系統的例證,它具有順序學習概念的傾向。通過觀察例子來重新審視舊的概念可能會發生,但對保存這些知識來說并不是必要的,而且盡管人類可能會逐漸忘記舊的信息,但完全丟失以前的知識很少被證明是[3]。相比之下,人工神經網絡則不能以這種方式學習:在學習新概念時,它們會遭遇對舊概念的災難性遺忘。為了規避這一問題,人工神經網絡的研究主要集中在靜態任務上,通常通過重組數據來確保i.i.d.條件,并通過在多個時期重新訪問訓練數據來大幅提高性能。
持續學習研究從無窮無盡的數據流中學習的問題,其目標是逐步擴展已獲得的知識,并將其用于未來[4]的學習。數據可以來自于變化的輸入域(例如,不同的成像條件),也可以與不同的任務相關聯(例如,細粒度的分類問題)。持續學習也被稱為終身學習[18]0,[18]1,[18]2,[18]3,[18]5,[18]4,順序學習[10],[11],[12]或增量學習[13],[14],[15],[16],[17],[18],[19]。主要的標準是學習過程的順序性質,只有一小部分輸入數據來自一個或幾個任務,一次可用。主要的挑戰是在不發生災難性遺忘的情況下進行學習:當添加新的任務或域時,之前學習的任務或域的性能不會隨著時間的推移而顯著下降。這是神經網絡中一個更普遍的問題[20]的直接結果,即穩定性-可塑性困境,可塑性指的是整合新知識的能力,以及在編碼時保持原有知識的穩定性。這是一個具有挑戰性的問題,不斷學習的進展使得現實世界的應用開始出現[21]、[22]、[23]。
為了集中注意力,我們用兩種方式限制了我們的研究范圍。首先,我們只考慮任務增量設置,其中數據按順序分批到達,一個批對應一個任務,例如要學習的一組新類別。換句話說,我們假設對于一個給定的任務,所有的數據都可以同時用于離線訓練。這使得對所有訓練數據進行多個時期的學習成為可能,反復洗刷以確保i.i.d.的條件。重要的是,無法訪問以前或將來任務的數據。在此設置中優化新任務將導致災難性的遺忘,舊任務的性能將顯著下降,除非采取特殊措施。這些措施在不同情況下的有效性,正是本文所要探討的。此外,任務增量學習將范圍限制為一個多頭配置,每個任務都有一個獨占的輸出層或頭。這與所有任務共享一個頭的更有挑戰性的類增量設置相反。這在學習中引入了額外的干擾,增加了可供選擇的輸出節點的數量。相反,我們假設已知一個給定的樣本屬于哪個任務。
其次,我們只關注分類問題,因為分類可以說是人工神經網絡最既定的任務之一,使用相對簡單、標準和易于理解的網絡體系結構具有良好的性能。第2節對設置進行了更詳細的描述,第7節討論了處理更一般設置的開放問題。
持續學習(CL)是一種特殊的機器學習范式,它的數據分布和學習目標會隨著時間的推移而改變,或者所有的訓練數據和客觀標準都不會立即可用。學習過程的演變是以一系列學習經驗為模型的,其中的目標是能夠在學習過程中一直學習新的技能,而不會忘記之前學過的知識。CL可以看作是一種在線學習,需要進行知識融合,以便從按順序及時呈現的數據流中學習。在學習過程中,不斷學習的目的還在于優化記憶、計算能力和速度。機器學習的一個重要挑戰不是必須找到在現實世界中有效的解決方案,而是找到可以在現實世界中學習的穩定算法。因此,理想的方法是在嵌入的平臺中處理現實世界:自治的代理。持續學習在自主代理或機器人中是有效的,它們將通過時間自主學習外部世界,并逐步發展一套復雜的技能和知識。機器人必須學會通過連續的觀察來適應環境并與之互動。一些最近的方法旨在解決機器人持續學習的問題,但最近關于持續學習的論文只是在模擬或靜態數據集的實驗方法。不幸的是,對這些算法的評估并不能說明它們的解決方案是否有助于在機器人技術的背景下持續學習。這篇論文的目的是回顧持續學習的現有狀態,總結現有的基準和度量標準,并提出一個框架來展示和評估機器人技術和非機器人技術的方法,使這兩個領域之間的轉換更加容易。我們在機器人技術的背景下強調持續學習,以建立各領域之間的聯系并規范方法。
//www.sciencedirect.com/science/article/pii/S07377#sec0001
概要:
機器學習(ML)方法通常從平穩數據分布中隨機采樣的數據流中學習。這通常是有效學習的必要條件。然而,在現實世界中,這種設置相當少見。持續學習(CL)[128]匯集了解決當數據分布隨時間變化時,以及在永無止境的數據流中需要考慮的知識融合的學習問題的工作和方法。因此,CL是處理災難性遺忘[47]的范式[102]。
為了方便起見,我們可以根據經驗將數據流分割成幾個子段,這些子段有時間邊界,我們稱之為任務。然后我們可以觀察在學習一項新任務時所學到或忘記了什么。即使對任務沒有強制約束,任務通常指的是一段特定的時間,其中數據分布可能(但不一定)是平穩的,并且目標函數是常量。就學習目標而言,任務可以是相互獨立的,也可以是相互關聯的,并且取決于設置。
持續學習的一個解決方案是保存所有數據,打亂它,然后回到傳統的機器學習設置。不幸的是,在這種情況下,這并不總是可能的,也不是最佳的。這里有幾個例子,其中持續學習是必要的:
你有一個訓練過的模型,你想用新的數據更新它,但是原來的訓練數據被丟棄了,或者你沒有權利再訪問它。
你想在一系列任務上訓練一個模型,但你不能存儲你的所有數據,或者你沒有計算能力從所有數據中重新訓練模型(例如,在嵌入式平臺中)。
您希望智能代理學習多種策略,但您不知道學習目標何時發生變化,如何變化。
您希望從持續的數據流中學習,這些數據可能會隨著時間而變化,但您不知道如何變化,何時變化。
為了處理這些設置,表示應該通過在線方式學習[87]。隨著數據被丟棄并且生命周期有限,忘記不重要的東西而保留對未來有意義的東西的能力是持續學習的主要目標和重點。
從機器人技術的角度來看,CL是發展機器人技術的機器學習答案[93]。發展機器人技術是一種交叉學科的方法,用于自主設計人工主體的行為和認知能力,直接從兒童自然認知系統中觀察到的發展原則和機制中獲得靈感。
在這種情況下,CL必須包含一個學習累積技能的過程,并能逐步提高所處理任務的復雜性和多樣性。
自主主體在這樣的環境中以開放式的[36]方式學習,但也以持續的方式學習。這種發展方法的關鍵組成部分包括學習自主產生目標和探索環境的能力,開發內在動機[113]和好奇心的計算模型[112]。
我們提出了一個框架來連接持續學習和機器人技術。這個框架也為持續學習提供了機會,以一個有框架的數學公式以清晰和系統的方式呈現方法。
首先,我們介紹了持續學習的背景和歷史。其次,我們的目標是在不斷學習的基礎上理清概念匯。第三,我們將介紹我們的框架作為一種標準的CL方法,以幫助在不同的持續學習領域之間進行轉換,特別是對于機器人技術。第四,我們提供了一組度量標準,它將有助于更好地理解每一類方法的質量和缺點。最后,我們提出了持續學習機器人技術的細節和機會,這使得CL變得如此重要。
對于機器人技術和非機器人技術領域,我們保持了定義、框架、策略和評估的一般性。盡管如此,最后一節,機器人持續學習(第6節)受益于前幾節的內容,以呈現機器人領域持續學習的特殊性。
人類具有從經驗中不斷學習的非凡能力。我們不僅可以把以前學過的知識和技能應用到新的情況中,我們還可以把這些作為以后學習的基礎。人工智能(AI)的宏偉目標之一是構建一種人工的“持續學習”代理,通過對越來越復雜的知識和技能的自主增量開發,從自身經驗構建對世界的復雜理解。然而,盡管有早期的推測和開創性的工作,很少有研究和努力致力于解決這一愿景。當前的人工智能系統在面對新數據或環境下時會受到很大的影響,這些數據或環境甚至與它們所接受的訓練稍有不同。此外,學習過程通常局限于狹窄、孤立的任務中的固定數據集,這很難導致更復雜、更自主的智能行為的出現。從本質上說,持續學習和適應能力,雖然通常被認為是每一個智能主體的基本支柱,但基本上被排除在人工智能的主要研究焦點之外。在這篇論文中,我們根據機器學習研究的最新進展和人工智能的深層架構來研究這些思想的應用。我們提出了一個全面和統一的框架,以持續學習,新的指標,基準和算法,以及提供大量的實驗評估在不同的監督,非監督和強化學習任務。
現代機器學習擅長于從固定的數據集和固定的環境中訓練出強大的模型,常常超過人類的能力。然而,這些模型未能模擬人類的學習過程,而人類的學習過程是有效的、穩健的,并且能夠從非平穩世界的連續經驗中逐步學習。對于這一局限性的見解可以從神經網絡優化的本質中獲得,這意味著持續學習技術可以從根本上提高深度學習,并打開了新的應用領域的大門。持續學習的有前途的方法可以在最細粒度的層次上找到,使用基于梯度的方法,也可以在體系結構層次上找到,使用模塊化和基于內存的方法。我們也認為元學習是一個潛在的重要方向。
人工智能研究在過去的幾個月中取得了巨大的進步,但它主要依賴于固定的數據集和固定的環境。持續學習是一個日益相關的研究領域,它表明人工系統可能像生物系統一樣,從連續不斷的相關數據流中有序地學習。在目前的回顧中,我們將持續學習與神經網絡的學習動力學聯系起來,強調它在穩步提高數據效率方面的潛力。我們進一步考慮了近年來出現的許多受生物學啟發的新方法,重點關注那些利用正規化、模塊化、記憶和元學習的方法,并強調了一些最有前途和最有影響的方向。
世界不是靜止不動的
人工智能成功的一個常見基準是模仿人類學習的能力。我們測量人類識別圖像、玩游戲和駕駛汽車的能力,舉幾個例子,然后開發機器學習模型,如果有足夠的訓練數據,它可以匹配或超過這些能力。這種范式把重點放在最終結果上,而不是學習過程上,并且忽略了人類學習的一個關鍵特征:它對不斷變化的任務和連續的經驗是魯棒的。人類以這種方式學習也許并不奇怪,畢竟,時間是不可逆的,世界是不穩定的(見詞匯表),所以人類的學習已經進化到在動態學習環境中茁壯成長。然而,這種魯棒性與最強大的現代機器學習方法形成了鮮明的對比,后者只有在數據經過仔細的洗牌、平衡和均質后才能表現良好。這些模型不僅表現不佳,而且在某些情況下,它們會完全失敗,或者在早期學習的任務上遭遇快速的性能下降,即所謂的災難性遺忘。
基于生物系統持續學習基礎
對自然世界及其智能物種的研究經常與人工智能研究交叉,包括與持續學習有關的方面[1]。生物學為在復雜環境中成功地持續學習提供了存在證據,也暗示了成功方法的設計原則和權衡。有多種機制使生物系統能夠適應不斷變化的環境,而不固執或遺忘。因此,在本節中,我們將通過類比來介紹四種持續學習模式,并將每種方法的詳細討論留到后面的章節中。此外,可以通過描述它們的規范模型來簡要地描述這些方法,如圖1(關鍵圖)所示。
持續學習的定義
持續學習的問題通常是由順序訓練協議和解決方案所期望的特性來定義的。與靜態數據集或環境的普通機器學習設置相反,持續學習設置明確地關注非平穩或變化的環境,通常被劃分為需要按順序完成的一組任務。這種設置可能在任務轉換(平滑或離散)、任務長度和重復、任務類型(如無監督、監督或強化學習)方面有所不同,或者甚至可能沒有定義明確的任務[9-11]。與課程學習相比[12,13],學習者不能控制任務的順序。
支持現代機器學習的獨立同分布假設
神經網絡大量利用現代技術來并行計算,同時考慮大量數據;事實上,這種易于伸縮的特性使得它們在過去的十年中成為了語音、視覺和語言應用程序的主流方法。 在典型的學習設置中,目標是通過設置網絡的參數來最小化一些損失函數,例如真輸出和預測輸出之間的誤差。基于梯度的學習,最有效的和廣泛使用的范式,是一種迭代算法,在每一次迭代,使一個小變化的參數,以減少損失(更詳細的解釋,見盒2)。這條規則的機制在拔河的動態結果,其中每個數據樣本正試圖拉動每個參數更大或更小。通過平均梯度,我們因此創建了一個拔河游戲,其中應用于每個參數的更新(因為它是正的或負的)揭示了哪個數據樣本贏了或輸了。在許多優化步驟上組合許多拔河式更新,可以進行學習(圖3)。
基于梯度的解決方案
由前面描述的拔河式學習動態驅動,一種有前途的方法是直接調節不同任務的梯度。這不僅是優化問題的核心,而且是由生物大腦[3]中突觸鞏固的研究激發的。一種方法是迫使梯度與之前學習任務的梯度保持一致[19,20],消除潛在干擾。這些方法在其他環境中也有好處,例如,在多任務學習中,它們有可能在目標沖突的情況下提高學習效率[21-23]。
模塊化架構
模塊化的神經網絡結構是一種自然有效的解決持續學習中的干擾和災難性遺忘問題的方法。模塊化提供了一個折衷方案,即使用一個容易遺忘的單一單片網絡,以及為每個任務使用獨立的網絡,這既可以防止災難性遺忘,也可以防止任務之間的轉移(參見圖1C的模塊化架構說明)。模塊化在生物系統中也很明顯,它支持大腦區域的功能專門化。
人工學習系統的記憶
基于梯度和模塊化的方法可能更適合短期的持續學習,而不是長期的記憶。基于梯度的方法不能防止任意長任務序列的遺忘,而模塊化方法可以在長時間尺度上保存知識,它們可能在神經網絡能力方面達到實際的極限。考慮一下這樣一個具有挑戰性的場景:在幾個月的時間里,把食物藏在1000個不同的地方,然后在更多的食物消失后,正確地找到每一個食物。這個特征是每個冬天都會出現的,比如夜鶯、松鴉和鴉類[57]。通過調整一個簡單的神經網絡的參數來保存存儲食物的順序經驗既具有挑戰性又效率低下。一個更可伸縮的策略是使用專用的讀寫內存對空間位置進行編碼。
元學習:發現持續學習的歸納偏差
到目前為止所討論的所有解決方案都規定了用于持續學習的手工設計的機制或架構,歸納偏差。每種歸納偏差都在需求(如良好的知識保留與基于記憶的方法中的正向遷移)之間達成了不同的權衡。值得考慮的是,從數據中學習解決方案,而不是依靠人類的獨創性來設計它,是否能夠實現更好的權衡。歷史上,許多元學習或學習-學習方法已經證明,解決方案可以通過自動學習歸納偏差(如架構、數據和學習參數)來改進,否則需要手工設計(圖1E) 。
結論和未來方向
機器學習研究人員經常指出,人類具有快速學習和概括(例如,從幾個例子中推斷出一個模式)的非凡能力。然而,我們并不經常重新評價人類在一生的教育和經歷中不斷學習的能力,盡管正是這種能力使人類在科學、藝術和工業上取得成就。這篇文章不僅試圖強調持續學習的重要性,而且還暴露了現代神經網絡在這方面的局限性,特別是導致效率低下、基于梯度的拔河的信用分配問題。
通過對這一空間的調查,我們發現了一種學習模式,如果擴展到更有雄心的領域,它就有可能發揮真正的影響力。毫不奇怪,這些范式都有很強的平行神經科學和生物系統。基于梯度的方法直接修改了神經網絡的操作時間,并被證明可以減少災難性遺忘。
模塊化架構為干擾和災難性遺忘提供了實用的解決方案,同時通過技能和知識的層次重組實現面向遷移。端到端記憶模型可以成為長時間學習的可擴展解決方案,元學習方法可以超越手工設計的算法和架構。有了這些潛在的積極影響,也必須認識到部署不斷變化的機器學習模型所涉及的風險,因為任何安全和預期行為的初始評估都不能輕易地永久保證。然而,通過提高學習算法的長期可靠性,以及通過開發確保某些規則或邊界不被違反的架構,持續學習解決方案可以降低這些風險。