核心概念
雖然記憶能力被認為與過參數化深度學習模型的泛化性密切相關,但具有最佳參數數量的記憶神經網路可能缺乏泛化性,需要新的網路結構和演算法來確保在記憶訓練數據的同時也能夠泛化到未見數據。
摘要
文獻回顧
- 神經網路的記憶能力是指其擬合有限數據集的能力。
- 現有研究主要關注記憶所需的參數數量,已證明具有 O(N) 個參數的網路可以記憶大小為 N 的數據集,並且對於通用數據集來說,這樣的記憶網路已經接近最優。
- 近期研究表明,記憶能力與深度學習的一個驚人特性密切相關,即過參數化的神經網路在訓練過程中幾乎記住了帶有噪聲的數據,但仍然可以在測試數據上實現良好的泛化性能。
- 插值學習是一種在記憶約束下進行學習的方法,是記憶能力研究的另一個相關方向。
本文貢獻
本文對記憶神經網路的泛化性進行了系統的研究,主要貢獻包括:
- 最優參數數量記憶網路的構造:
- 對於從數據分佈中獨立同分佈採樣的數據集,本文證明了存在一種記憶演算法,可以生成具有最優參數數量的記憶網路。
- 這些網路的寬度為 6,深度(等效於參數數量)為 O(√N ln(Nn/c)),其中 N 為樣本數量,n 為數據維度,c 為數據分佈的正分離界。
- 泛化性記憶網路的必要條件:
- 本文證明了固定寬度的網路在某些情況下不具有泛化性。
- 即使提供足夠的數據,對於大多數分佈來說,記憶演算法也不一定具有泛化能力。
- 記憶演算法的樣本複雜度:
- 本文給出了記憶演算法樣本複雜度的下界,即 Ω(N^2_D),其中 N_D 是數據分佈 D 的記憶參數複雜度。
- 對於輸出具有最優參數數量網路的記憶演算法,本文證明了其樣本複雜度的確切值為 O(N^2_D)。
- 具有泛化保證的高效記憶演算法:
- 本文提出了一種高效的記憶演算法,當樣本數量 N = O(S_D) 時,該演算法可以保證泛化性,其中 S_D 是數據分佈 D 的高效記憶樣本複雜度。
- 該演算法使用的參數數量最多為 O(N 2n)。
研究結果的意義
- 本文的研究結果為插值學習提供了理論基礎,並為其樣本複雜度提供了界限。
- 本文的研究結果也為過參數化現象提供了一定的理論解釋,即具有 O(√N) 個參數的網路即使是可泛化的,也無法有效地計算。
局限性和未來工作
- 本文引入了兩個數值複雜度 N_D 和 S_D,用於描述記憶網路的大小和任何獨立同分佈數據集的高效記憶樣本複雜度,但目前尚不清楚如何計算 N_D 和 S_D。
- 未來研究方向包括:
- 研究如何計算 N_D 和 S_D。
- 尋找具有多項式大小高效記憶樣本複雜度 E_D 的數據分佈。
- 尋找一種記憶演算法,可以在解決實際圖像分類問題中取得最先進的結果。
統計資料
Memorization networks with O(N) parameters have been shown to be able to memorize datasets of size N.
For certain datasets, memorization requires at least Ω(√N) parameters.
Networks with fixed width may not be generalizable for specific distributions.
For most distributions, providing enough data does not necessarily mean that the memorization algorithm has generalization ability.
The sample complexity for general memorization algorithms is at least Ω(N^2_D).
The exact sample complexity for memorization algorithms with ND parameters is O(N^2_D).
There exists an efficient memorization algorithm that can achieve generalization with O(SD) samples and uses at most O(N 2n) parameters.