Junior — Senior
Ce este o convoluție 1x1 și pentru ce se folosește?
sobes.tech AI
Răspuns de la AI
Convoluția 1x1 este o operație de convoluție cu un nucleu de dimensiune 1 pe 1 pixel. Se aplică în rețelele neuronale convoluționale pentru a modifica numărul de canale (adâncimea) tensorului de intrare fără a modifica dimensiunile spațiale (lățimea și înălțimea).
Principalele aplicații ale convoluției 1x1:
- Reducerea sau creșterea dimensionalității canalelor, ceea ce ajută la reducerea numărului de parametri și a sarcinii de calcul.
- Introducerea de non-liniarități între straturi prin funcții de activare după convoluția 1x1.
- Amestecarea informațiilor între canale, îmbunătățind reprezentarea caracteristicilor.
Exemplu în 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) # lot=1, 64 canale, 32x32
output = conv1x1(input_tensor)
print(output.shape) # torch.Size([1, 128, 32, 32])