Junior — Senior
1x1 konvolusiya nədir və nə üçün istifadə olunur?
sobes.tech Süni İntellekt
AI-dan cavab
1x1 konvolusiya — bu, 1x1 piksel o'lchamidagi yadroni o'z ichiga olgan konvolyutsiya operatsiyasidir. U, kirish tensorining kanallar sonini (chuqurligini) o'zgartirish uchun konvolyutsion neyron tarmoqlarda qo'llaniladi va fazoviy o'lchamlarni (kenglik va balandlik) o'zgartirmaydi.
1x1 konvolyutsiyaning asosiy qo'llanmalari:
- Kanallar o'lchamini kamaytirish yoki oshirish, bu esa parametrlar sonini va hisoblash yukini kamaytirishga yordam beradi.
- 1x1 konvolyutsiyadan so'ng aktivatsiya funksiyalari yordamida qatlamlar o'rtasida no liniyaliklarni kiritish.
- Kanallar o'rtasida ma'lumotlarni aralashtirish, xususiyatlar taqdimotini yaxshilash.
PyTorch misoli:
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) # partiya hajmi=1, 64 kanal, 32x32
output = conv1x1(input_tensor)
print(output.shape) # torch.Size([1, 128, 32, 32])