Junior — Senior
44
Что такое 1x1 свёртка и для чего её используют?
Companies where asked
РобоСиб
Answer from AI
sobes.tech AI
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) # batch_size=1, 64 каналов, 32x32
output = conv1x1(input_tensor)
print(output.shape) # torch.Size([1, 128, 32, 32])