Yang (2020a)最近指出,神經切線核(NTK)在初始化時具有無限寬的限制,適用于許多架構,包括現代的主要架構,如ResNet和Transformer。然而,他們的分析并不適用于訓練。在這里,我們展示了同樣的神經網絡(在所謂的NTK參數化中)在訓練過程中遵循函數空間中的核梯度下降動力學,其中核是無限寬NTK。這就完成了NTK行為體系結構通用性的證明。為了得到這個結果,我們運用張量程序技術:在一個張量程序中編寫整個SGD動態,并通過主定理分析它。為了便于證明,我們開發了一個張量程序的圖形符號。
雖然許多現有的圖神經網絡(gnn)已被證明可以執行基于?2的圖平滑,從而增強全局平滑,但在本工作中,我們旨在通過基于?1的圖平滑進一步增強GNN的局部平滑自適應。在此基礎上,提出了一種基于?1和?2圖平滑的彈性GNN。特別地,我們提出了一種新的、通用的消息傳遞方案。該消息傳遞算法不僅有利于反向傳播訓練,而且在保證理論收斂的前提下達到了預期的平滑特性。在半監督學習任務上的實驗表明,所提出的彈性GNN在基準數據集上具有較好的自適應能力,對圖對抗攻擊具有顯著的魯棒性。
基于注意力的神經網絡已經在許多任務上取得了最先進的成果。這類模型大多采用確定性注意力,而隨機注意力由于優化困難或模型設計復雜,研究較少。本文介紹了貝葉斯注意力信念網絡,該網絡通過將非歸一化的注意力權值建立在伽馬分布的層次上來構造解碼器網絡,通過將具有確定性-向上-隨機-向下結構的Weibull分布疊加來近似后變分布來構造編碼器網絡。所得到的自編碼網絡可以以一種變分下界的可微方式進行優化。任何具有確定性注意力的模型,包括預訓練過的模型,都可以簡單地轉換為所提出的貝葉斯注意力信念網絡。在各種語言理解任務中,我們證明了我們的方法在準確性、不確定性估計、跨域泛化和對抗攻擊的魯棒性方面優于確定性注意和最新的隨機注意力。我們進一步證明了該方法在神經機器翻譯和視覺問答方面的普遍適用性,顯示了將該方法整合到各種注意力相關任務中的巨大潛力。
殘差網絡(ResNets)在模式識別方面顯示了令人印象深刻的結果,最近,由于與神經常微分方程(neural ODEs)的感知聯系,獲得了相當大的理論興趣。隨著層數的增加,這條鏈路依賴于網絡權值的收斂到平滑的函數。我們通過詳細的數值實驗研究了隨機梯度下降訓練權值的性質,以及它們隨網絡深度的變換。我們觀察到有明顯不同于神經ODE文獻中假設的標度區存在。根據網絡結構的某些特征,如激活函數的光滑性,人們可以得到另一個ODE極限,一個隨機微分方程或兩者都不能。這些發現對神經ODE模型作為深度ResNets的充分漸近描述的有效性提出了質疑,并指出了另一類微分方程作為深度網絡極限的更好描述。
促進行為多樣性對于解決具有非傳遞性的動態博弈至關重要,因為這些博弈的策略存在周期性,而且沒有一致的贏家(例如,剪刀石頭布)。然而,在定義多樣性和構建具有多樣性意識的學習動態方面缺乏嚴格的處理。這項工作提供了游戲中行為多樣性的幾何解釋,并引入了一種基于決定點過程(DPP)的新的多樣性度量。通過將多樣性度量納入最佳響應動態,我們開發了多樣化的策略空間響應機制,用于解決正常形式的博弈和開放式博弈。我們證明了不同最佳響應的唯一性和我們算法在兩人博弈上的收斂性。重要的是,我們證明了最大化基于DPP的多樣性度量保證了擴大由代理策略混合跨越的凸多面體。為了驗證我們的多樣性感知求解器,我們在數十個顯示出強非傳遞性的博弈上進行了測試。結果表明,通過找到有效和多樣化的策略,可以實現比最先進的求解器更低的可利用性。
圖神經網絡(GNN)中缺乏各向異性核極大地限制了其表達能力,導致了一些眾所周知的問題,如過度平滑。為了克服這個限制,我們提出了第一個全局一致的各向異性核GNN,允許根據拓撲導出的方向流定義圖卷積。首先,通過在圖中定義矢量場,我們提出了一種方法應用方向導數和平滑投影節點特定的信息到場。然后,我們提出用拉普拉斯特征向量作為這種向量場。在Weisfeiler-Lehman 1-WL檢驗方面,我們證明了該方法可以在n維網格上泛化CNN,并證明比標準的GNN更有分辨力。我們在不同的標準基準上評估了我們的方法,發現在CIFAR10圖數據集上相對誤差減少了8%,在分子鋅數據集上相對誤差減少了11%到32%,在MolPCBA數據集上相對精度提高了1.6%。這項工作的重要成果是,它使圖網能夠以一種無監督的方式嵌入方向,從而能夠更好地表示不同物理或生物問題中的各向異性特征。
自訓練算法訓練模型以適應另一個先前學習的模型預測的偽標簽,對于使用神經網絡對未標記的數據進行學習非常成功。但是,當前對自訓練的理論理解僅適用于線性模型。這項工作為半監督學習,無監督領域適應和無監督學習提供了深度網絡自訓練的統一理論分析。我們分析的核心是一個簡單但現實的“擴展”假設,該假設指出,數據的低概率子集必須擴展到相對于子集而言具有較大概率的鄰域。我們還假設不同類別中的示例鄰域具有最小的重疊。我們證明在這些假設下,基于自訓練和輸入一致性正則化的人口目標最小化方法將在地面真相標簽方面實現高精度。通過使用現成的泛化邊界,我們立即將此結果轉換為在邊際和Lipschitzness中為多項式的神經網絡的樣本復雜度保證。我們的結果有助于解釋最近提出的使用輸入一致性正則化的自訓練算法的經驗成功。
//www.zhuanzhi.ai/paper/dd480967a4fbca4c6cc92
在過去的十年里,神經網絡在視覺、語音、語言理解、醫學、機器人和游戲等領域取得了驚人的成果。人們原本以為,這種成功需要克服理論上存在的重大障礙。畢竟,深度學習優化是非凸的、高度非線性的、高維的,那么我們為什么能夠訓練這些網絡呢?在許多情況下,它們擁有的參數遠遠多于記憶數據所需的參數,那么為什么它們能夠很好地推廣呢?盡管這些主題已經占據了機器學習研究領域的大部分注意力,但當涉及到更簡單的模型時,神經網絡領域的原則是先數據訓練再說。顯然,這招奏效了。
//www.cs.toronto.edu/~rgrosse/courses/csc2541_2021/
結果,神經網絡的實際成功已經超過了我們理解它們如何工作的能力。這門課是關于開發概念工具來理解當神經網絡訓練時會發生什么。其中一些思想早在幾十年前就已經形成了(可能已經被社區的大部分人遺忘了),而另一些思想今天才剛剛開始被理解。我將試圖傳達我們最好的現代理解,盡管它可能不完整。
這門課從優化中汲取靈感,它不是一門優化課。一方面,優化的研究通常是指令性的,從優化問題的信息和明確定義的目標(如在特定規范下快速收斂)開始,并找出保證實現該目標的計劃。對于現代神經網絡來說,分析通常是描述性的: 采用在使用的程序,并找出它們(似乎)有效的原因。希望這種理解能讓我們改進算法。
與優化研究的另一個區別是,目標不是簡單地擬合一個有限的訓練集,而是一般化。盡管神經網絡有巨大的能力,但為什么它能泛化與訓練的動態密切相關。因此,如果我們從優化中引入一個想法,我們不僅需要考慮它是否會更快地最小化成本函數,還需要考慮它是否以一種有利于泛化的方式實現。
這類應用不會為您提供在ImageNet上實現最先進性能的方法。它也不是那種為了證明定理而去證明定理的理論課。相反,我們的目的是為您提供概念性工具,以便您在任何特定情況下推斷出影響訓練的因素。
除了讓你的網絡更好地訓練之外,學習神經網絡訓練動力學的另一個重要原因是,許多現代架構本身就足夠強大,可以進行優化。這可能是因為我們在體系結構中明確地構建了優化,就像在MAML或深度均衡模型中那樣。或者,我們可能只是在大量數據上訓練一個靈活的架構,然后發現它具有驚人的推理能力,就像GPT3一樣。不管怎樣,如果網絡架構本身在優化某些東西,那么外部訓練過程就會與本課程中討論的問題糾纏在一起,不管我們喜歡與否。為了有希望理解它提出的解決方案,我們需要理解問題。因此,本課程將以雙層優化結束,利用課程中涵蓋的所有內容。
目錄內容:
我們將通過分析一個簡單的模型開始這門課,梯度下降動力學可以被精確地確定:線性回歸。盡管線性回歸很簡單,但它提供了對神經網絡訓練驚人的洞察力。我們將使用線性回歸來理解兩種神經網絡訓練現象: 為什么對輸入進行歸一化是一個好策略,以及增加維度可以減少過擬合。
線性化是我們理解非線性系統最重要的工具之一。我們將涵蓋神經網絡的一階泰勒近似(梯度,方向導數)和二階近似(Hessian)。我們將看到如何用雅可比向量乘積有效地計算它們。我們將使用Hessian診斷緩慢收斂和解釋網絡預測。
度量給出了流形上距離的一個局部概念。在許多情況下,兩個神經網絡之間的距離可以更有效地定義為它們所代表的函數之間的距離,而不是權重向量之間的距離。這就引出了一個重要的優化工具,叫做自然梯度。
我們從幾個角度來激勵神經網絡的二階優化:最小化二階泰勒近似、預處理、不變性和近端優化。我們將看到如何使用共軛梯度或克羅內克因子近似來近似二階更新。
我們看看已經成為神經網絡訓練的主要內容的三個算法特征。我們試圖理解它們對動力學的影響,并找出構建深度學習系統的一些陷阱。
涵蓋人工智能技術常用的經典算法和使用Pharo編寫敏捷人工智能應用程序。本書采用了一種實用的方法,通過介紹實現細節來說明它解釋的眾多概念。
在此過程中,您將學習神經網絡的基本原理,為您設置實際示例,如旅行推銷員問題,并涵蓋遺傳算法,包括一個有趣的動物形生物示例。此外,帶有Pharo的實用敏捷AI還提供了一個數據分類應用程序和兩個游戲應用程序,包括一個類似于pong的游戲和一個類似于Flappy bird的游戲。這本書內容豐富且有趣,提供了源代碼供您使用。您可以將此源代碼應用到自己的項目中。
你將學到什么
這本書是給誰的
有經驗的程序員和數據科學家,至少有一些人工智能或深度學習經驗。他們可能是Pharo編程的新手,但是有一些以前的經驗會很有幫助。
使用高級架構開發和優化深度學習模型。這本書教你錯綜復雜的細節和微妙的算法,是卷積神經網絡的核心。在高級應用深度學習中,您將學習CNN的高級主題和使用Keras和TensorFlow的對象檢測。
在此過程中,您將了解CNN中的基本操作,如卷積和池化,然后了解更高級的架構,如inception networks、resnets等等。當這本書討論理論主題時,你會發現如何有效地與Keras工作,其中有許多技巧和提示,包括如何用自定義回調類自定義Keras登錄,什么是迫切執行,以及如何在你的模型中使用它。最后,您將學習對象檢測是如何工作的,并在Keras和TensorFlow中構建YOLO(只查看一次)算法的完整實現。在書的最后,你將實現各種各樣的模型在Keras和學習許多高級技巧,將把你的技能到下一個水平。
你將學到什么
這本書是給誰的