Neuronale Netze - Teil 2

Computer sind von Haus aus erst einmal keine besonders cleveren Maschinen. Sie verstehen Nullen und Einsen, Strom fließt oder Strom fließt nicht. Sie nehmen Eingaben entgegen, führen Berechnungen durch und liefern eine Ausgabe. Können sie wirklich intelligent sein?

Neuronale Netze - Teil 2

Im ersten Teil haben wir ein neuronales Netzwerk skizziert und die Gewichte zwischen den einzelnen Neuronen als das eigentlich Elementare in einem solchen Netzwerk herausgestellt. Aber warum ist das so? Um dies zu klären gehen wir zunächst einige Schritte zurück.

Computer rechnen nur!
Ein Computer ist zunächst einmal keine besondere intelligente Maschine. Computer können zwar beispielsweise Millionen Zahlenpaare in kurzer Zeit addieren, aber intuitiv erkennen, was auf einem Foto ist, ist für Computer eine sehr schwere Aufgabe. In der Regel übernimmt ein Computer eine Eingabe, führt mit dieser Eingabe einige Berechnungen durch und liefert eine Ausgabe. Hiervon unterscheiden sich auch die neuroyalen Netzwerke nicht. Wenn wir für eine Aufgabe bereits einige Ergebnisse kennen, aber nicht genau wissen, wie die Berechnung durchgeführt wird, können wir versuchen es mithilfe eines Modells abzuschätzen. Durch anpassen der Parameter des Modells können wir das Modell dann immer weiter verfeinern. Die Anpassung erfolgt hierbei immer im Hinblick darauf, wie falsch das Modell verglichen mit den bereits bekannten Ergebnissen ist.

Wir verdeutlichen diese Vorgehensweise einmal am Beispiel einer Währungsumrechnung. Nehmen wir an wir tauschen auf einer Bank 100 Euro in Dollar und erhalten dafür 122 Dollar. Wir erkennen in diesem Beispiel leicht, dass der Wechselkurs für einen Euro 1,22 Dollar entspricht und können somit auch leicht beliebige Eurogrößen umrechnen. Nehmen wir aber einmal an, wir kennen den Kurs und auch die Berechnung nicht, wissen nur, dass die Beziehung zwischen Euro und Dollar linear ist. Sprich, für mehr Euro erhält man auch mehr Dollar.

Die Berechnung muss also folgende Form haben: Dollar = Euro x Wechselkurs

Nun könnten wir durch einsetzen und umstellen natürlich sehr leicht den Wechselkurs von 1,22 errechnen. Wir wollen aber verstehen, wie neuronale Netze funktionieren und gehen daher den oben beschriebenen Weg mit anpassen und verfeinern. Wir testen die Formel zunächst mit einem Zufallswert und setzen den Wechselkurs auf 1,10

    Dollar = 100 Euro x 1,10

Bei einem Wechselkurs von 1,10 würden wir folglich 110 Dollar erhalten. Wir wissen aber, dass wir für 100 Euro 122 Dollar enthalten. Unsere Berechnung hat daher einen Fehler von in Summer 12 Dollar. Da es sich um eine lineare Funktion handelt, muss der Wert für den Wechselkurs also Höher sein. Wir testen die Formel mit dem höheren Wert 1,20 neu.

    Dollar = 100 Euro x 1,20

Bei einem Wechselkurs von 1,20 würden wir für 100 Euro 120 Dollar erhalten. Es liegt also immer noch ein Fehler von 2 Dollar vor, d.h. der Wechselkurs muss noch etwas höher sein. Testen wir nun mit einem Wechselkurs von 1,25.

    Dollar = 100 Euro x 1,25

Nun erhalten wir 125 Dollar, was wie wir wissen 3 Dollar zu viel sind. Wir haben also einen Fehler von -3 Dollar. Das ist schlechter als das vorherige Ergebnis, bei dem der Fehler nur bei 2 Dollar lag. Wir gehen daher wieder einen kleinen Schritt zurück, immer im Hinblick auf den Fehler. Bei einem Wechselkurs von 1,20 liegt der Fehler bei 2, bei einem Wechselkurs von 1,25 liegt der Fehler bei -3, ein treffenderer Wechselkurs muss daher zwischen 1,20 und 1,25 liegen. Betrachtet man die beiden Fehlergrößen müsste der Wert ziemlich genau in der Mitte zwischen 1,20 und 1,25 liegen. Wir testen mit einem Wechselkurs von 1,22.

    Dollar = 100 Euro x 1,22

Und siehe da, diesmal liegen wir richtig. Bei einem Wechselkurs von 1,22 erhalten wir für unsere 100 Euro 122 Dollar.

Diese simple Methode stellt vereinfacht den Lernprozess in einem neuronalen Netz dar. Durch schrittweise Verfeinerung des Wechselkurses mit einem Korrekturwert, der einen bestimmten Bruchteil des zuvor ermittelten Fehlers entspricht, nähern wir uns dem korrekten Wert des Wechselkurses. Ein großer Fehler bedeutet, dass eine größere Korrektur nötig ist, für einen kleinen Fehler muss eine kleinere Korrektur angesetzt werden. In unserem kleinen Modell wird ein unbekannter Wert mit einem Modell durch anpassen eines Parameters und Vergleich mit einer bereits bekannten Lösung immer weiter verfeinert, bis die Lösung erreicht ist.

Ein Computer kann diese wenigen Schritte natürlich in Millisekunden durchführen und das korrekte Ergebnis errechnen. Es bleibt aber eine Berechnung. Nehmen wir als der künstlichen Intelligenz eine erste Mystik. Computer rechnen nur!

Alle Computersysteme übernehmen eine Eingabe, führen Berechnungen durch und liefern eine Ausgabe. Hiervon unterscheiden sich auch neuronale Netze nicht.

Foto: fotolia - © phonlamaiphoto

Fortsetzung folgt.