Generalization 專題 — Stronger generalization bounds for deep nets via a compression approach

這是一篇 2018 年初由 Neyshabur、Arora 等人發表的文章。初看覺得是一篇很突然就冒出的作品,但其實累積了前面許多文章的點子,不過他們非常巧妙的運用,而使得這篇文章無論結果、還是給予的理論上的觀點都十分令人驚喜。論文本文有十分多數學上的定義、推導等等,這篇文章希望給予一些高觀點的理解,幫助體會這個作品神奇的地方。

繼續閱讀 “Generalization 專題 — Stronger generalization bounds for deep nets via a compression approach"

Generalization in deep learning (2)

這篇延續上一篇『Generalization in Deep learning (1)』的內容。在『Understanding deep learning requires rethinking generalization』發表之後,引發了許許多多的後續研究,試圖提出新的解釋方法、或是用其他實驗說明原本的解釋已經不夠了,最明顯的一個例子是,人們相信『可調參數總量』(number of parameters)已經不是決定 capacity 的因素了,又或者是上一篇討論的一些 data-independent 的解釋也同樣不再行得通。

2017 年,Neyshabur 等人發表另一篇論文『Exploring Generalization in Deep Learning』,在這篇文章中,他們把關注的焦點放在幾個在 2015 年後被廣泛討論、提出的解釋,想看看這些是否可行。要注意的是,一個「合格」的方法,必須可以解釋目前實驗上的許多大哉問,像是

  • 如『Generalization in Deep learning (1)』中的實驗,同一個模型有可能可以讓真正的資料以及完全隨機的資料都有 0 training error,但是前者可以 generalize 、後者則不行。也就是說,之後新定義的方法,他的複雜度(complexity)應該會是跟資料有關的(data-dependent),在真正的資料上測起來比較小,而隨機資料上測起來比較大。
  • 增加 neural network 的 hidden units(或是說增加參數量)會讓 generalization gap 變小。這件事用以前的測量方法肯定是無法解釋的,因為以前我們都認為參數量越多,函數的『可變化量』就越高,因此 capacity 就越高,不管用 VC-dimension 還是 number of parameters 等等都是相同的結果。因此新的方法大概不能再用同樣的思維,而是要好好分析到底是 network 的深度呢?還是其他什麼因素決定了 complexity。
  • 用不同的演算法,儘管都可能可以得到 0 training error,但是卻可能有不同 generalization gap,也就是說有些方法似乎可以避開不好的極值,而有些不行,這個問題也是需要被認真探討。

本篇主要為三大類:「norms and margin-based」、「sharpness」、「PAC-Bayes」,接下來我們逐一看看這些分別有什麼好處以及問題。

繼續閱讀 “Generalization in deep learning (2)"

Generalization 專題 — PAC-Bayes bound

『機器學習可行嗎』的一些文章有提到,我們可以透過對 hypothesis class \mathcal{H} 的一些合理的測量(例如 union bound、VC-dimension),來對我們學到的 hypothesis h_S 的 generalization gap 有一些估計。但是如果現在我們面對的是非常複雜的 hypothesis class,像是整個 neural network 可能產生的參數的所有不同組合,很有可能有許多組參數都對同一組訓練資料有很好的表現,那麼可能會希望對這些不同的參數都納入評估,而不是只挑選其中一個去衡量。

做綜合性的評估一個很直接的方法就是計算期望值,也就是如果整個 \mathcal{H} 中有 10 組不同的參數,演算法在看了訓練資料後,分別給這 10 組參數不同的機率 \mathcal{Q} over \mathcal{H},這時可以定義訓練錯誤率其實是這 10 組的訓練錯誤率的期望值,\mathbb{E}_{w\sim Q}[L_S(w)],而真實錯誤率則是 \mathbb{E}_{w\sim Q}[L_D(w)]

繼續閱讀 “Generalization 專題 — PAC-Bayes bound"

Data-dependent PAC-Bayes priors via differential privacy 小記

這是一篇 2018 年的論文,出發點是希望改進原本 PAC-Bayes 的結果,使得以往對所有分布 \mathcal{P} 都對的定理,特別專注在那些『好的 \mathcal{P}』。

所以這篇會先從最原始的 PAC-Bayes 的定理開始,還有定義什麼是 differential privacy 。當這些名詞都確認沒問題之後,才會開始有更多的討論,包括為什麼要使用這麼麻煩的定理,以及說明如何得到『data-dependent』的好的 \mathcal{P} ,最後討論有沒有可能有好的演算法。

繼續閱讀 “Data-dependent PAC-Bayes priors via differential privacy 小記"

Generalization in Deep learning (1)

前言

以前大家無論是直觀上、還是對一些簡單模型的證明上,都認為當一個模型的可調參數越多,那麼它就越容易 overfit,尤其是當可調參數量遠超過訓練資料量﹝over-parametrized﹞時,overfitting 幾乎難以避免。但是很神奇的是,現在的 neural network 往往超級大,over-parametrized 的狀況幾乎是必然的,不過卻仍然有不錯的普遍化﹝generalization﹞性質。

如果只有部分實驗結果如此,那說不定這種現象只是機率問題,或者跟初始狀態有關等等,但當大部分的模型訓練出來都有這樣的結果時,會讓我們不禁想:究竟是什麼原因讓機器更樂意去學東西而不是只是背下來呢?機器竟然傾向學習規律,而且現在採用的模型似乎足夠描述這種規律,這是何等其妙的事情。而這個問題在深度學習已經被大量運用在實務上的現在來說,仍然是個大哉問,我們希望盡快地能夠回答這個問題,以幫助在實際建構模型時有更多的依據。

繼續閱讀 “Generalization in Deep learning (1)"