Junior — Senior
Was ist eine 1x1-Faltung und wofür wird sie verwendet?
sobes.tech KI
Antwort von AI
Eine 1x1-Faltung ist eine Faltung mit einem Kernel der Größe 1 mal 1 Pixel. Sie wird in Convolutional Neural Networks verwendet, um die Anzahl der Kanäle (Tiefe) des Eingabetensors zu ändern, ohne die räumlichen Abmessungen (Breite und Höhe) zu verändern.
Hauptanwendungen der 1x1-Faltung:
- Reduzierung oder Erhöhung der Kanal-Dimension, was hilft, die Parameterzahl und die Rechenbelastung zu verringern.
- Einführung von Nichtlinearitäten zwischen den Schichten durch Aktivierungsfunktionen nach der 1x1-Faltung.
- Mischen von Informationen zwischen den Kanälen, um die Merkmalsdarstellung zu verbessern.
Beispiel in 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) # Batchgröße=1, 64 Kanäle, 32x32
output = conv1x1(input_tensor)
print(output.shape) # torch.Size([1, 128, 32, 32])