Jag är väldigt sen till spelet, men jag ville posta för att återspegla en viss aktuell utveckling i favörliga neurala nätverk med avseende på hoppa över anslutningar .
Ett Microsoft Research-team vann nyligen tävlingen ImageNet 2015 och släppte en teknisk rapport Deep Residual Learning for Image Recognition som beskriver några av deras huvudidéer.
Ett av deras huvudsakliga bidrag är detta begrepp med djupa kvarvarande lager . Dessa djupa kvarvarande lager använder hoppa över anslutningar . Med hjälp av dessa djupa kvarvarande lager kunde de träna ett 152-lagers konv. Nät för ImageNet 2015. De utbildade till och med ett 1000+ lager konv. Nät för CIFAR-10.
Problemet som motiverade dem är följande :
När djupare nätverk kan börja konvergera har ett problem med nedbrytning exponerats: när nätverksdjupet ökar blir noggrannheten mättad (vilket kan vara överraskande) och försämras sedan snabbt. Oväntat orsakas sådan nedbrytning inte av överanpassning , och att lägga till fler lager till en lämplig djup modell leder till högre träningsfel ...
Tanken är att om du tar ett "grunt" nätverk och bara staplar på fler lager för att skapa ett djupare nätverk, bör resultatet av det djupare nätverket vara minst lika bra som det grunda nätverket som det djupare nätverket kan lära sig exakt grunt nätverk genom att ställa in de nya staplade lagren till identitetslager (i själva verket vet vi att det förmodligen är mycket osannolikt att det kommer att ske utan arkitektoniska prioriteter eller nuvarande optimeringsmetoder). De observerade att detta inte var fallet och att träningsfel ibland blev värre när de staplade fler lager ovanpå en grundare modell.
Så detta motiverade dem att använda hoppanslutningar och använda så kallade djupa kvarvarande lager för att låta deras nätverk lära sig avvikelser från identitetslagret, därav termen kvarvarande , kvarstående här med hänvisning till skillnad från identiteten.
De implementerar hoppanslutningar på följande sätt:
Så de visar kartan $ \ mathcal {F} (x): = \ mathcal {H} (x) - x $ som någon restkarta. De använder en hopplageranslutning för att kasta denna mappning till $ \ mathcal {F} (x) + x = \ mathcal {H} (x) $. Så om den återstående $ \ mathcal {F} (x) $ är "liten" är kartan $ \ mathcal {H} (x) $ ungefär identiteten.
På detta sätt möjliggör användningen av djupa kvarvarande lager via hoppanslutningar deras djupa nät att lära sig ungefärliga identitetslager, om det verkligen är vad som är optimalt eller lokalt optimalt. De hävdar faktiskt att deras restskikt:
Vi visar genom experiment (Fig. 7) att de inlärda restfunktionerna i allmänhet har små svar
varför exakt detta fungerar har de inte ett exakt svar. Det är mycket osannolikt att identitetslagren är optimala, men de tror att användning av dessa kvarvarande lager hjälper till att förutsätta problemet och att det är lättare att lära sig en ny funktion med en referens / baslinje för jämförelse med identitetskartläggningen än att lära sig en "från grunden" utan att använda baslinjen för identitet. Vem vet. Men jag trodde att det här skulle vara ett trevligt svar på din fråga.
Förresten, i efterhand: sashkellos svar är ännu bättre, eller hur?