每日最新頭條.有趣資訊

Reddit熱議!DeepMind最新研究解決災難性遺忘難題

新智元報導

來源:reddit

編輯:張佳

【新智元導讀】當遇到序列任務時,神經網絡會遭受災難性遺忘。DeepMind研究人員通過在函數空間中引入貝葉斯推理,使用誘導點稀疏GP方法和優化排練數據點來克服這個問題。今天和大家分享這篇Reddit高讚論文。

這篇由DeepMind研究團隊出品的論文名字叫“Functional Regularisation for Continual Learning”(持續學習的功能正規化)。研究人員引入了一個基於函數空間貝葉斯推理的持續學習框架,而不是深度神經網絡的參數。該方法被稱為用於持續學習的函數正則化,通過在底層任務特定功能上構造和記憶一個近似的後驗信念,避免忘記先前的任務。

為了實現這一點,他們依賴於通過將神經網絡的最後一層的權重視為隨機和高斯分布而獲得的高斯過程。然後,訓練算法依次遇到任務,並利用誘導點稀疏高斯過程方法構造任務特定函數的後驗信念。在每個步驟中,首先學習新任務,然後構建總結(summary),其包括(i)引入輸入和(ii)在這些輸入處的函數值上的後驗分布。然後,這個總結通過Kullback-Leibler正則化術語規範學習未來任務,從而避免了對早期任務的災難性遺忘。他們在分類數據集中演示了自己的算法,例如Split-MNIST,Permuted-MNIST和Omniglot。

通過函數正則化解決災難性遺忘

近年來,人們對持續學習(也稱為終身學習)的興趣再度興起,這是指以在線方式從可能與不斷增加的任務相關的數據中學習的系統。持續學習系統必須適應所有早期任務的良好表現,而無需對以前的數據進行大量的重新訓練。

持續學習的兩個主要挑戰是:

(i)避免災難性遺忘,比如記住如何解決早期任務;

(ii)任務數量的可擴展性。

其他可能的設計包括向前和向後轉移,比如更快地學習後面的任務和回顧性地改進前面的任務。值得注意的是,持續學習與元學習(meta-learning)或多任務學習有很大的不同。在後一種方法中,所有任務都是同時學習的,例如,訓練是通過對小批量任務進行二次抽樣,這意味著沒有遺忘的風險。

與許多最近關於持續學習的著作相似,他們關注的是理想化的情況,即一系列有監督的學習任務,具有已知的任務邊界,呈現給一個深度神經網絡的持續學習系統。一個主要的挑戰是有效地規範化學習,使深度神經網絡避免災難性的遺忘,即避免導致早期任務的預測性能差的網絡參數配置。在不同的技術中,他們考慮了兩種不同的方法來管理災難性遺忘。

一方面,這些方法限制或規範網絡的參數,使其與以前的任務中學習的參數沒有明顯的偏差。 這包括將持續學習構建為順序近似貝葉斯推理的方法,包括EWC和VCL。這種方法由於表征漂移(representation drift)而具有脆弱性(brittleness)。也就是說,隨著參數適應新任務,其他參數被約束/正規化的值變得過時。

另一方面,他們有預演/回放緩衝方法,它使用過去觀察的記憶存儲來記住以前的任務。它們不會受到脆弱性的影響,但是它們不表示未知函數的不確定性(它們只存儲輸入-輸出),並且如果任務複雜且需要許多觀察來正確地表示,那麽它們的可擴展性會降低。優化存儲在重放緩衝區中的最佳觀察結果也是一個未解決的問題。

在論文中,研究人員發展了一種新的持續學習方法,解決了這兩個類別的缺點。它是基於近似貝葉斯推理,但基於函數空間而不是神經網絡參數,因此不存在上述的脆弱性。這種方法通過記住對底層特定任務功能的近似後驗信念,避免忘記先前的任務。

為了實現這一點,他們考慮了高斯過程(GPs),並利用誘導點稀疏GP方法總結了使用少量誘導點的函數的後驗分布。這些誘導點及其後驗分布通過變分推理框架內的KullbackLeibler正則化項,來規範未來任務的持續學習,避免了對早期任務的災難性遺忘。因此,他們的方法與基於重播的方法相似,但有兩個重要的優勢。

