Junior — Senior
Šta je 1x1 konvolucija i zašto se koristi?
sobes.tech АИ
Одговор од АИ
Конволуција 1x1 је операција конволуције са језгром величине 1 по 1 пиксел. Она се користи у конволуционим неуронским мрежама за промену броја канала (дубине) улазног тензора без промене просторних димензија (ширине и висине).
Главне примене 1x1 конволуције:
- Смањење или повећање димензије канала, што помаже у смањењу броја параметара и рачунарске оптерећености.
- Увођење нелинеарности између слојева помоћу функција активације након 1x1 конволуције.
- Мешање информација између канала, побољшавајући представљање карактеристика.
Пример у 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) # батч=1, 64 канала, 32x32
output = conv1x1(input_tensor)
print(output.shape) # torch.Size([1, 128, 32, 32])