Sobes.tech
Junior — Senior

Τι είναι μια συνελίκωση 1x1 και ποια είναι η χρήση της;

sobes.tech AI

Απάντηση από AI

Η συνελίκωση 1x1 είναι μια λειτουργία συνελίκωσης με πυρήνα διαστάσεων 1 επί 1 pixel. Εφαρμόζεται σε συνελικτικά νευρωνικά δίκτυα για την αλλαγή του αριθμού των καναλιών (βάθος) του εισερχόμενου τανυστή χωρίς να αλλάζουν οι χωρικές διαστάσεις (πλάτος και ύψος).

Κύριες εφαρμογές της συνελίκωσης 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)  # παρτίδα=1, 64 κανάλια, 32x32
output = conv1x1(input_tensor)
print(output.shape)  # torch.Size([1, 128, 32, 32])