Middle
Waarvoor is een poolinglaag bedoeld?
sobes.tech AI
Antwoord van AI
Pooling-laag in neurale netwerken wordt gebruikt om de dimensionaliteit van de invoergegevens te verminderen, wat helpt om de rekenbelasting te verlagen en het aantal modelparameters te verminderen. Het bevordert ook het benadrukken van de belangrijkste kenmerken, waardoor de robuustheid van het model tegen verschuivingen en vervormingen van de invoergegevens toeneemt.
De meest voorkomende soorten pooling:
- Max pooling — kiest de maximale waarde uit een gebied.
- Average pooling — berekent de gemiddelde waarde.
Voorbeeld van max pooling met een venstergrootte van 2x2 en een stap van 2:
import torch
import torch.nn as nn
input_tensor = torch.tensor([[[[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12],
[13, 14, 15, 16]]]], dtype=torch.float32)
pool = nn.MaxPool2d(kernel_size=2, stride=2)
output = pool(input_tensor)
print(output)
Het resultaat bevat de maxima uit elke 2x2-blok, waardoor de dimensie wordt verminderd van 4x4 naar 2x2.