Glossar

Überanpassung

Lernen Sie, wie Sie Overfitting beim maschinellen Lernen erkennen, verhindern und beheben können. Entdecken Sie Techniken zur Verbesserung der Modellgeneralisierung und der Leistung in der Praxis.

Überanpassung ist ein grundlegendes Konzept des maschinellen Lernens (ML), das auftritt, wenn ein Modell die Details und das Rauschen in den Trainingsdaten in einem Ausmaß lernt, das sich negativ auf die Leistung des Modells bei neuen, ungesehenen Daten auswirkt. Im Wesentlichen merkt sich das Modell den Trainingssatz, anstatt die zugrunde liegenden Muster zu lernen. Das Ergebnis ist ein Modell, das bei den Daten, auf denen es trainiert wurde, eine hohe Genauigkeit erreicht, aber nicht auf reale Daten verallgemeinert werden kann, was es für praktische Anwendungen unzuverlässig macht. Eine gute Generalisierung ist ein Hauptziel der KI-Entwicklung.

Wie erkennt man Überanpassung?

Eine Überanpassung wird in der Regel dadurch festgestellt, dass die Leistung des Modells sowohl für den Trainingsdatensatz als auch für einen separaten Validierungsdatensatz während des Trainingsprozesses überwacht wird. Ein häufiges Anzeichen für eine Überanpassung ist, wenn der Wert der Verlustfunktion für den Trainingsdatensatz weiter abnimmt, während der Verlust für den Validierungsdatensatz zu steigen beginnt. Ähnlich verhält es sich, wenn sich die Trainingsgenauigkeit weiter verbessert, aber die Validierungsgenauigkeit in den folgenden Epochen auf einem Plateau verharrt oder sich verschlechtert, ist das Modell wahrscheinlich überangepasst. Tools wie TensorBoard eignen sich hervorragend zur Visualisierung dieser Metriken und zur frühzeitigen Diagnose solcher Probleme. Plattformen wie Ultralytics HUB können auch dabei helfen, Experimente zu verfolgen und Modelle zu bewerten, um eine Überanpassung zu erkennen.

Überanpassung vs. Unteranpassung

Überanpassung und Unteranpassung sind zwei häufige Probleme beim maschinellen Lernen, die das Versagen eines Modells bei der Verallgemeinerung darstellen. Es handelt sich im Wesentlichen um gegensätzliche Probleme.

  • Überanpassung: Das Modell ist zu komplex für die Daten (hohe Varianz). Es erfasst Rauschen und zufällige Schwankungen in den Trainingsdaten, was zu einer hervorragenden Leistung während des Trainings, aber einer schlechten Leistung bei den Testdaten führt.
  • Unteranpassung: Das Modell ist zu einfach, um die zugrunde liegende Struktur der Daten zu erfassen (hohe Verzerrung). Es schneidet sowohl bei den Trainings- als auch bei den Testdaten schlecht ab, weil es die relevanten Muster nicht lernen kann.

Die Herausforderung beim Deep Learning besteht darin, das richtige Gleichgewicht zu finden, ein Konzept, das häufig durch den Kompromiss zwischen Verzerrung und Varianz beschrieben wird.

Beispiele für Überanpassung in der realen Welt

  1. Autonome Fahrzeug-Objekterkennung: Stellen Sie sich vor, Sie trainieren ein Ultralytics YOLO-Modell für ein autonomes Fahrzeug mit einem Datensatz, der nur Bilder von sonnigen Tagesbedingungen enthält. Das Modell könnte bei der Erkennung von Fußgängern und Autos bei hellem Licht hochspezialisiert werden, aber bei Nacht oder bei Regen oder Nebel dramatisch versagen. Es hat sich zu sehr an die spezifischen Licht- und Wetterbedingungen der Trainingsdaten angepasst. Die Verwendung unterschiedlicher Datensätze wie Argoverse kann dies verhindern.
  2. Medizinische Bildanalyse: Ein CNN-Modell wird darauf trainiert, Tumore in MRT-Scans aus einem einzigen Krankenhaus zu erkennen. Das Modell könnte versehentlich lernen, bestimmte Artefakte oder Rauschmuster des speziellen MRT-Geräts dieses Krankenhauses mit dem Vorhandensein eines Tumors in Verbindung zu bringen. Bei einem Test mit Scans aus einem anderen Krankenhaus mit einem anderen Gerät könnte die Leistung des Modells erheblich sinken, weil es sich zu sehr an das Rauschen des ursprünglichen Trainingssatzes angepasst hat und nicht an die tatsächlichen biologischen Marker von Tumoren. Dies ist ein kritisches Problem in Bereichen wie der KI im Gesundheitswesen.

