Junior — Senior
Čo je 1x1 konvolúcia a na čo sa používa?
sobes.tech AI
Odpoveď od AI
Konvolúcia 1x1 je operácia konvolúcie s jadrom veľkosti 1 na 1 pixel. Používa sa v konvolučných neurónových sieťach na zmenu počtu kanálov (hĺbky) vstupného tenzora bez zmeny priestorových rozmerov (šírky a výšky).
Hlavné použitia konvolúcie 1x1:
- Zníženie alebo zvýšenie dimenzie kanálov, čo pomáha znížiť počet parametrov a výpočtovú záťaž.
- Zavedenie nelinearít medzi vrstvami pomocou aktivačných funkcií po konvolúcii 1x1.
- Miešanie informácií medzi kanálmi, zlepšenie reprezentácie čŕt.
Príklad v PyTorch:
import torch
import torch.nn as nn
conv1x1 = nn.Conv2d(in_channels=64, out_channels=128, kernel_size=1)
input_tensor = torch.randn(1, 64, 32, 32) # dávka=1, 64 kanálov, 32x32
output = conv1x1(input_tensor)
print(output.shape) # torch.Size([1, 128, 32, 32])