Wenn wir etwas Neues lernen, stärkt das neuronale Netz unseres Gehirnes bestehende synaptische Verbindungen und bildet neue Verknüpfungen zwischen Neuronen. Je mehr Synapsen beim Lernprozess generiert und durch wiederholtes Abrufen gefestigt werden, desto höher der Lernerfolg. Diesen komplexen Prozess versuchen künstliche neuronale Netze aufzugreifen – aber verbessern sich auch künstliche neuronale Netze durch wiederholtes Abrufen von Daten? Wie verhält sich hier die Lernrate?
Künstliche neuronale Netze
Künstliche neuronale Netze imitieren den Aufbau und die Informationsverarbeitungsvorgänge eines menschlichen Gehirnes. Im Unterschied zum biologischen Vorbild arbeiten sie mit Zahlen statt Neurotransmittern. Ein künstliches neuronales Netz ist also ein mathematisches Konstrukt.
Dieses besteht aus einer Eingabeschicht, einer Ausgabeschicht, sowie unterschiedlich vielen verborgenen Schichten. Mit der Komplexität der Aufgabe steigt auch die Zahl der Parameter und somit die benötigten Schichten zur Verarbeitung. So löst ein vielschichtiger Algorithmus selbst ohne explizite Vorprogrammierung komplexe mathematische Probleme.
Den Lernprozess besonders vielschichtiger Netze bezeichnet man daher als „Deep Learning“. Dadurch finden neuronale Netze Einsatz in der Sprachanalyse und -erzeugung, der Bildverarbeitung oder der Mustererkennung.
Der Lernprozess neuronaler Netze
Im Lernprozess analysieren künstliche neuronale Netze Muster oder Daten und bilden auf Basis dessen Problemlösungsmodelle. Diese werden durch Trainingsdaten entwickelt, wobei die Erfolgswahrscheinlichkeit anhand der Datenqualität und -menge variiert.
Der Trainingsprozess beginnt mit der Erfassung der Daten an der Eingabeschicht. Daraufhin bewerten und gewichten die Neuronen der verborgenen Schichten diese. An der Ausgabeschicht erfolgt die endgültige Berechnung des Ergebnisses. Jeder Trainingsdurchlauf verbessert durch die Reduktion der aufgetretenen Fehler in der Berechnung das Ergebnis.
Die Lernrate (Learning Rate) beschreibt dabei, wie stark das Netz die Gewichtung einzelner Neuronen in Bezug auf erkannte Fehler nach jedem Durchgang anpasst. Die Höhe der Lernrate bestimmt so auch die Dauer des Trainingsprozesses.
„Overfitting“
Overfitting – So kommt es zustande
Das menschliche Gehirn festigt Informationen durch kontinuierliches Wiederholen. Auch mit neuronalen Netzen können Sie nach kontinuierlichem Training der Daten eine bis zu 100 % korrekte Auswertung erreichen. Allerdings besteht die Möglichkeit, dass sich Ergebnisse beim Einsatz mit Testdaten durch ein solches Nachtraining verschlechtern. Denn nach einer Weile reproduziert das System nur noch die aus den Trainingsdaten ermittelten Lösungen. Somit verarbeitet der Algorithmus nur die Trainingsdaten korrekt und erzielt bei der Eingabe neuer Daten keine neuen Ergebnisse.
Dieses Auswendiglernen der Trainingsdaten bezeichnen Experten als Overfitting oder Überanpassung.
Der Einsatz einer falschen Lernrate führt ebenfalls zu Overfitting. Je vielschichtiger das System, desto länger die Trainingszeit und somit auch desto größer das Risiko eines Overfittings. Eine falsche Gewichtung tritt auch durch eine falsche Auswahl der Testdaten oder einer zu geringen Datenmenge auf.
Verhinderung durch Einsatz von Testdaten
Der Einsatz eines Testdatensatzes und eines zusätzlichen Blindtestdatensatzes zum Trainingsdatensatz verhindert dies. Nutzen Sie dies, erkennen Sie Overfitting daran, dass die Genauigkeit der Ergebnisse bei den Trainingsdaten die der Testdaten übertrifft. An diesem Punkt endet das Training.
Zur abschließenden Überprüfung der Funktionalität des Systems dienen die Blindtestdaten. Wenn der Algorithmus auch mit diesen Daten richtige Ergebnisse erzielt, ist das System valide. Bei iterativen Modellen beugt zudem ein vorzeitiges Stoppen des Trainings einer Überanpassung vor.
Verhinderung durch Dropout-Layer
Eine zu starke Spezialisierung der Modelle unterbindet außerdem das Einsetzen einer Dropout-Layer. Dabei schaltet das System nach dem Zufallsprinzip Neuronen einer Schicht während des Trainings ab. So trainiert bei jedem Durchgang eine unterschiedliche Kombination von Neuronen, was ein Auswendiglernen der Trainingsdaten verhindert. Dies bezeichnen Experten als Regularisierungsmethode. Zudem verbessert die Verwendung einer Dropout-Layer die Trainingsgeschwindigkeit.
Verhinderung durch korrekte Auswahl und Verarbeitung der Testdaten
Zur Vermeidung von Verzerrungen der Modelle ist die Ermittlung relevanter, fachlich belegter Zusammenhänge der Daten im Vorfeld von Bedeutung. So können Sie eine Verfälschung durch die Ermittlung unpassender oder falscher Daten oder durch eine zu geringe Datenmenge vermeiden. Fehler entstehen außerdem durch inkorrekte Beschriftung der Daten. Auch eine zu hohe Lernrate führt zu einer suboptimalen Gewichtung bei der Auswertung.
Bei der Festlegung der Lernrate ist es daher wichtig, sich an einem passenden Maßstab für die Daten zu orientieren. Auch eine schrittweise Reduzierung der Lernrate während des Trainings ist möglich. Die Erhebung einer ausreichend großen, validen Stichprobe und die korrekte Handhabung von Daten und Parametern verhindert somit ebenfalls Overfitting.
Setzen Sie neuronale Netze für die visuelle Qualitätsinspektion metallischer und komplexer Werkstücke ein
Schlechtere Ergebnisse durch Auswendiglernen
Künstliche neuronale Netze orientieren sich zwar an den Lernprozessen des menschlichen kognitiven Systems, bis heute können künstliche neuronale Netze jedoch nicht im Lernprozess die Generalisierungsleistung des Gehirns in Bezug auf Daten erreichen. Stattdessen erfolgt bei neuronalen Netzen im Lernprozess ein Auswendiglernen – die neuronalen Netze sind also nach dem Nachtraining durchaus auch mal schlechter.