Forstå Hintons Kapselnettverk. Del IV: CapsNet Architecture

Anta at riktig etikett er 1, dette betyr at Den første DigitCap er ansvarlig for koding av tilstedeværelsen av sifferet 1. For Denne DigitCap tap funksjon T_c vil være en Og for alle gjenværende ni DigitCaps T_c vil være 0. Når T_c er 1, beregnes den første termen av tap-funksjonen og den andre blir null. For vårt eksempel, for å beregne Det Første Digitcaps tap, tar vi utgangsvektoren til Denne DigitCap og trekker den fra m+, som er fast til 0,9. Da beholder vi den resulterende verdien bare i tilfelle når den er større enn null og firkantet den. Ellers returnerer 0. Med andre ord vil tapet være null hvis Riktig DigitCap forutsier riktig etikett med større enn 0,9 sannsynlighet, og det vil være ikke-null hvis sannsynligheten er mindre enn 0,9.

Tap funksjon verdi for riktig Og feil DigitCap. Merk at den røde grafen er «squashed» vertikalt i forhold til den grønne. Dette skyldes lambda multiplikatoren fra formelen. Kilde: forfatter.

For DigitCaps som ikke samsvarer med riktig etikett, vil T_c være null og derfor vil den andre termen bli evaluert(tilsvarende (1-T_c) del). I dette tilfellet kan vi se at tapet vil være null hvis den mismatching DigitCap spår en feil etikett med sannsynlighet mindre enn 0,1 og ikke-null hvis det spår en feil etikett med sannsynlighet mer enn 0,1.

til slutt er lambda-koeffisienten i formelen inkludert for numerisk stabilitet under trening (verdien er fast til 0,5). De to begrepene i formelen har firkanter fordi denne tapsfunksjonen har L2-norm og forfatterne tilsynelatende anser denne normen for å fungere bedre.

Del II. Dekoder.

CapsNet dekoder arkitektur. Kilde: originalpapir.

Dekoder tar en 16-dimensjonal vektor fra riktig DigitCap og lærer å dekode den til et bilde av et siffer (merk at den bare bruker riktig DigitCap vektor under trening og ignorerer de feil). Dekoder brukes som regularizer, det tar utgangen av riktig DigitCap som inngang og lærer å gjenskape et 28 x 28 piksler bilde, med tapsfunksjonen Euklidisk avstand mellom det rekonstruerte bildet og inngangsbildet. Dekoder tvinger kapsler til å lære funksjoner som er nyttige for å rekonstruere det opprinnelige bildet. Jo nærmere det rekonstruerte bildet til inngangsbildet, desto bedre. Eksempler på rekonstruerte bilder kan ses på bildet nedenfor.

øverste rad: originale bilder. Nederste rad: rekonstruerte bilder. Kilde: originalpapir.

Lag 4. Fullt tilkoblet #1

Inngang: 16×10.
Utgang: 512.
Antall parametere: 82432.

Hver utgang på lavere nivå blir vektet og rettet inn i hver neuron av det fullt tilkoblede laget som inngang. Hver neuron har også en bias term. For dette laget er det 16×10 innganger som alle er rettet mot hver av de 512 nevronene i dette laget. Derfor er det (16×10 + 1)x512 trenbare parametere.

for de følgende to lagene er beregningen den samme: antall parametere = (antall innganger + bias) x antall nevroner i laget. Derfor er det ingen forklaring på fullt tilkoblede lag 2 og 3.

Lag 5. Fullt tilkoblet #2

Inngang: 512.
Utgang: 1024.
Antall parametere: 525312.

Lag 6. Fullt tilkoblet #3

Inngang: 1024.
Utgang: 784 (som etter omforming gir tilbake et 28×28 dekodet bilde).
Antall parametere: 803600.

Totalt antall parametere i nettverket: 8238608.

Konklusjon

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.