Convolutional Nevrale Nettverk cheatsheet Stjerners

ønsker du å se denne cheatsheet i ditt eget språk? Kan du hjelpe oss med å oversette det på GitHub!,br>

Convolutional Nevrale Nettverk
Tilbakevendende Nevrale Nettverk
Tips og triks

Av Afshine Amidi og Shervine Amidi

Oversikt

Arkitektur av en tradisjonell CNN Convolutional nevrale nettverk, også kjent som CNNs, er en bestemt type nevrale nettverk som vanligvis består av følgende lag:

Det ferdige lag og sammenføring lag kan fininnstilles med hensyn til hyperparameters som er beskrevet i de neste avsnittene.,

Typer lag

Ferdige layer (CONV) Det ferdige layer (CONV) bruker filtre som utfører ferdige operasjoner som det er skanne inngang $jeg$ med hensyn til dens dimensjoner. Dens hyperparameters inkluderer filter størrelse $F$ og steg $S$. Den resulterende utgang $O$ kalles funksjonen kart eller aktivisering kartet.

Bemerkning: det ferdige trinn kan bli generalisert til 1D-og 3D-saker også.,

Pooling (POOL) sammenføring layer (POOL) er en downsampling drift, typisk anvendes etter en foldning lag, som har noen romlig invarians. I særdeleshet, max og gjennomsnitt pooling er spesielle typer pooling der den maksimale og gjennomsnittlige verdien er tatt, henholdsvis.,ion velger den maksimale verdien av den gjeldende visningen

Hver pooling drift gjennomsnitt verdier for gjeldende visning Illustrasjon • Bevarer oppdaget funksjoner
• Mest brukte • Downsamples funksjonen map
• Brukes i LeNet

Fullt Koblet (FC) fullt koblet layer (FC) opererer på en flat inngang hvor hver inngang er koplet til alle nevroner., Hvis den finnes, FC lag er vanligvis funnet mot slutten av CNN arkitekturer og kan brukes til å optimalisere mål som for eksempel klasse score.

Filtrer hyperparameters

Det ferdige laget inneholder filtre som det er viktig å vite meningen bak sin hyperparameters.,

Dimensjoner av et filter Et filter av størrelse $F\ganger F$ brukt til en inngang som inneholder $C$ – tv er en $F \ganger F \ganger C$ volum som utfører convolutions på en inngang av størrelse $jeg \ganger jeg \ganger C$ og gir en utskrift funksjon kart (også kalt aktivering kart) størrelse $O \ganger O \ganger 1$.

Bemerkning: anvendelse av $K$ filter av størrelse $F\ganger F$ resulterer i en ekstra funksjon kart over størrelsen $O \ganger O \ganger K$.,

Skrittlengde For en convolutional eller en sammenslåing drift, steg $S$ angir antall punkter som vinduet beveger seg etter hver operasjon.

Zero-padding Zero-padding betegner prosessen med å legge til $P$ nuller til hver side av grensene for innspill.,led nedenfor:

Tuning hyperparameters

– Parameteren kompatibilitet i ferdige laget Av merke seg $jeg$ lengden av input volum størrelse, $F$ lengden på filter, $P$ mengden av zero padding, $S$ på strak arm, så produksjonen størrelse $O$ av funksjonen kart langs denne dimensjonen er gitt ved:

\

Forstå kompleksiteten I modellen for å vurdere kompleksiteten av en modell, det er ofte nyttig for å bestemme antall parametere som sin arkitektur vil ha., I et gitt lag av en convolutional nevrale nettverk, det er gjort som følger:

\

I eksempelet nedenfor har vi $F_1 = F_2 = 3$ og $S_1 = S_2 = 1$, noe som gir $R_2 = 1 + 2\cdot 1 + 2\cdot 1 = 5$.

Vanligvis brukes aktivering funksjoner

Utbedret Lineær Enhet rettet lineær enhet layer (ReLU) er en aktivering av funksjonen $g$ som er brukt på alle elementer av volumet. Det tar sikte på å innføre ikke-linearities til nettverket., Variantene er oppsummert i tabellen nedenfor:

Softmax Den softmax trinn kan bli sett på som en generalisert logistisk funksjon som tar som input en vektor av score $x\i\mathbb{R}^n$ og utganger en vektor av produksjonen sannsynlighet $s\i\mathbb{R}^n$ gjennom en softmax funksjon på slutten av arkitektur. Det er definert som følger:

\

– Objektet påvisning

Typer modeller Det er 3 hovedtyper av objekt anerkjennelse algoritmer, som arten av hva som er spådd er forskjellige., They are described in the table below:

Image classification Classification w., av objektet • Oppdager et objekt i et bilde
• Anslår sannsynligheten for at objektet og hvor det ligger
• Oppdager opp til flere objekter i et bilde
• Anslår sannsynligheten for objekter og hvor de er plassert
Tradisjonelle CNN Forenklet YOLO, R-CNN YOLO, R-CNN

Oppdagelse I sammenheng med objekt deteksjon, forskjellige metoder er brukt, avhengig av om vi bare ønsker å finne objektet eller oppdage en mer kompleks form i bildet., De to viktigste er summert opp i tabellen nedenfor:

Kryss over Union Kryss over Union, også kjent som $\textrm{IoU}$, er en funksjon som angir hvordan riktig plassert et anslått markeringsrammen $B_p$ er over faktiske markeringsrammen $B_a$. Det er definert som:

\

