Deep Learning

Sichtprüfung – Beispiel mit Anleitung

Führen Sie einen klassischen Sichtprüfungs-Workflow durch und identifizieren Sie Fehler anhand des Bildinhalts.

Zum Einstieg:

  1. Code herunterladen
  2. Code in MATLAB öffnen
  3. Befolgen Sie die unten aufgeführten Schritte.

Sie haben noch keinen Zugriff?

Dauer:
15 bis 30 Minuten
Stufe:
Einsteiger/Mittelstufe

Sie brauchen eine Auffrischung? Absolvieren Sie das kostenfreie interaktive Tutorial.

Schritt 1

Daten laden und vorverarbeiten

Mit Deep Learning können große Datensätze eingesetzt werden, daher ist ein gutes Datenmanagement entscheidend. Allerdings wird in diesem Beispiel zu Vorführzwecken ein kleiner Datensatz verwendet.

  • Importieren Sie die Daten. 
  • Die Daten werden als „good“ (gut) oder „bad“ (schlecht) gekennzeichnet. Deep Learning unterstützt die Unterscheidung zwischen den beiden Kategorien.
  • Mit der Funktion imageDatastore werden die Bilder automatisch anhand der Ordnernamen gekennzeichnet.
  • Um das Modell zu trainieren, teilen Sie Ihre Daten in zwei Kategorien ein: „Training“ zum Trainieren des Modells und „Testdaten“, um zu testen, wie das Modell mit neuen Daten arbeitet (wichtig für Schritt 4, Modell testen und Ergebnisse visualisieren).
  • Fügen Sie mehr Bilder hinzu, indem Sie die Bilder erweitern. Nutzen Sie für den Code in diesem Beispiel die Spiegelung entlang der x-Achse und y-Achse und drehen Sie die Bilder um bis zu 180 Grad.
  • Klicken Sie auf Run Section (Abschnitt ausführen), um den Code auszuführen.

Schritt 2

Modell importieren

Sie können ein Netz zur Arbeit mit Ihren Testdaten importieren und abändern.

  • Importieren Sie ein Modell, indem Sie den Namen des Netzes auf Ihrem Desktop aufrufen. Falls das Netz noch nicht installiert ist, klicken Sie auf den angezeigten Link und laden Sie das Netz herunter.
  • Bereiten Sie Ihr Modell vor, indem Sie die letzten Ebenen durch neue Ebenen ersetzen, die für Ihre Daten spezifisch sind. Ersetzen Sie beispielsweise die letzte vollständig verbundene Ebene durch eine Ebene mit der Ausgabegröße zwei für die zwei Klassen von Daten, die Sie klassifizieren möchten. Ferner können Sie diesen Schritt auch in einer App mithilfe einer Drag-and-Drop-Methode durchführen.
  • Klicken Sie auf Run Section, um den Code auszuführen.

Schritt 3

Modell trainieren

Mithilfe der Daten und des abgeänderten Netzes können Sie einen neuen Bildklassifikator trainieren. Ihnen steht eine Vielzahl von Trainingsoptionen zur Verfügung. Das Beispiel in diesem Schritt ist eine einfache Trainingskonfiguration mit der Optimierung, der Anzahl der Epochen, der ursprünglichen Lernrate und dem Diagramm. Je nach Ihrer Grafikkarte und CPU kann das Training eines Modells viel Zeit in Anspruch nehmen.

  • Wenn Sie das Modell trainieren möchten, entfernen Sie die Kommentarzeichen von den Codezeilen und klicken Sie auf Run Section (Abschnitt ausführen).
  • Wenn Sie das Modell nicht trainieren möchten, können Sie diesen Schritt überspringen und in Schritt 4, Modell testen und Ergebnisse visualisieren, ein vorab trainiertes Netz laden. 

Schritt 4

Modell testen und Ergebnisse visualisieren

Im letzten Schritt laden Sie das Modell und verwenden die Testdaten, um die Genauigkeit des Modells zu sehen.

  • Klassifizieren Sie die Testdaten (aus Schritt 1, Daten laden und vorverarbeiten) mithilfe der Funktion classify, um alle Bilder in einer Codezeile zu klassifizieren.
  • Zeigen Sie die Ergebnisse an und vergleichen Sie sie mit den tatsächlichen Werten. Die Genauigkeit ist eine Berechnung der richtigen Antworten im Verhältnis zur Gesamtzahl der Testproben.
  • Lesen und klassifizieren Sie einzelne Bilder und visualisieren Sie die Ergebnisse. Wenn das Modell einen Fehler erkennt, nutzen Sie erklärbare KI-Techniken wie beispielsweise GradCAM zur Visualisierung der Position des Fehlers im Bild.

Wichtige Punkte:

  • Verwenden Sie ein flexibles Modell, das nicht nur mit den während des Trainings gelernten Daten, sondern auch mit neuen Daten oder Umständen arbeiten kann. 
  • Mithilfe von Visualisierungstechniken können Sie nachvollziehen, was das Netz „sieht“, und durch zusätzliches Debugging aufdecken, warum sich das Netz auf diese Weise verhält.

Sie können auch dem nachstehenden Video folgen:

Dauer des Videos 5:18
Johanna Pingel

Wenden Sie sich an Johanna, Deep-Learning-Expertin bei MathWorks