Een neural network (of: neuraal netwerk) is een systeem in de kunstmatige intelligentie dat is geïnspireerd op het menselijk brein. Net als het biologische brein bestaat het uit ‘neuronen’ die onderling verbonden zijn en samen complexe taken kunnen uitvoeren, zoals het herkennen van patronen in afbeeldingen of het begrijpen van taal.
Hoewel het idee is gebaseerd op hoe onze hersenen werken, is een neuraal netwerk in de praktijk vooral een wiskundig model dat bestaat uit lagen van knooppunten die bewerkingen uitvoeren op data.
In deze study hebben we het enkel over FNN’s, dit is een Feed forward neural network. De data wordt dus van links naar rechts gevoerd. verder heb je ook nog:
1. Feedforward Neural Network (FNN)
Dit is het meest eenvoudige type neuraal netwerk. Data stroomt in één richting: van input naar output, zonder terugkoppelingen.
2. Convolutional Neural Network (CNN)
CNN’s zijn speciaal ontwikkeld voor het verwerken van beelden. Ze gebruiken “convolutielagen” die lokale patronen herkennen (zoals randen, vormen of structuren).
3. Recurrent Neural Network (RNN)
RNN’s hebben een geheugenfunctie. Ze verwerken sequentiële data waarbij eerdere inputs de huidige output beïnvloeden.
4. Long Short-Term Memory (LSTM)
LSTM is een type RNN dat speciaal is ontworpen om lange sequenties te verwerken, zonder dat het geheugen vervaagt (een probleem bij gewone RNN’s).
5. Gated Recurrent Unit (GRU)
Een variant op LSTM die iets eenvoudiger is, maar vergelijkbare prestaties levert bij minder complexe taken.
Een neuraal netwerk bestaat uit drie hoofdonderdelen:
Input layer (invoerlaag)
Hier komt de ruwe data binnen, bijvoorbeeld de helderheid van pixels in een afbeelding of woorden in een tekst. Elke invoer is verbonden aan een neuron in deze laag.
Hidden layers (verborgen lagen)
Deze lagen zitten tussen input en output. Hier gebeurt het rekenwerk. Elke laag bevat meerdere neuronen die de input verwerken en doorsturen naar de volgende laag. Hoe meer hidden layers, hoe “dieper” het netwerk is — vandaar de term deep learning.
Output layer (uitvoerlaag)
Dit is de laatste laag van het netwerk. Hier wordt de uiteindelijke voorspelling of classificatie gedaan, bijvoorbeeld: “dit is het cijfer 3” of “dit is een kat”.
Voorbeeld neural network
Een neuron in een neuraal netwerk is een simpele rekeneenheid. Het ontvangt meerdere inputwaarden (bijvoorbeeld pixelhelderheden of signalen uit een vorige laag), en telt die op volgens een wiskundige formule.
Elke input heeft een gewicht (weight) dat bepaalt hoe belangrijk die input is. Daarnaast wordt vaak een bias toegevoegd, waarmee het model zich iets flexibeler kan aanpassen.
De basisformule van één neuron ziet er als volgt uit:
output = σ(w₁x₁ + w₂x₂ + w₃x₃ + ... + b)
Waarbij:
x₁, x₂, … de inputs zijn (zoals pixelwaarden),
w₁, w₂, … de gewichten zijn,
b de bias is,
en σ(…) een activatiefunctie is (bijvoorbeeld de sigmoid).
De uitkomst van deze berekening is de activatie van het neuron, oftewel: het signaal dat wordt doorgestuurd naar de volgende laag.
Een activatiefunctie bepaalt de output van een neuron, op basis van de gewogen som van de inputs. Een veelgebruikte functie is de sigmoid, die elke waarde omzet naar een getal tussen 0 en 1. Zo kan het model vloeiender leren en beter omgaan met onzekerheid. Andere activatiefuncties zijn bijvoorbeeld ReLU en tanh.
Zonder activatiefuncties zou een neuraal netwerk zich gedragen als een simpele lineaire formule — niet voldoende om complexe patronen te herkennen.
De verborgen lagen zorgen ervoor dat het netwerk niet alleen eenvoudige verbanden kan leggen, maar ook complexe structuren kan leren herkennen. In een beeldherkenningsmodel zou de eerste laag misschien simpele lijnen leren herkennen, terwijl latere lagen complete objecten zoals een gezicht of een cijfer herkennen.
Elke extra laag stelt het netwerk in staat om dieper te ‘begrijpen’ wat er in de data zit.
Een neural network is een gestructureerd systeem van wiskundige functies, opgebouwd uit lagen van neuronen die elk een kleine berekening uitvoeren. Door inputlaag → hidden layers → outputlaag te combineren met gewichten, biases en activatiefuncties, ontstaat een krachtig model dat complexe taken aankan — mits goed getraind.
In het volgende deel van deze serie gaan we kijken hoe een neural network leert, en wat er gebeurt tijdens het trainen met behulp van duizenden voorbeelden.
Bron:
But what is a neural network? | Deep learning chapter 1