|
|
||
|---|---|---|
| .. | ||
| lab | ||
| CNN_Architectures.md | ||
| ConvNetsPyTorch.ipynb | ||
| ConvNetsTF.ipynb | ||
| README.md | ||
README.md
Konvolutionella neurala nÀtverk
Vi har tidigare sett att neurala nÀtverk Àr ganska bra pÄ att hantera bilder, och till och med en enkellagers perceptron kan kÀnna igen handskrivna siffror frÄn MNIST-datasetet med rimlig noggrannhet. MNIST-datasetet Àr dock vÀldigt speciellt, eftersom alla siffror Àr centrerade i bilden, vilket gör uppgiften enklare.
Förhandsquiz
I verkliga livet vill vi kunna kÀnna igen objekt i en bild oavsett deras exakta position i bilden. Datorseende skiljer sig frÄn generell klassificering, eftersom vi, nÀr vi försöker hitta ett visst objekt i en bild, skannar bilden och letar efter specifika mönster och deras kombinationer. Till exempel, nÀr vi letar efter en katt, kan vi först leta efter horisontella linjer som kan bilda morrhÄr, och sedan kan en viss kombination av morrhÄr indikera att det faktiskt Àr en bild av en katt. Den relativa positionen och förekomsten av vissa mönster Àr viktiga, inte deras exakta position i bilden.
För att extrahera mönster anvÀnder vi oss av konvolutionella filter. Som du vet representeras en bild av en 2D-matris eller en 3D-tensor med fÀrgdjup. Att applicera ett filter innebÀr att vi tar en relativt liten filterkÀrna (en matris), och för varje pixel i den ursprungliga bilden berÀknar vi det viktade medelvÀrdet med nÀrliggande punkter. Vi kan se detta som ett litet fönster som glider över hela bilden och jÀmnar ut alla pixlar enligt vikterna i filterkÀrnan.
![]() |
![]() |
|---|
Bild av Dmitry Soshnikov
Till exempel, om vi applicerar 3x3 vertikala och horisontella kantfilter pÄ MNIST-siffrorna, kan vi fÄ framhöjningar (t.ex. höga vÀrden) dÀr det finns vertikala och horisontella kanter i vÄr ursprungliga bild. Dessa tvÄ filter kan alltsÄ anvÀndas för att "leta efter" kanter. PÄ samma sÀtt kan vi designa olika filter för att leta efter andra lÄg-nivÄ mönster:
Bild av Leung-Malik Filter Bank
Men Àven om vi kan designa filter för att manuellt extrahera vissa mönster, kan vi ocksÄ designa nÀtverket sÄ att det lÀr sig mönstren automatiskt. Detta Àr en av huvudidéerna bakom CNN.
Huvudidéer bakom CNN
SÄ hÀr fungerar CNNs baserat pÄ följande viktiga idéer:
- Konvolutionella filter kan extrahera mönster
- Vi kan designa nÀtverket sÄ att filtren trÀnas automatiskt
- Vi kan anvÀnda samma metod för att hitta mönster i högre nivÄers funktioner, inte bara i den ursprungliga bilden. DÀrmed arbetar CNN med en hierarki av funktioner, frÄn lÄg-nivÄ pixelkombinationer till högre nivÄers kombinationer av bilddelar.
Bild frÄn en artikel av Hislop-Lynch, baserad pÄ deras forskning
âïž Ăvningar: Konvolutionella neurala nĂ€tverk
LÄt oss fortsÀtta utforska hur konvolutionella neurala nÀtverk fungerar och hur vi kan uppnÄ trÀningsbara filter genom att arbeta igenom motsvarande anteckningsböcker:
Pyramidarkitektur
De flesta CNNs som anvÀnds för bildbehandling följer en sÄ kallad pyramidarkitektur. Det första konvolutionella lagret som appliceras pÄ de ursprungliga bilderna har vanligtvis ett relativt lÄgt antal filter (8-16), som motsvarar olika pixelkombinationer, sÄsom horisontella/vertikala linjer eller streck. PÄ nÀsta nivÄ minskar vi nÀtverkets rumsliga dimension och ökar antalet filter, vilket motsvarar fler möjliga kombinationer av enkla funktioner. Med varje lager, nÀr vi rör oss mot den slutliga klassificeraren, minskar bildens rumsliga dimensioner och antalet filter ökar.
Som exempel, lÄt oss titta pÄ arkitekturen för VGG-16, ett nÀtverk som uppnÄdde 92,7% noggrannhet i ImageNets topp-5 klassificering Är 2014:
Bild frÄn Researchgate
Mest kÀnda CNN-arkitekturer
FortsÀtt din studie om de mest kÀnda CNN-arkitekturerna
Ansvarsfriskrivning:
Detta dokument har översatts med hjĂ€lp av AI-översĂ€ttningstjĂ€nsten Co-op Translator. Ăven om vi strĂ€var efter noggrannhet, bör det noteras att automatiska översĂ€ttningar kan innehĂ„lla fel eller felaktigheter. Det ursprungliga dokumentet pĂ„ dess ursprungliga sprĂ„k bör betraktas som den auktoritativa kĂ€llan. För kritisk information rekommenderas professionell mĂ€nsklig översĂ€ttning. Vi ansvarar inte för eventuella missförstĂ„nd eller feltolkningar som uppstĂ„r vid anvĂ€ndning av denna översĂ€ttning.




