Taiwan’s pioneering and highest deep learning meetup, launched on 2016/11/11 @ 83F, Taipei 101
AI是一條孤獨且充滿惶恐及未知的旅程,花俏絢麗的收費課程或活動絕非通往成功的捷徑。
衷心感謝當時來自不同單位的AI同好參與者實名分享的寶貴經驗;如欲移除資訊還請告知。
由 TonTon Huang Ph.D. 發起,及其當時任職公司(台灣雪豹科技)無償贊助場地及茶水點心。
去 YouTube 訂閱 | Facebook | 回 GitHub Pages | 到 GitHub 點星 | 網站 | 到 Hugging Face Space 按愛心
2018/05/11, Mark Chang, Towards Principled Methods for Training Generative Adversarial Networks
首先,讓我們從集合的「大小」概念談起。雖然我們無法用數「個數」的方式來比較所有無限集合的大小,但我們可以藉由與自然數集合(正整數集合 $\mathbb{N} = \{1, 2, 3, ...\}$)建立一對一對應(one-to-one correspondence)關係來區分無限集合。
那麼,什麼集合是不可數的呢?最經典的例子就是實數集合(Real Numbers, $\mathbb{R}$)。實數包含有理數和無理數(如$\pi$, $\sqrt{2}$等)。無理數的存在使得整個實數集合變成了不可數的。
證明實數不可數的著名方法是康托爾對角線法(Cantor's Diagonalization Argument),這是一個美麗的反證法:
既然我們知道有些無限集合(如實數)是不可數的,這就引出了一些有趣的數學問題。考慮一條長度為1的線段,它可以被看作由不可數個點組成。如果我們將這條線段「分解」成構成它的所有點,然後再用這些點重新「組合」,直觀上似乎只能組合成總長度為1的東西。但如果沒有嚴謹的數學工具,理論上可能會推導出從長度為1的線段分解出的點,可以重組成兩條長度都為1的線段,這顯然違背直覺。
一個測度函數 M 是一個從 $\Sigma$ 到非負實數(或 $+\infty$)的函數,它必須滿足以下三個基本條件:
測度零是指一個集合的測度為零。這並不意味著集合一定是空的或只有有限個點。
這引出了一個重要的定理:在一個 X 維空間中,可數個數的 G 維流形(G-dimensional manifold)的聯集,如果 G < X,那麼這個聯集在 X 維空間中的測度為零。例如,在三維空間中,可數無限個平面的總體積為零。這個定理對於理解後續神經網絡的特性至關重要。
在數學和物理學中,流形是一個重要的概念,它概括了曲線、曲面等幾何對象的性質。
值得一提的是,存在一些特殊的連續函數,例如皮亞諾曲線(Peano curve),它可以將一維的線段連續地映射到二維的平面上,似乎「填充」了二維空間。這類曲線稱為空間填充曲線(Space-Filling Curve)。然而,空間填充曲線不是同胚。雖然它們是連續的,但它們通常不是一對一的(一個點可能被映射到多個位置,或者反函數不連續),因此不滿足同胚的要求,也不會是微分同胚。這是理解後續神經網絡定理的關鍵區別。
現在,我們將上述概念應用到神經網絡,特別是生成對抗網絡(GAN)中的生成器(Generator, G)。GAN的生成器通常將一個低維度的潛在空間(latent space,通常被認為是一個流形)映射到高維度的數據空間,以產生逼真的數據(如圖像)。
一個核心的數學定理(在來源中有詳細證明)指出:一個神經網絡的生成器(Generator)不會將一個 D 維度的流形轉換到一個維度超過 D 的流形。換句話說,神經網絡層的運算最多維持輸入流形的維度,或者降低維度,但不會增加維度。神經網絡的結構保證了它不會是像空間填充曲線那樣可以增加維度的映射。
這個定理的證明是基於分析神經網絡的各個基本組成部分:
綜合來看,由於神經網絡的每個組成部分(線性變換、激活函數)都不會增加輸入流形的維度,整個神經網絡(作為這些層的堆疊)也不會將一個低維的輸入流形轉換成一個更高維度的流形。生成器將潛在空間(一個低維流形)映射到數據空間,其輸出仍然是一個維度不高於潛在空間維度的流形。
這個「維度不增加定理」被用來解釋 GAN 可能面臨的訓練挑戰,尤其是模式崩潰(Mode Collapse)問題。
論文的核心論點之一是,如果生成器 G 是一個神經網絡,它將低維的潛在空間映射到高維的數據空間。根據上述定理,生成器輸出的數據(理論上)會分佈在一個維度不高於潛在空間維度的流形上。
問題在於,真實世界的數據分佈可能居住在一個複雜的、可能維度更高(或至少佔據數據空間中一個測度非零的區域)的流形上。如果生成器輸出的流形維度低於數據空間維度,那麼根據測度零定理,生成數據的分佈在數據空間中的測度極可能為零。
這樣一來,生成數據的分佈與真實數據的分佈在測度意義上可能幾乎沒有交集(或者交集的測度為零)。
如果生成數據和真實數據的分佈在測度上是分離的(交集測度為零),那麼理論上存在一個完美的判別器(Perfect Discriminator),能夠將生成數據和真實數據完全區分開來。因為測度零的集合在測度上是「小」的,一個完美的判別器可以簡單地忽略那些測度為零的區域,從而完美地將生成數據分類為假,真實數據分類為真。
在 GAN 的對抗訓練框架下,如果判別器變得完美,它的梯度會指向一個方向,告訴生成器需要大幅改變才能騙過判別器。這可能導致訓練不穩定,生成器難以找到真實數據分佈的完整映射,最終可能只集中生成真實數據分佈中的一小部分模式,這就是模式崩潰。
然而,這個論點也存在一些討論和潛在的局限性。來源中也提到了質疑的聲音:
總體而言,這個定理提供了一個從數學分析(拓撲學、測度論)角度理解 GAN 潛在困難的理論框架,特別是解釋了生成數據可能無法「覆蓋」真實數據分佈的原因。但也需要結合統計學和機器學習模型的有限能力來全面理解實際 GAN 訓練中的現象。
回顧一下,我們從集合的可數性與不可數性開始,了解了如何區分不同大小的無限集合,特別是實數的不可數性及其證明(康托爾對角線法)。接著,我們引入了測度的概念,它為集合賦予了嚴謹的「大小」,並透過測度零的概念理解了低維集合在高維空間中的「體積」。這些工具幫助我們理解了流形及其維度,以及同胚和微分同胚如何保持維度。最後,我們將這些知識應用到神經網絡,看到了神經網絡(作為流形映射)的維度不增加定理,並探討了這個定理如何解釋 GAN 在生成與真實數據分佈上的潛在分離,以及由此可能導致的訓練挑戰,同時也認識到現實世界中判別器的局限性對此理論的影響。
對於初學者,掌握可數性與不可數性的區別、測度的基本概念(特別是測度零)以及流形的直觀認識,是理解更深入數學分析和相關機器學習理論的基礎。希望這次的探討能為您提供一個清晰的入門視角。