Sobes.tech
Middle

Wozu dient eine Pooling-Schicht?

sobes.tech KI

Antwort von AI

Pooling-Schicht in neuronalen Netzen wird verwendet, um die Eingabedaten zu reduzieren, was dazu beiträgt, die Rechenbelastung zu verringern und die Anzahl der Modellparameter zu reduzieren. Sie fördert auch die Hervorhebung der wichtigsten Merkmale, was die Robustheit des Modells gegenüber Verschiebungen und Verzerrungen der Eingabedaten erhöht.

Die häufigsten Pooling-Typen:

  • Max-Pooling — wählt den maximalen Wert in einem Bereich.
  • Average Pooling — berechnet den Durchschnittswert.

Beispiel für Max-Pooling mit Fenstergröße 2x2 und Schritt 2:

import torch
import torch.nn as nn

input_tensor = torch.tensor([[[[1, 2, 3, 4],
                               [5, 6, 7, 8],
                               [9, 10, 11, 12],
                               [13, 14, 15, 16]]]], dtype=torch.float32)

pool = nn.MaxPool2d(kernel_size=2, stride=2)
output = pool(input_tensor)
print(output)

Das Ergebnis enthält die Maxima aus jedem 2x2-Block und reduziert die Dimension von 4x4 auf 2x2.