Neuralt nätverk Gaussisk process
Bayesianska nätverk är ett modelleringsverktyg för att tilldela sannolikheter till händelser, och därigenom karakterisera osäkerheten i en modells förutsägelser. Deep learning och artificiella neurala nätverk är metoder som används i maskininlärning för att bygga beräkningsmodeller som lär sig av träningsexempel. Bayesianska neurala nätverk sammanfogar dessa fält. De är en typ av konstgjorda neurala nätverk vars parametrar och förutsägelser båda är sannolikhet. Medan vanliga artificiella neurala nätverk ofta tilldelar hög konfidens även till felaktiga förutsägelser, kan Bayesianska neurala nätverk mer exakt utvärdera hur sannolikt deras förutsägelser är korrekta.
Neural Network Gaussian Processer (NNGP) är likvärdiga med Bayesianska neurala nätverk inom en viss gräns och ger ett slutet sätt att utvärdera Bayesianska neurala nätverk. De är en Gaussisk processsannolikhetsfördelning som beskriver fördelningen över förutsägelser gjorda av motsvarande Bayesianska neurala nätverk. Beräkning i artificiella neurala nätverk är vanligtvis organiserade i sekventiella lager av artificiella neuroner . Antalet neuroner i ett lager kallas lagerbredden. Ekvivalensen mellan NNGP:er och Bayesianska neurala nätverk uppstår när lagren i ett Bayesianskt neuralt nätverk blir oändligt breda (se figur). Denna stora breddgräns är av praktiskt intresse, eftersom neurala nätverk med ändlig bredd vanligtvis presterar strikt bättre när skiktbredden ökas.
NNGP förekommer också i flera andra sammanhang: den beskriver fördelningen över förutsägelser gjorda av breda icke-bayesianska artificiella neurala nätverk efter slumpmässig initialisering av deras parametrar, men före träning; det förekommer som en term i neurala tangentkärnans prediktionsekvationer; det används i djup informationsspridning för att karakterisera huruvida hyperparametrar och arkitekturer kommer att kunna tränas. Det är relaterat till andra stora breddgränser för neurala nätverk .
En tecknad illustration
Varje inställning av ett neuralt nätverks parametrar motsvarar en specifik funktion som beräknas av det neurala nätverket. En tidigare fördelning över neurala nätverksparametrar motsvarar därför en tidigare fördelning över funktioner som beräknas av nätverket. Eftersom neurala nätverk görs oändligt breda, konvergerar denna fördelning över funktioner till en Gauss-process för många arkitekturer.
Figuren till höger plottar de endimensionella utsignalerna från ett neuralt nätverk för två ingångar och mot varandra. De svarta prickarna visar funktionen som beräknas av det neurala nätverket på dessa ingångar för slumpmässiga dragningar av parametrarna från . De röda linjerna är iso-sannolikhetskonturer för den gemensamma fördelningen över nätverksutgångarna och inducerad av . Detta är fördelningen i funktionsutrymme som motsvarar fördelningen i parameterrymden, och de svarta prickarna är exempel från denna fördelning. För oändligt breda neurala nätverk, eftersom fördelningen över funktioner som beräknas av det neurala nätverket är en Gauss-process, är den gemensamma fördelningen över nätverksutgångar en multivariat Gauss-nivå för vilken ändlig uppsättning nätverksingångar som helst.
Notationen som används i det här avsnittet är densamma som notationen som används nedan för att härleda överensstämmelsen mellan NNGP:er och fullt anslutna nätverk, och mer information kan hittas där.
Arkitekturer som motsvarar en NNGP
Ekvivalensen mellan oändligt breda Bayesianska neurala nätverk och NNGP:er har visat sig hålla för: ett enda dolt lager och djupt helt anslutna nätverk eftersom antalet enheter per lager tas till oändlighet; konvolutionella neurala nätverk när antalet kanaler tas till oändlighet; transformatornätverk eftersom antalet uppmärksamhetshuvuden tas till oändlighet; återkommande nätverk när antalet enheter tas till oändlighet. Faktum är att denna NNGP-överensstämmelse gäller för nästan vilken arkitektur som helst: I allmänhet, om en arkitektur kan uttryckas enbart via matrismultiplikation och koordinatmässiga olinjäriteter (dvs ett tensorprogram), så har den en oändlig bredd GP. Detta inkluderar i synnerhet alla framkopplade eller återkommande neurala nätverk som består av flerskiktsperceptron, återkommande neurala nätverk (t.ex. LSTM , GRUs ), (nD eller graf) faltning , pooling, hoppa över anslutning, uppmärksamhet, batchnormalisering och/eller lagernormalisering.
Överensstämmelse mellan ett oändligt brett fullt uppkopplat nätverk och en gaussisk process
Detta avsnitt expanderar på överensstämmelsen mellan oändligt breda neurala nätverk och Gaussiska processer för det specifika fallet med en helt uppkopplad arkitektur. Den ger en bevisskiss som beskriver varför korrespondensen håller, och introducerar den specifika funktionella formen av NNGP för fullt anslutna nätverk. Bevisskissen följer nära tillvägagångssättet i Novak, et al., 2018 .
Nätverksarkitekturspecifikation
Betrakta ett fullt anslutet artificiellt neuralt nätverk med ingångar , parametrar bestående av vikter och bias för varje lager i nätverket, föraktiveringar (pre-olinjäritet) , aktiveringar (post-olinjäritet) y , punktvis olinjäritet och lagerbredder . För enkelhetens skull antas bredden för avläsningsvektorn vara 1. Parametrarna för detta nätverk har en tidigare fördelning , som består av en isotrop Gauss för varje vikt och bias, med variansen av vikterna skalad omvänt med lagerbredden. Detta nätverk illustreras i figuren till höger och beskrivs av följande uppsättning ekvationer:
är en gaussisk process
Vi observerar först att föraktiveringarna beskrivs av en Gauss-process betingad av de föregående aktiveringarna y . Detta resultat håller även vid ändlig bredd. Varje föraktivering är en viktad summa av gaussiska slumpvariabler, motsvarande vikterna och förspänningar , där koefficienterna för var och en av dessa Gaussvariabler är de föregående aktiveringarna . Eftersom de är en viktad summa av nollmedelsgaussianer, i sig nollmedelsgaussianer (betingat av koefficienterna ). Eftersom gemensamt är Gaussiska för vilken som helst uppsättning av , beskrivs de av en Gaussisk process betingad av de föregående aktiveringarna y . Kovariansen eller kärnan för denna Gaussprocess beror på vikt- och biasvarianserna och , såväl som den andra momentmatrisen av de föregående aktiveringarna ,
Effekten av viktskalan är att skala om bidraget till kovariansmatrisen från , medan förspänningen är delad för alla ingångar, och så gör för olika datapunkter mer lika och gör kovariansmatrisen mer som en konstant matris.
är en gaussisk process
Föraktiveringarna beror bara på genom dess andra momentmatris . På grund av detta kan vi säga att är en gaussisk process betingad av , snarare än betingad av ,
Eftersom lagerbredden , blir deterministisk
Som tidigare definierats är den andra momentmatrisen för . Eftersom är aktiveringsvektorn efter att ha tillämpat olinjäriteten kan den ersättas med , vilket resulterar i en modifierad ekvation som uttrycker för i termer av ,
Vi har redan bestämt att är en gaussisk process. Detta betyder att summan som definierar är ett medelvärde över sampel från en Gauss-process som är en funktion av ,
Eftersom lagerbredden går till oändlighet, kan detta medelvärde över sampel från Gauss-processen ersättas med en integral över Gauss-processen:
Så i den oändliga breddgränsen kan den andra momentmatrisen för varje par av ingångar och uttryckas som en integral över en 2d Gauss, av produkten av och . Det finns ett antal situationer där detta har lösts analytiskt, till exempel när är en ReLU , ELU, GELU eller felfunktion olinjäritet. Även när det inte kan lösas analytiskt, eftersom det är en 2d-integral, kan det generellt sett effektivt beräknas numeriskt. Denna integral är deterministisk, så är deterministisk.
Som stenografi definierar vi en funktionell , som motsvarar att beräkna denna 2d-integral för alla par av ingångar, och som mappar till ,
är en NNGP
Genom att rekursivt tillämpa observationen att är deterministisk som , kan skrivas som en deterministisk funktion av ,
där indikerar att den funktionella sekventiellt gånger. Genom att kombinera detta uttryck med de ytterligare observationerna att inmatningsskiktets andra momentmatris är en deterministisk funktion av ingången , och att är en Gauss-process, utsignalen från det neurala nätverket kan uttryckas som en Gauss-process i termer av dess input,
Programvarubibliotek
Neural Tangents är ett gratis Python -bibliotek med öppen källkod som används för att beräkna och göra slutsatser med NNGP och neural tangentkärnan som motsvarar olika vanliga ANN-arkitekturer.