Middle
Mire való a pooling réteg?
sobes.tech MI
Válasz az MI-től
A neuronhálózatokban a pooling réteg a bemeneti adatok dimenziójának csökkentésére szolgál, ami segít csökkenteni a számítási terhelést és a modell paramétereinek számát. Emellett elősegíti a legfontosabb jellemzők kiemelését, növelve a modell ellenálló képességét a bemeneti adatok elmozdulásai és torzulásai ellen.
A leggyakoribb pooling típusok:
- Max pooling — kiválasztja egy terület maximális értékét.
- Average pooling — kiszámítja az átlagértéket.
Példa max pooling-ra 2x2-es ablakmérettel és 2-es lépéssel:
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)
Az eredmény minden 2x2-es blokk maximumát tartalmazza, és a méret 4x4-ről 2x2-re csökken.