Grundlagen des maschinellen Lernens
Was ist der Grund dafür, dass sich in einem neuronalen Netz mit vielen gestapelten Schichten die eingangsnahen Schichten schlecht trainieren lassen, wenn als Aktivierungsfunktion die Sigmoidfunktion verwendet wird?
- ADie Ableitung der Sigmoidfunktion beträgt höchstens 0,25; bei der Backpropagation wird der Gradient daher mit jeder Schicht kleiner und ist in den eingangsnahen Schichten fast 0
- BDie Ausgabe der Sigmoidfunktion ist nicht auf den Bereich 0 bis 1 beschränkt, daher wachsen die Werte mit jeder Schicht, und die Berechnung läuft über
- CDie Sigmoidfunktion hat Stellen, an denen sie nicht differenzierbar ist, daher erhalten manche Schichten bei der Backpropagation keinen Gradienten
Antwort und Erläuterung anzeigen
Antwort: A. Die Ableitung der Sigmoidfunktion beträgt höchstens 0,25; bei der Backpropagation wird der Gradient daher mit jeder Schicht kleiner und ist in den eingangsnahen Schichten fast 0
Bei der Backpropagation werden die Ableitungen der Aktivierungsfunktionen aufeinanderfolgender Schichten nacheinander in den Gradienten hineinmultipliziert. Die Ableitung der Sigmoidfunktion, σ(z)(1 − σ(z)), beträgt höchstens 0,25; nach zum Beispiel 10 Schichten schrumpft der Gradient auf 0,25¹⁰ ≈ 9,5 × 10⁻⁷. Das nennt man das Problem des verschwindenden Gradienten (Vanishing Gradient). Gegenmaßnahmen sind ReLU, dessen Ableitung im positiven Bereich 1 ist, Residualverbindungen (Skip Connections), die Signale an Schichten vorbeileiten, eine sorgfältige Wahl der Anfangsgewichte und Batch-Normalisierung.
Weiter: 9 weitere Fragen zu Grundlagen des maschinellen Lernens