Kursinhalt
Computer Vision Essentials
Computer Vision Essentials
Faltungsschichten
Verständnis von Convolution-Schichten
Convolution-Schichten bilden das Kernstück von Convolutional Neural Networks (CNNs). Sie führen eine Faltung durch, bei der eine kleine Matrix, genannt Filter (oder Kernel), über ein Bild gleitet, um Kanten, Texturen und Formen zu erkennen. Dies ermöglicht es CNNs, Bilder effizienter zu verarbeiten als herkömmliche Netzwerke.
Anstatt ein gesamtes Bild auf einmal zu analysieren, teilen CNNs es in kleinere Abschnitte auf und erkennen Merkmale auf unterschiedlichen Ebenen. Frühe Schichten identifizieren einfache Muster wie Kanten, während tiefere Schichten komplexe Strukturen erfassen.
Funktionsweise der Faltung
Die Faltung beinhaltet das Verschieben eines Filters (Kernels) über ein Bild und umfasst folgende Schritte:
Anwendung des Kernels in der oberen linken Ecke des Bildes.
Elementweise Multiplikation zwischen Kernel und Pixelwerten.
Summieren der Produkte zur Erzeugung eines Ausgabepixels.
Verschieben des Kernels entsprechend dem Stride und Wiederholen des Vorgangs.
Erstellung einer Feature-Map, die erkannte Muster hervorhebt.
Mehrere Filter ermöglichen es CNNs, verschiedene Merkmale wie vertikale Kanten, Kurven und Texturen zu erfassen.
Filter (Kerne):
Filter spielen eine entscheidende Rolle bei der Extraktion bedeutungsvoller Muster aus Bildern. Verschiedene Filtertypen sind auf die Erkennung unterschiedlicher Merkmale spezialisiert:
Kantenerkennungsfilter: Identifikation von Objektgrenzen durch Erkennung abrupter Intensitätsänderungen (z. B. Sobel-, Prewitt- und Laplace-Filter);
Texturfilter: Erfassung wiederholender Muster wie Wellen oder Gitter (z. B. Gabor-Filter);
Schärfungsfilter: Verbesserung von Bilddetails durch Verstärkung hochfrequenter Komponenten;
Weichzeichnungsfilter: Reduzierung von Rauschen und Glättung von Bildern (z. B. Gaußscher Weichzeichnungsfilter);
Prägefilter: Hervorhebung von Kanten und Hinzufügen eines 3D-Effekts durch Betonung der Tiefe.
Jeder Filter wird darauf trainiert, spezifische Muster zu erkennen, und trägt zum Aufbau hierarchischer Merkmalsrepräsentationen in tiefen CNNs bei.
Faltungsschichten verwenden denselben Filter über das gesamte Bild, wodurch die Anzahl der Parameter reduziert und CNNs effizient werden. Spezialisierte lokal verbundene Schichten nutzen jedoch verschiedene Filter für unterschiedliche Regionen, wenn erforderlich.
Durch das Stapeln von Faltungsschichten extrahieren CNNs detaillierte Muster und sind dadurch leistungsstark für Bildklassifikation, Objekterkennung und Aufgaben der maschinellen Bildverarbeitung.
Hyperparameter:
Stride: Steuert, wie weit sich der Filter pro Schritt bewegt;
Padding: Fügt Pixel hinzu, um die Ausgabengröße zu steuern ("same padding" erhält die Größe, "valid padding" reduziert sie);
Anzahl der Filter (Tiefe): Mehr Filter verbessern die Merkmalsdetektion, erhöhen jedoch den Rechenaufwand.
Vor dem nächsten Kapitel sollten Sie sich merken:
Obwohl Faltungsschichten die Ausgabegröße verringern können, besteht ihr Hauptzweck in der Merkmalextraktion und nicht in der Dimensionsreduktion. Pooling-Schichten hingegen reduzieren explizit die Dimensionalität, während sie wichtige Informationen beibehalten und so die Effizienz in tieferen Schichten gewährleisten.
1. Was ist die Hauptaufgabe einer Faltungsschicht in einem CNN?
2. Welcher Hyperparameter bestimmt, wie weit ein Filter während der Faltung verschoben wird?
3. Was ist der Zweck der Anwendung mehrerer Filter in einer Faltungsschicht?
Danke für Ihr Feedback!