Een CNN bestaat uit verschillende lagen die elk een specifieke functie hebben in het verwerken van beeldgegevens:
1. Convolutional Layers
Dit zijn de bouwstenen van een CNN. Elke convolutional laag gebruikt een set leerbare filters die over de breedte en hoogte van het invoerbeeld of de vorige laag 'glijden'. Deze filters hebben een klein receptief veld, maar strekken zich uit door de volledige diepte van het invoervolume (bijvoorbeeld bij een kleurenbeeld zouden dit de drie kleurkanalen rood, groen en blauw zijn). Terwijl het filter over het beeld schuift, berekent het de dot product van de invoer en de filter, wat resulteert in een activatiekaart (feature map) die aangeeft waar bepaalde kenmerken in het beeld aanwezig zijn.
2. ReLU (Rectified Linear Unit) Layer
Na elke convolutionele bewerking wordt meestal een ReLU laag toegepast om niet-lineairiteit in het model in te voeren. Dit betekent simpelweg dat het de negatieve waarden in de activatiekaart op nul zet, wat helpt om het netwerk efficiënter en effectiever te maken.
3. Pooling Layers
Deze lagen verkleinen het volume van de invoer door alleen het maximum (max pooling) of het gemiddelde (average pooling) van een bepaald gebied te nemen. Pooling helpt om de rekenlast te verminderen, overfitting te voorkomen door ruimtelijke hiërarchie tussen convoluties te bieden en de netwerkgevoeligheid voor de exacte locatie van kenmerken in het invoerbeeld te verminderen.
4. Fully Connected Layers
Aan het einde van een CNN-architectuur komen één of meer fully connected lagen die functies van alle vorige lagen nemen om de uiteindelijke output te bepalen, zoals de klassenwaarschijnlijkheden in classificatietaken. Elk neuron in een fully connected laag heeft verbindingen naar alle activeringen in de vorige laag.
De combinatie van deze componenten stelt CNN's in staat om krachtige representaties voor visuele data te leren en zeer effectief te zijn in visuele herkenningsopdrachten. De geleerde kenmerken zijn vaak veel beter afgestemd op visuele taken dan kenmerken die handmatig zijn geëxtraheerd en geoptimaliseerd. CNN's zijn een essentieel onderdeel van de vooruitgang in kunstmatige intelligentie, met name in de toepassing van automatisch zicht.