首先,誘導點的近似後驗分布捕獲了未知函數的不確定性,並總結了給定所有觀測值的全後驗分布。其次,誘導點可以使用來自GP文獻的專門標準進行優化,實現比隨機選擇觀測更好的性能。

為了使他們的函數正則化方法能夠處理高維和複雜的數據集,他們使用具有神經網絡參數化特徵的線性核。這樣的GPs可以理解為貝葉斯神經網絡,其中只有最後一層的權重以貝葉斯方式處理,而早期層的權重是優化的。這種觀點允許在權重空間中進行更有效和準確的計算訓練程序,然後將近似轉換為函數空間,在函數空間中構造誘導點,然後用於規範未來任務的學習。他們在分類中展示了自己的方法,並證明它在Permuted-MNIST,Split-MNIST和Omniglot上具有最先進的性能。

實驗簡介

研究人員考慮了三個持續學習分類問題中的實驗:Split-MNIST,PermutedMNIST和Sequenn Omniglot。他們比較了其方法的兩種變體,稱為功能正則化持續學習(FRCL)。

表1:Permuted-MNIST 和 Split-MNIST的結果。對於在這項工作中進行的實驗,他們顯示了10次隨機重複的平均值和標準差。在適用的情況下,他們還會在括號中報告每個任務的誘導點/重放緩衝區大小的數量。

表2:Sequential Omniglo的結果。所示為超過5個隨機任務排列的平均值和標準偏差。請注意,由於不現實的假設,“每個任務的單一模型”和“漸進網絡”方法不能直接比較。他們將其包括在內,因為它們為其余的持續學習方法提供了性能的上限。

他們將自己的方法與文獻中的其他方法進行比較,引用公布的結果,並使用與簡單的重放-緩衝方法相對應的附加基線(BASELINE)進行持續學習。對於所有實現的方法,即FRCL-RND,FRCL-TR和BASELINE,他們不在共享特徵向量參數θ上放置任何額外的正則化器(例如“2懲罰”或批量規範化等)。

鑒於Permuted-MNIST和Omniglot是多類分類問題,其中每個第k個任務涉及對Ck類的分類,他們需要推廣模型和變分方法來處理每個任務的多個GP函數。正如他們在補充中詳述的那樣,這樣做很簡單。FRCL方法已使用GPflow實現。

圖1:左欄中的面板顯示隨機誘導點(BASELINE&FRCL-RND;見頂部圖像)和相應的最終/優化誘導點(FRCL-TR);請參閱Permuted-MNIST基準測試的第一項任務。誘導點的數量限制為10個,每行對應於不同的運行。右欄中的面板提供隨機誘導點的tsne可視化,最終/優化的那些將一起顯示所有剩餘的訓練輸入。為了獲得這種可視化,他們將tsne應用於訓練輸入的完整神經網絡特徵向量矩陣ΦX1。

討論與未來研究

研究人員引入了一種用於監督連續學習的函數正則化方法,該方法將誘導點GP推理與深度神經網絡相結合。該方法構造特定於任務的後驗信念或總結,包括對函數值的誘導輸入和分布,這些函數值捕獲了與任務相關的未知函數的不確定性。隨後,任務特定的總結使他們能夠規範持續學習並避免災難性的遺忘。

關於使用GPs進行在線學習的相關工作,請注意先前的算法是以在線方式學習單個任務,其中來自該任務的數據依次到達。相比之下,論文提出了一種處理一系列不同任務的連續學習方法。

未來研究的方向是強製執行固定的記憶體緩衝區,在這種情況下,需要將所有先前看到的任務的總結壓縮為單個總結。最後,在論文中,他們將該方法應用於具有已知任務邊界的監督分類任務,將其擴展到處理未知任務邊界,並考慮在其他領域的應用,如強化學習。

論文鏈接

https://arxiv.org/pdf/1901.11356.pdf

參考鏈接

https://www.reddit.com/r/MachineLearning/comments/c22u9s/r_deepmind_neural_networks_suffer_from/

獲得更多的PTT最新消息
按讚加入粉絲團