| Typ | Konzept |
|---|---|
| Quellen | Quelle - Neuronale Netze programmieren mit Python Quelle - Neuronale Netze selbst programmieren |
| Erstellt | 2026-09-27 |
| Aktualisiert | 2026-09-27 |
| Tags | maschinelles-lernen, neuronale-netze, training |
Überanpassung (Overfitting) heisst: Ein Modell lernt die Trainingsdaten so genau, bis hin zu Zufälligkeiten und Rauschen, dass es bei neuen Daten schlechter wird. Es verliert die Fähigkeit zu verallgemeinern. Man erkennt sie an einem Validierungsfehler, der wieder steigt, und bekämpft sie mit Early Stopping, Dropout und mehr (auch künstlich erzeugten) Daten.
Erkennen
Man teilt die Daten auf (siehe Maschinelles Lernen):
- Trainingsdaten zum Anpassen der Gewichte,
- Validierungsdaten, die nie zum Training verwendet werden und die Qualität während des Trainings messen,
- Testdaten für die Schlussbewertung.
Der Trainingsfehler sinkt mit jeder Epoche fast gegen null. Der Validierungsfehler sinkt zuerst mit, steigt ab einem Punkt aber wieder: Dort beginnt die Überanpassung (Quelle - Neuronale Netze programmieren mit Python, S. 228–229). Grosse Netze mit vielen Parametern sind besonders anfällig (S. 228). Rashid beobachtet dasselbe bei zu vielen Epochen auf MNIST (Quelle - Neuronale Netze selbst programmieren).
Gegenmittel
- Early Stopping: Das Training wird am Minimum des Validierungsfehlers beendet, obwohl der Trainingsfehler noch weiter sinken könnte (S. 228–229).
- Dropout (Geoffrey Hinton, Nitish Srivastava): In jedem Trainingsschritt wird zufällig ein Teil der Neuronen (Eingangs- und versteckte Schicht, nicht die Ausgabe) ausgelassen, z.B. mit Rate p = 0,5. Man trainiert so gewissermassen in jedem Schritt ein anderes Teilnetz, und kein Neuron kann sich auf seine Nachbarn verlassen. Es braucht mehr Trainingszyklen, jeder ist aber billiger (S. 229–230). Im MNIST-CNN des Buchs stehen zwei Dropout-Schichten mit 0,5 (S. 239).
- Datenaugmentation: Aus vorhandenen Bildern durch Verschieben, Drehen, Zoomen, Scheren und Spiegeln neue Trainingsbilder erzeugen. Die Klasse ändert sich dabei meist nicht (S. 345–346). In Keras erledigt das
ImageDataGenerator. Rashid erreicht mit gedrehten Ziffern 97,9 % auf MNIST. - Weniger Merkmale: Unnötige Merkmale verschlechtern die Verallgemeinerung (Fluch der Dimensionalität, siehe Feature Engineering).
Verwandt, aber nicht dasselbe, ist die Sättigung: Das Netz lernt kaum noch, weil die Gradienten zu klein sind (siehe Aktivierungsfunktion).
Überanpassung ist keine Besonderheit neuronaler Netze. Dasselbe passiert jedem Modell mit zu vielen freien Parametern, etwa einem Polynom hohen Grades durch wenige Messpunkte (siehe Funktion). Die Gegenmittel folgen einem Muster: das Modell einschränken (Dropout, weniger Merkmale), mehr Daten geben (Augmentation) oder rechtzeitig aufhören (Early Stopping). Beim Lernen für Prüfungen heisst Überanpassung „auswendig lernen statt verstehen“.
Verwandt
- Maschinelles Lernen – Trainings-, Validierungs- und Testdaten
- Faltungsnetz – Dropout und Augmentation im CNN-Training
- Künstliches neuronales Netz – Epochen und Lernkapazität
- Feature Engineering – Datenaugmentation, Fluch der Dimensionalität
- Gradientenverfahren – Epochen, Lernrate und wann man aufhört
