自然智能具有從環境中不斷學習的能力,環境是不斷變化的,因此產生了需要應對的不確定性,以確保生存。相比之下,人工智能(AI)通常只在特定的訓練階段從數據中學習一次,很少明確表示或利用不確定性。在這篇論文中,我們通過設計和理解基于神經網絡的模型,在這些方面為改進人工智能做出貢獻,這些模型可以持續學習,并明確表示幾種不確定性來源,最終目標是獲得有用、可靠和實用的模型。
我們首先將這項研究置于一個更廣泛的背景下,并提供對不確定性估計和持續學習領域的介紹。對于那些有興趣熟悉這些主題的人來說,這個詳細的回顧可以成為一個入門點。在奠定這個基礎之后,我們將深入研究如何持續學習一組任務的具體問題,并提出我們基于神經網絡系統解決這一問題的方法。更具體地說,我們訓練一個元網絡為推理模型生成特定于任務的參數,并表明,在這種設置下,可以在元級別使用簡單的正則化來防止遺忘。由于任務特定解決方案的存在,出現了必須推斷不可見輸入所屬的任務的問題。我們研究了解決這一任務推理問題的兩種主要方法:(i)基于重玩的方法和(ii)基于不確定性的方法。盡管基于重放的任務推理在簡單的基準測試中表現出了顯著的性能,但我們的這種方法的實現依賴于生成建模,隨著任務復雜性的增加,這變得不成比例地困難。另一方面,基于不確定性的任務推理不依賴外部模型,更容易擴展到復雜的場景。因為校準任務推斷所需的不確定性是困難的,在實踐中,人們經常求助于應該知道他們不知道的東西的模型。這在理論上可以通過對模型參數的貝葉斯處理來實現。然而,由于對基于神經網絡的模型的先驗知識的難以解釋,也就很難解釋模型知道什么是不知道的。這種認識的意義超越了持續學習,更普遍地影響了當前機器學習模型如何處理看不見的輸入。我們討論了神經網絡中與選擇先驗知識相關的復雜性,并表明常見的選擇往往導致不確定性,這些不確定性在本質上不能反映特定的需求數據,如檢測模型不應推廣到的看不出的輸入。
總體而言,本文對當前深度學習研究中的兩個重要課題——不確定性估計和持續學習進行了總結和貢獻,同時揭示了現有的挑戰,評估了新的方法,并確定了未來研究的有前途的途徑。
一個機器人要想在非結構化的室外環境中與人類高效合作,就必須將指令從操作者直觀的模態轉化為行動。機器人必須能夠像人類一樣感知世界,這樣機器人所采取的行動才能反映自然語言和人類感知的細微差別。傳統上,導航系統結合了個人感知、語言處理和規劃塊,這些塊通常是根據不同的性能規格單獨訓練的。它們使用限制性接口進行通信以簡化開發(即,具有離散屬性的點對象和有限的命令語言),但這也限制了一個模塊可以傳遞給另一個模塊的信息。
深度學習的巨大成功徹底改變了計算機視覺的傳統研究方向,如目標檢測和場景標記。視覺問答(VQA)將自然語言處理中的最先進技術與圖像理解聯系起來。符號基礎、多步驟推理和對空間關系的理解已經是這些系統的元素。這些元素統一在一個具有單一可微損失的架構中,消除了模塊之間定義良好接口的需要,并簡化了與之相伴的假設。我們介紹了一種將文本語言命令和靜態航空圖像轉換為適合規劃的成本圖的技術。我們建立在FiLM VQA架構的基礎上,對其進行調整以生成成本圖,并將其與修改后的可微分計劃損失(最大邊際計劃)結合起來使用Field D*計劃器。通過這種架構,我們向統一語言、感知和規劃到單一的端到端可訓練系統邁出了一步。
我們提出了一個源自CLEVR數據集的可擴展綜合基準測試,我們用它來研究算法在無偏倚環境中具有幾乎無限數據的理解能力。我們分析了該算法在這些數據上的表現,以了解其局限性,并提出未來的工作來解決其缺點。我們使用真實的航空圖像和合成命令提供混合數據集的結果。規劃算法通常具有高分支因子,并且不能很好地映射到近年來催化深度學習發展的GPU。我們精心選擇了Field D和Max Margin Planning,以在高度并行的架構上表現良好。我們引入了一個適用于多GPU數據并行訓練的Field D版本,它使用Bellman-Ford算法,與我們的cpu優化實現相比,性能幾乎提高了十倍。在團隊中工作的人之間的流暢互動取決于對任務、環境和語言微妙之處的共同理解。在這種情況下工作的機器人也必須這樣做。學習將命令和圖像轉換為具有可微分規劃損失的軌跡是捕捉和模仿人類行為的一種方法,也是實現機器人和人類無縫交互的一小步。
盡管深度學習取得了理論成就和令人鼓舞的實踐結果,但在推理、因果推理、可解釋性和可解釋性等許多領域仍然存在局限性。從應用程序的角度來看,最有效的限制之一與這些系統的魯棒性有關。事實上,目前的深度學習解決方案都沒有告知它們是否能夠在推理過程中對一個例子進行可靠的分類。現代神經網絡通常過于自信,即使它們是錯誤的。因此,構建魯棒的深度學習應用是當前計算機視覺、自然語言處理和許多其他領域的前沿研究課題。構建更可靠的深度學習解決方案最有效的方法之一是提高它們在所謂分布外檢測任務中的性能,所謂分布外檢測任務本質上是由“知道你不知道”或“知道未知”組成的。換句話說,當提交神經網絡未訓練的類實例時,具有分布外檢測能力的系統可能會拒絕執行無意義的分類。本文通過提出新的損失函數和檢測分數來解決目標性分布不均檢測任務。不確定性估計也是構建更魯棒的深度學習系統的關鍵輔助任務。因此,我們也處理這個與魯棒性相關的任務,它評估由深度神經網絡呈現的概率有多真實。為了證明我們的方法的有效性,除了大量的實驗,其中包括最新的結果,我們使用基于最大熵原理的論點來建立所提出的方法的理論基礎。與大多數當前的方法不同,我們的損失和得分是無縫的和有原則的解決方案,除了快速和有效的推斷,還能產生準確的預測。此外,我們的方法可以并入到當前和未來的項目中,只需替換用于訓練深度神經網絡的損失,并計算一個快速的檢測評分。
近年來,在獨立和相同分布(i.i.d.)數據的假設下,主要針對單一任務進行訓練的深度學習已經取得了巨大的進展。然而,當天真地在多個任務上連續訓練,而不重溫以前的任務時,已知神經網絡會遭受災難性的遺忘(McCloskey和Cohen,1989;Ratcliff,1990),即在學習新任務時,執行舊任務的能力往往會喪失。與此相反,生物生命能夠在一生中從明顯的非即得經驗中學習許多任務,獲得新的技能并重復使用舊的技能來學習新的能力,同時保留以前的重要知識。當我們努力使人工系統越來越智能時,自然生命不斷學習的能力是一種重要的模仿能力。持續學習(Parisi等人,2019)最近在機器學習研究中引起了相當大的關注,并出現了一些期望值。模型應該能夠依次學習多個任務,最終任務的數量和復雜程度未知。重要的是,在學習新的任務時,應該不會對以前的任務產生災難性的遺忘,最好是不用保留以前任務的任何數據來重新訓練。模型還應該能夠進行正向轉移:以前學過的任務應該有助于新任務的學習。任務之間的知識轉移可以最大限度地提高樣本效率,這在數據稀缺的情況下尤為重要。一些方法通過擴展來解決持續學習的問題,也就是說,模型隨著每一個額外的任務而增長。通過將學習轉移到每個任務的新網絡組件上,這些方法通過設計減輕了災難性的遺忘,因為以前學習的參數沒有受到干擾。這些策略的一個關鍵挑戰是決定何時以及以何種程度來擴展網絡。雖然通常聲稱這可以根據即將到來的任務進行調整,但這樣做需要人為估計需要多少擴展,這不是一個簡單的過程。相反,通常對每個新任務采用預設的、恒定的擴展。另外,我們可以考慮動態的、數據驅動的模型擴展,或者采用模塊化的模型增長方法,從而開發出一個框架,為持續學習建立緊湊的模型,其中模型的大小隨著任務數量的增加(最好是不斷增加)而有效擴展,同時減輕災難性的遺忘現象。此外,我們試圖開發一個框架,使其可以通用于不同的持續學習任務,例如分類、圖像的生成過程和自然語言處理序列標簽,即命名實體識別。在一個持續學習的環境中,我們會遇到一連串具有預定目的的任務,但每個任務都由一個不同的數據集組成。主要目標是建立模型,使其在不同的任務中表現盡可能一致,同時i)重復使用以前任務的信息,以及ii)防止模型不受控制地增長(大小)。然而,我們的方法包括為每個任務建立一個模型,這樣,模型的大部分組件是跨任務共享的(全局的),剩下的幾個是特定任務的(局部的),從而允許信息共享和控制增長。因此,我們試圖開發具有全局和特定任務參數的特定任務(深度學習)模型,以實現有效和高效的持續學習。
近年來,在獨立和相同分布(i.i.d.)數據的假設下,主要針對單一任務進行訓練的深度學習取得了巨大的進展。然而,當天真地在多個任務上連續訓練,而不重溫以前的任務時,已知神經網絡會遭受災難性的遺忘(McCloskey和Cohen,1989;Ratcliff,1990),即在學習新任務時,執行舊任務的能力往往會喪失。與此相反,生物生命能夠在一生中從明顯的非即得經驗中學習許多任務,獲得新的技能并重復使用舊的技能來學習新的能力,同時保留以前的重要知識。當我們努力使人工系統越來越智能時,自然生命不斷學習的能力是一種重要的模仿能力。
持續學習(Parisi等人,2019)最近在機器學習研究中引起了相當大的關注,并出現了一些期望值。模型應該能夠依次學習多個任務,最終任務的數量和復雜程度未知。重要的是,在學習新的任務時,應該不會對以前的任務產生災難性的遺忘,最好是不用保留以前任務的任何數據來重新訓練。模型還應該能夠進行正向轉移:以前學過的任務應該有助于新任務的學習。任務之間的知識轉移可以最大限度地提高樣本效率,這在數據稀缺的情況下尤為重要。
一些方法通過擴展來解決持續學習的問題,也就是說,模型隨著每一個額外的任務而增長。通過將學習轉移到每個任務的新網絡組件上,這些方法通過設計減輕了災難性的遺忘,因為以前學習的參數沒有受到干擾。這些策略的一個關鍵挑戰是決定何時以及以何種程度來擴展網絡。雖然通常聲稱這可以根據即將到來的任務進行調整,但這樣做需要人為估計需要多少擴展,這不是一個簡單的過程。相反,通常對每個新任務采用預設的、恒定的擴展。另外,我們可以考慮動態的、數據驅動的模型擴展,或者采用模塊化的模型增長方法,從而開發出一個框架,為持續學習建立緊湊的模型,其中模型的大小隨著任務數量的增加(最好是不斷增加)而有效擴展,同時減輕災難性的遺忘現象。此外,我們試圖開發一個框架,使其能夠通用于不同的持續學習任務,例如分類、圖像的生成過程和自然語言處理序列標簽,即命名實體識別。
在一個持續學習的環境中,我們會遇到一連串具有預定目的的任務,但每個任務都由一個不同的數據集組成。主要目標是建立模型,使其在不同的任務中表現盡可能一致,同時i)重復使用以前任務的信息,以及ii)防止模型不受控制地增長(大小)。然而,我們的方法包括為每個任務建立一個模型,這樣,模型的大部分組件是跨任務共享的(全局的),剩下的幾個是特定任務的(局部的),從而允許信息共享和控制增長。因此,我們試圖開發具有全局和特定任務參數的特定任務(深度學習)模型,以實現有效和高效的持續學習。
我們的工作對DARPA終身學習機器(L2M)計劃和持續學習社區的貢獻列舉如下:
開發了生成式對抗網絡的持續適應模型(Cong等人,2020)。
開發了使用貝葉斯非參數字典權重因子的持續學習(Mehta等人,2021)。
為人類和機器的結構化任務分布開發了一個元學習框架(Kumar等人,2020)。
為鑒別性和生成性持續學習開發了高效的特征轉換(EFTs)(Verma等人,2021年)。
通過設計和利用參數有效的特征圖轉換,為生成式對抗網絡(GANs)開發了一種持續學習方法。
開發了第一個用于NER的少許類增量學習的工作(Wang等人,2022a)。
開發了結構化稀疏卷積(SSC),利用圖像的固有結構來減少卷積濾波器的參數(Verma等人,2022)。
開發了一個新的任務持續學習框架,該框架不假設任務序列是不同或唯一的,因此需要一個任務相似性識別模塊(Wang等人,2022b)。
在機器學習領域產生了9項學術科學貢獻,其中7項已經發表,2項目前正在審查。
用我們的EFT框架為M21評估分類基準做出了貢獻(Verma等人,2021)。
下面,我們為每個貢獻提供一個簡短的總結,然后是我們項目產生的公開可用的軟件包的清單,以及一個完整的參考文獻清單,我們向讀者介紹完整的方法學細節、實驗設置和經驗結果。
強化學習(Reinforcement Learning, RL)是一種訓練人工智能體自主與世界互動的方法。然而,在實踐中,強化學習仍然有局限性,禁止在許多現實世界環境中部署強化學習智能體。這是因為RL需要很長時間,通常需要人工監督,并產生在不熟悉的情況下可能表現出出乎意料的特殊智能體。本文的目標是使RL智能體在現實世界中部署時更加靈活、穩健和安全。我們開發具有快速適應能力的智能體,即能夠有效學習新任務的智能體。為此,我們使用元強化學習(Meta- RL),在這里我們不僅教智能體自主行動,而且教智能體自主學習。基于快速適應可以分為“任務推理”(理解任務)和“任務求解”(解決任務)的直覺,我們提出了四種新的元RL方法。我們假設這種分離可以簡化優化,從而提高性能,并且更適合下游任務。為了實現這一點,我們提出了一種基于上下文的方法,在這種方法中,智能體以表示其對任務的當前知識的上下文為條件。然后,智能體可以使用這一點來決定是進一步了解任務,還是嘗試解決它。在第5章中,我們使用確定性上下文,并確定這確實可以提高性能并充分捕獲任務。在接下來的章節中,我們將在上下文中引入貝葉斯推理,以實現在任務不確定性下的決策。通過結合元強化學習、基于上下文的學習和近似變分推理,開發了為單智能體設置(第6章)和多智能體設置(第7章)計算近似貝葉斯最優智能體的方法。最后,第8章解決了稀疏獎勵的元學習的挑戰,這是許多現實世界應用的重要設置。觀察到,如果獎勵稀疏,現有的元強化學習方法可能會完全失敗,并提出一種方法來克服這一問題,即鼓勵智能體在元訓練期間進行探索。我們以對當前發展背景下的工作的反思和對開放問題的討論來結束論文。綜上所述,本文的研究成果極大地推動了基于Meta-RL的快速適應領域的發展。本文開發的智能體可以比以前的任何方法更快地適應各種任務,并且可以為比以前可能的更復雜的任務分布計算近似貝葉斯最優策略。我們希望這有助于推動Meta-RL研究的發展,并從長遠來看,利用RL解決重要的現實世界挑戰。
近年來,深度學習已經將自己定位為機器學習最有前途的方向之一。然而,深度神經網絡在不確定性估計、模型選擇、先驗知識的整合等方面存在許多不足。幸運的是,所有這些問題都可以在貝葉斯深度學習框架內克服,使用貝葉斯神經網絡、變分自編碼器或深度神經網絡高斯過程等模型。不幸的是,這需要使用近似推理過程和先驗分布的規范。在這篇論文中,我們展示了這些模型中先驗規范不僅僅是一個麻煩,而是一個寶貴的機會,可以將領域知識和歸納偏見加入到學習算法中,從而提升全新應用的性能。為此,我們對相關文獻進行了全面的回顧,并進一步貢獻了不同的原創研究成果。
具體地說,我們證明了變分自編碼器中的高斯過程先驗可以改進時間序列的表示學習,并允許對缺失數據進行有效的插補,同時還可以提供校準的不確定性估計。我們還表明,通過使用變分高斯-馬爾可夫過程,這是可能的,在沒有顯著的額外計算成本。此外,我們表明,在變分自編碼器中使用自組織映射作為結構歸納偏差,可以提高學習表示的可解釋性,并使有效的潛在聚類。這些聚類表示可以作為潛在時間序列模型的輸入,從而準確地預測未來的狀態。在貝葉斯神經網絡中,我們證明了常用的各向同性高斯先驗不僅會導致次優性能,而且在某些情況下還會產生所謂的冷后驗效應,即經過緩和的后驗比真正的貝葉斯后驗表現更好。相反,我們提出了具有重尾性和空間相關性的備選先驗,可以提高性能,緩解冷后驗效應。最后,當沒有先驗知識可用時,我們表明先驗分布可以在元學習環境中從相關任務中學習。在深度神經網絡高斯過程的情況下,我們表明元學習的均值函數和核函數的先驗改進預測性能和不確定性估計。
我們希望本文將為貝葉斯深度學習框架奠定基礎,在該框架中,先驗分布的選擇將被視為建模任務的關鍵部分,手工設計和元學習的先驗將在任務之間自由共享,以實現貝葉斯深度學習。
//www.research-collection.ethz.ch/handle/20.500.11850/523269
本書是對概率編程的研究生水平的介紹。它不僅為希望使用概率編程系統的任何人提供了全面的背景知識,而且還介紹了設計和構建這些系統所需的技術。它面向對概率機器學習和編程語言或理想情況下對概率機器學習和編程語言具有本科水平理解的人。
我們首先討論基于模型的推理,并解釋為什么條件反射是概率機器學習和人工智能領域的核心基礎計算。然后,我們引入一階概率編程語言 (PPL),其程序對應于具有已知的有限隨機變量集的圖形模型。在本 PPL 的上下文中,我們介紹了基本的推理算法并描述了如何實現它們。
然后我們轉向高階概率編程語言。此類語言的程序可以定義具有動態計算圖的模型,這些模型可能不會在每次執行中實例化相同的隨機變量集。推理需要通過重復評估程序來生成樣本的方法。在程序執行和推理控制器之間的接口的上下文中討論了這種語言的基礎算法。
最后,我們考慮概率規劃和可微規劃的交集。我們首先討論自動微分,以及如何使用它來實現基于哈密頓蒙特卡羅的高效推理方法。然后,我們討論在使用神經網絡參數化的程序中基于梯度的最大似然估計,如何通過學習程序后驗的神經近似來分攤推理,以及語言特征如何影響深度概率編程系統的設計。
在一個特定的數據集上訓練一個強大的神經預測器執行一項任務的主流NLP范式取得了在各種應用上的成功(如:情感分類、基于廣度預測的問答或機器翻譯)。然而,它建立在數據分布是平穩的假設之上,即。在訓練和測試時,數據都是從一個固定的分布中取樣的。這種訓練方式與我們人類在不斷變化的信息流中學習和操作的方式不一致。此外,它不適合于真實世界的用例,在這些用例中,數據分布預計會在模型的生命周期中發生變化。
本文的第一個目標是描述這種偏移在自然語言處理環境中可能采取的不同形式,并提出基準和評價指標來衡量它對當前深度學習體系結構的影響。然后,我們繼續采取步驟,以減輕分布轉移對NLP模型的影響。為此,我們開發了基于分布魯棒優化框架的參數化重構方法。從經驗上講,我們證明了這些方法產生了更魯棒的模型,正如在選擇的現實問題上所證明的那樣。在本文的第三部分和最后一部分,我們探索了有效地適應現有模型的新領域或任務的方法。我們對這個主題的貢獻來自于信息幾何學的靈感,獲得了一個新的梯度更新規則,緩解了適應過程中災難性的遺忘問題。
我們從評估開始,因為分布轉移特別難以描述和測量,特別是在自然語言方面。這部分是由于數據缺乏規范的度量結構。換句話說,如何有效地衡量兩個句子之間的語義相似度還不清楚,因此沒有直接的方法來衡量兩個樣本之間的差異,更不用說兩種分布了。因此,作為解決分布偏移的第一步,我們提出了一個新的基準(第3章)和評估指標(第4章),分別評估域偏移和對抗擾動的魯棒性。有了這些工具在手,我們開始構建魯棒的模型,這些模型經過訓練,即使在沒有關于轉移本質的明確信息的情況下,對分布轉移也不那么敏感。這是通過利用訓練分布中的數據多樣性來實現的,以確保在訓練數據(子群體)中存在的各種領域上的統一性能。具體來說,我們制定了一個分布魯棒優化框架的參數化版本,該框架允許訓練模型對子群體轉移更為穩健(第5章和第6章)。最后,在靜態環境中學習從根本上是次優的:我們不能期望我們的模型在每一個可能的未來環境中都表現良好,我們必須能夠使它們適應我們遇到的任何新情況。因此,我們研究了一種機制,通過這種機制,我們能夠根據新的證據微調訓練模型,而不會忘記之前獲得的知識(第7章)。