深度神經(jīng)網(wǎng)絡 (DNN) 是近年來機器學習研究進展的基礎,也是在圖像識別、圖像分割、機器翻譯等諸多領域能夠取得突破性進展的重要原因。
盡管 DNN 無處不在,研究人員仍在嘗試全面了解深度神經(jīng)網(wǎng)絡的基本原理。例如,傳統(tǒng)理論(如 VC 維和 Rademacher 復雜度)認為:在處理未知數(shù)據(jù)時,過參數(shù)化函數(shù) (over-parameterized functions) 的泛化能力較差;但在近期研究中卻發(fā)現(xiàn),大規(guī)模過參數(shù)化的函數(shù)(參數(shù)比數(shù)據(jù)點多出幾個數(shù)量級)卻擁有出色的泛化能力,更深層次地地理解泛化對于理論的落地和DNN理論的實現(xiàn)從而改進模型是很有必要的。
在理解泛化之前,我們需了解 Generalization Gap(泛化性能差異)這一重要概念。泛化性能差異即模型針對相同分布的訓練數(shù)據(jù)和未知數(shù)據(jù)所表現(xiàn)出的性能差異。在致力獲得更好的 DNN 泛化邊界(即泛化性能差異的上限)的過程中,研究人員取得了重大進展。但是,這類邊界通常仍會大大高估真實的泛化性能差異水平,并且無法解釋部分模型為何具有出色的泛化能力。
另一方面,研究人員基于支持向量機 (support-vector machines) 等淺層模型對邊緣 (notion) 概念(即數(shù)據(jù)點與決策邊界之間的距離)進行了大量研究,最終發(fā)現(xiàn)此概念與模型針對未知數(shù)據(jù)所表現(xiàn)出的泛化能力密切相關。基于此項發(fā)現(xiàn),研究人員已將使用邊緣研究泛化性能差異的方法拓展至 DNN 領域,從而使泛化性能差異的理論上限得到了高度優(yōu)化,但此方式并未能顯著提高泛化模型的預測能力。
注:理論上限 鏈接
支持向量機決策邊界示例。w?x-b=0 定義的超平面是此線性分類器的“決策邊界”,即在該線性分類器下,超平面上的每個點 x 在任一類中的可能性相等。
在 ICLR 2019 論文《使用邊緣分布預測深度網(wǎng)絡的泛化性能差異》(Predicting the Generalization Gap in Deep Networks with Margin Distributions) 中,我們提議在各層網(wǎng)絡上使用標準化的邊緣分布 (Normalized Margin Distribution) 來預測泛化性能差異。
我們通過實踐研究了邊緣分布與泛化之間的關系,最終發(fā)現(xiàn)在對距離進行適當標準化 (Normalization) 后,邊緣分布的一些基本數(shù)據(jù)可以準確預測泛化性能差異。此外,我們還通過 GitHub 代碼庫將所有模型作為數(shù)據(jù)集公開發(fā)布,以便您進行泛化研究。
每張圖均對應一個基于 CIFAR-10 訓練的卷積神經(jīng)網(wǎng)絡(分類準確率各不相同)。三個模型各有差異,從左至右,泛化能力逐漸增強。其中,x 軸表示 4 個層的神經(jīng)網(wǎng)絡標準化邊緣分布,y 軸表示此分布的概率密度。標準化的邊緣分布與測試準確率密切相關,這表明我們可以將此類分布用作預測網(wǎng)絡 Generalization Gap(泛化性能差異)的指標。如需了解這些神經(jīng)網(wǎng)絡的更多詳情,請參閱我們的論文。
邊緣分布作為泛化性能差異的預測指標
如果邊緣分布統(tǒng)計數(shù)據(jù)可以真實預測泛化性能差異,那么簡單的預測方案應能建立起二者的關系。
因此,我們選擇使用線性回歸作為預測指標。我們發(fā)現(xiàn),在對邊緣分布統(tǒng)計數(shù)據(jù)進行對數(shù)轉換后,轉換后的數(shù)據(jù)與 泛化性能差異之間幾乎完全呈線性關系(參見下圖)。事實上,相較于其他現(xiàn)有的泛化測量方法,我們提出的方案可提供更準確的預測。這表明,邊緣分布可能包含與深度模型泛化性能差異相關的重要信息。
基于 CIFAR-100 和 ResNet-32 得出的 Generalization Gap 預測值(x 軸)與實際值(y 軸)關系圖。數(shù)據(jù)點的分布趨近于貼近對角線,這表明該對數(shù)線性模型的預測值非常符合實際的 Generalization Gap 水平。
深度模型泛化數(shù)據(jù)集
除論文之外,我們還介紹了深度模型泛化 (DEMOGEN) 數(shù)據(jù)集。該數(shù)據(jù)集包含 756 個經(jīng)過訓練的深度模型,以及這些深度模型在 CIFAR-10 和 CIFAR-100 數(shù)據(jù)集上的訓練與及測試表現(xiàn)。這些模型均為 CNN(所用架構類似于“網(wǎng)絡中的網(wǎng)絡”(Network-in-Network))和 ResNet-32 的變體,它們采用當下流行的各類正則化技術和超參數(shù)設置,因而也產(chǎn)生了廣泛的泛化行為。
例如,基于 CIFAR-10 訓練的 CNN 模型的測試準確率在 60% 至 90.5% 之間,泛化性能差異率則介于 1% 至 35% 之間。如需了解數(shù)據(jù)集詳情,請查看我們的論文或 GitHub 代碼庫。發(fā)布數(shù)據(jù)集時,我們還為其添加了許多實用程序,以便您能夠輕松加載模型,并重現(xiàn)論文中所展示的結果。
我們希望本次研究和 DEMOGEN 數(shù)據(jù)集能為社區(qū)提供便利工具,讓社區(qū)成員無需重新訓練大量模型,即可研究深度學習領域的泛化問題而提供便利工具。同時,我們也希望本次研究成果能夠提供助力,以幫助我們日后對隱藏層中的泛化性能差異預測指標和邊緣分布進行更加深入的研究。
-
神經(jīng)網(wǎng)絡
+關注
關注
42文章
4814瀏覽量
103800 -
機器學習
+關注
關注
66文章
8506瀏覽量
134723
原文標題:預測深度神經(jīng)網(wǎng)絡泛化性能差異
文章出處:【微信號:tensorflowers,微信公眾號:Tensorflowers】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
無刷電機小波神經(jīng)網(wǎng)絡轉子位置檢測方法的研究
使用BP神經(jīng)網(wǎng)絡進行時間序列預測
BP神經(jīng)網(wǎng)絡與卷積神經(jīng)網(wǎng)絡的比較
BP神經(jīng)網(wǎng)絡的優(yōu)缺點分析
什么是BP神經(jīng)網(wǎng)絡的反向傳播算法
BP神經(jīng)網(wǎng)絡與深度學習的關系
深度學習入門:簡單神經(jīng)網(wǎng)絡的構建與實現(xiàn)
人工神經(jīng)網(wǎng)絡的原理和多種神經(jīng)網(wǎng)絡架構方法

卷積神經(jīng)網(wǎng)絡的實現(xiàn)工具與框架
卷積神經(jīng)網(wǎng)絡與傳統(tǒng)神經(jīng)網(wǎng)絡的比較
深度學習中的卷積神經(jīng)網(wǎng)絡模型
RNN模型與傳統(tǒng)神經(jīng)網(wǎng)絡的區(qū)別
LSTM神經(jīng)網(wǎng)絡與傳統(tǒng)RNN的區(qū)別
LSTM神經(jīng)網(wǎng)絡在時間序列預測中的應用
Moku人工神經(jīng)網(wǎng)絡101

評論