ankerrom Anker-boksing er en teknikk som brukes til å forutsi overlappende byksende bokser., I praksis nettverket er lov til å forutsi mer enn en boks samtidig, der hver boks prediksjon er nødt til å ha et gitt sett av geometriske egenskaper. For eksempel, det første forslaget kan potensielt være en rektangulær boks i en gitt form, mens den andre vil være en rektangulær boks av en annen geometrisk form.

Ikke-max undertrykkelse Av ikke-max undertrykkelse teknikken tar sikte på å fjerne dupliserte overlappende byksende bokser av samme objekt ved å velge den mest representative for seg. Etter å ha fjernet alle boksene for å ha en sannsynlighet prediksjon lavere enn 0.,6, følgende trinnene gjentas mens det er bokser gjenværende:

For en gitt klasse,
• Trinn 1: velg safe med den største prediksjon sannsynlighet.
• Trinn 2: Kast alle boksen for å ha en $\textrm{IoU}\geqslant0.5$ med den forrige boksen.

YOLO Du Bare Se en Gang (YOLO) er et objekt deteksjon algoritme som utfører følgende fremgangsmåte:

• Trinn 1: del innspill bildet inn i en $G\ganger G$ rutenett.,
• Trinn 2: For hver celle i rutenettet, kan du kjøre en CNN som spår $y$ i følgende form:

\^T\i\mathbb{R}^{G\ganger G\ganger k\ganger(5+p)}}\]

hvor $p_c$ er sannsynligheten for å oppdage et objekt, $b_x,b_y,b_h,b_w$ er egenskaper oppdaget bouding safe, $c_1,…,c_p$ er en one-hot fremstilling av hvilke av $p$ klasser ble oppdaget, og $k$ er antall ankerrom.
• Trinn 3: Kjør ikke-max undertrykkelse algoritmen for å fjerne alle potensielle duplikatoppføringer overlappende byksende bokser.,

R-CNN-Regionen med Convolutional Nevrale Nettverk (R-CNN) er et objekt deteksjon algoritme som første segmenter bildet for å finne potensielle relevante byksende boksene, og deretter kjøre den deteksjon algoritme for å finne mest sannsynlig objekter i de byksende bokser.,

Bemerkning: selv om den opprinnelige algoritmen er beregninger dyre og trege, nyere arkitekturer aktivert algoritmen til å kjøre raskere, slik som Rask R-CNN og Raskere R-CNN.

Ansiktet bekreftelse og anerkjennelse

Typer modeller To hovedtyper av modellen, er summert opp i tabellen nedenfor:

Ansiktet bekreftelse ansiktsgjenkjenning
• dette Er den rette personen?,
• en-til-En-oppslag
• Er dette en av de $K$ personer i databasen?
• En-til-mange oppslag

Ett Skudd Læring Ett Skudd Læring er et ansikt bekreftelse algoritme som bruker en begrenset opplæring satt til å lære en likhet funksjon som angir hvordan ulike gitt to bilder. Likheten funksjonen brukes til to bilder er ofte bemerket $d(\textrm{bilde 1}, \textrm{bilde 2}).,$

\

Nevrale stil overføre

Motivasjon målet av nevrale stil overføring er å generere et bilde $G$ basert på et gitt innhold $C$ og en gitt stil $S$.,

Aktivering I et gitt lag $l$, aktivering er kjent $a^{}$ og er av dimensjoner $n_H\ganger n_w\ganger n_c$

\(C)}-en^{(G)}||^2}\]

\}=\sum_{i=1}^{n_H^{}}\sum_{k=1}^{n_w^{}}a_{ijk}^{}a_{ijk»}^{}}\]

Bemerkning: stilen matrise for stil bildet og det genererte bildet er nevnt $G^{(S)}$ og $G^{(G)}$ henholdsvis.,

\}(S,G)=\frac{1}{(2n_Hn_wn_c)^2}||G^{(S)}-G^{(G)}||_F^2=\frac{1}{(2n_Hn_wn_c)^2}\sum_{k,k»=1}^{n_c}\Big(G_{kk»}^{(S)}-G_{kk»}^{(G)}\Big)^2}\]

Totale kostnadene funksjon De totale kostnadene funksjonen er definert som en kombinasjon av innhold og stil kostnad funksjoner, avhengig av parametere $\alpha,\beta$, som følger:

\

Bemerkning: en høyere verdi av $\alpha$ vil gjøre modellen mer opptatt av innholdet, mens en høyere verdi av $\beta$ vil gjøre det bryr seg mer om stil.,

Arkitekturer ved hjelp av beregningsorientert triks

Generativ Alternative Nettverk Generativ alternative nettverk, også kjent som GANs, er sammensatt av en generativ og en diskriminerende modell, der generativ modell tar sikte på å generere mest mulig sannferdig utgang som vil bli matet inn i den diskriminerende som tar sikte på å differensiere generert og sanne bildet.

Kommentar: bruk tilfeller bruker varianter av GANs inkluderer tekst til bilde, musikk generasjon og syntese.,

ResNet Den Gjenværende Nettverk arkitektur (også kalt ResNet) bruker rester av blokker med et høyt antall lag ment å redusere opplæring feil. Den gjenværende blokk har følgende karakteriserer ligningen:

\}=g(a^{}+z^{})}\]

Starten Nettverk Denne arkitekturen bruker begynnelse moduler, og tar sikte på å gi en prøve på forskjellige convolutions for å øke ytelsen gjennom funksjoner diversifisering. I særdeleshet bruker $1\times1$ ferdige triks for å begrense computational byrde.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *