Sobes.tech
Junior — Senior

Co je to 1x1 konvoluce a k čemu se používá?

sobes.tech AI

Odpověď od AI

Konvoluce 1x1 je operace konvoluce s jádrem velikosti 1 na 1 pixel. Používá se v konvolučních neuronových sítích k změně počtu kanálů (hloubky) vstupního tenzoru bez změny prostorových rozměrů (šířky a výšky).

Hlavní použití konvoluce 1x1:

  • Snížení nebo zvýšení dimenze kanálů, což pomáhá snížit počet parametrů a výpočetní zátěž.
  • Zavedení nelinearit mezi vrstvami pomocí aktivačních funkcí po konvoluci 1x1.
  • Míchání informací mezi kanály, zlepšení reprezentace rysů.

Pří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álů, 32x32
output = conv1x1(input_tensor)
print(output.shape)  # torch.Size([1, 128, 32, 32])