Sobes.tech
Middle

Na čo je vrstva pooling?

sobes.tech AI

Odpoveď od AI

Pooling vrstva v neurónových sieťach sa používa na zníženie rozmeru vstupných dát, čo pomáha znížiť výpočtové zaťaženie a počet parametrov modelu. Prispieva tiež k zvýrazneniu najdôležitejších znakov, čím zvyšuje odolnosť modelu voči posunom a skresleniam vstupných dát.

Najbežnejšie typy pooling:

  • Max pooling — vyberá maximálnu hodnotu z oblasti.
  • Average pooling — vypočíta priemernú hodnotu.

Príklad max pooling s veľkosťou okna 2x2 a krokom 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)

Výsledok bude obsahovať maximá z každého 2x2 bloku, znižujúc rozmer z 4x4 na 2x2.