Wie man Überanpassung vermeidet

Mehrere Techniken können eingesetzt werden, um die Überanpassung zu bekämpfen und robustere Modelle zu erstellen.

  • Mehr Daten erhalten: Die Vergrößerung und Diversifizierung des Trainingsdatensatzes ist eine der wirksamsten Methoden, um eine Überanpassung zu verhindern. Mehr Daten helfen dem Modell, die wahren zugrundeliegenden Muster zu lernen und nicht das Rauschen. Sie können eine Vielzahl von Ultralytics-Datensätzen untersuchen, um Ihre Projekte zu verbessern.
  • Datenerweiterung: Hierbei wird der Trainingsdatensatz künstlich erweitert, indem modifizierte Kopien der vorhandenen Daten erstellt werden. Dabei werden Techniken wie zufällige Drehungen, Skalierung, Beschneidung und Farbverschiebungen angewendet. Ultralytics YOLO Datenerweiterungstechniken sind eingebaut, um die Robustheit des Modells zu verbessern.
  • Vereinfachung der Modellarchitektur: Manchmal ist ein Modell zu komplex für den gegebenen Datensatz. Die Verwendung einer einfacheren Architektur mit weniger Parametern kann verhindern, dass sich das Modell die Daten merkt. Zum Beispiel kann die Wahl einer kleineren Modellvariante wie YOLOv8n gegenüber YOLOv8x für kleinere Datensätze von Vorteil sein.
  • Regularisierung: Diese Technik fügt der Verlustfunktion auf der Grundlage der Komplexität des Modells einen Malus hinzu, der von großen Modellgewichten abhält. Gängige Methoden sind die L1- und L2-Regularisierung, über die Sie hier mehr lesen können.
  • Aussteiger: Eine spezielle Form der Regularisierung, bei der ein zufälliger Anteil der Neuronen während jedes Trainingsschritts ignoriert wird. Dadurch wird das Netz gezwungen, redundante Darstellungen zu lernen, und es wird verhindert, dass ein einzelnes Neuron zu einflussreich wird. Das Dropout-Konzept wird hier im Detail erklärt.
  • Frühzeitiges Abbrechen: Dabei wird die Leistung des Modells auf einer Validierungsmenge überwacht und der Trainingsprozess gestoppt, sobald die Validierungsleistung abnimmt, selbst wenn die Trainingsleistung noch zunimmt. Weitere Details finden Sie in einer Erläuterung zum frühzeitigen Stoppen in Keras.
  • Kreuzvalidierung: Bei Techniken wie der K-Fold-Kreuzvalidierung werden die Daten in mehrere Falten aufgeteilt, und das Modell wird auf verschiedenen Teilmengen trainiert und validiert. Dies ermöglicht eine robustere Einschätzung der Generalisierungsfähigkeit des Modells.
  • Modell Beschneiden: Dabei werden Parameter oder Verbindungen aus einem trainierten Netzwerk entfernt, die nur geringe Auswirkungen auf seine Leistung haben, wodurch die Komplexität reduziert wird. Unternehmen wie Neural Magic bieten Tools an, die auf das Pruning von Modellen für eine effiziente Bereitstellung spezialisiert sind.

Werden Sie Mitglied der Ultralytics-Gemeinschaft

Beteiligen Sie sich an der Zukunft der KI. Vernetzen Sie sich, arbeiten Sie zusammen und wachsen Sie mit globalen Innovatoren

Jetzt beitreten
Link in die Zwischenablage kopiert