KI erklärt: Warum nutzen wir eigentlich neuronale Netze?

Die großen Erfolge und Fortschritte, die in den letzten Jahren im Bereich künstliche Intelligenz (KI) und Machine Learning (ML) erzielt wurden, beruhen auf einem grundlegenden Konzept: künstliche neuronale Netze. Für Aussenstehende haben neuronale Netze häufig etwas Mystisches und Abschreckendes, weil man nicht richtig versteht, was da passiert. Und das ist nicht gut, weil es die ernsthafte Auseinandersetzung mit dem Thema KI / ML behindert.

Wenn man im Netz nach neuronalen Netzen sucht, findet man genug Ansätze, die versuchen zu erklären, wie ein neuronales Netz funktioniert. Da tauchen dann Begriffe wie künstliche Neuronen auf, die aktiviert werden, und es wird der Bezug zu menschlichen Neuronen im Hirn hergestellt. Ich glaube aber, dass diese Ansätze nicht zielführend sind. Die ersten Vorträge, die ich zu diesem Thema gehört habe, waren genau so aufgebaut. Und ich habe nix verstanden. Vor allem, weil zwei wichtige Fragen fast nirgendwo erklärt werden:

  • Welche Art Probleme versucht man überhaupt im Bereich Machine Learning zu lösen?
  • Warum sind neuronale Netze das geeignete Werkzeug hierfür?

Diese Lücke möchte ich hier füllen.

Welche Art Probleme wollen wir überhaupt lösen?

Die Grundsätzlichen Anwendungsfelder von Machine Learning und KI sind natürlich bekannt. Hier geht es um Bild- oder Spracherkennung, Chatbots, autonomes Fahren, etc. Mir geht es hier aber um die Struktur der Probleme. Dazu nutze ich ein Beispiel aus dem Bereich Spieleentwicklung, da es weniger abstrakt ist, als z.B. Bild- oder Spracherkennung.

Das Beispiel ist eine Art Fussball. Die beiden Spieler werden dabei über einen Algorithmus gesteuert, um zu versuchen, den Ball im gegnerischen Tor unterzubringen. Zu jedem Zeitpunkt muss das System entscheiden, was der beste nächste Schritt ist, um dem gegnerischen Tor näher zu kommen. Dabei hat der Spieler 4 Optionen: vorwärts, rückwärts, nach links oder nach rechts drehen. Eine vereinfachte Version (ohne Gegner) ist in Bild 1 gezeigt.

Entscheidung Spieler

Bild 1: Die beste Entscheidung ist, einen Schritt vorwärts (roter Pfeil).

Als Mensch erkennen wir sofort, dass die beste Entscheidung einen Schritt vorwärts bedeutet (roter Pfeil). In Bild 2 ist eine andere Situation gezeigt. Hier ist die beste Entscheidung eine Drehung nach rechts, um dem Ball näher zu kommen. Wir müssen für diese Erkenntnis nicht lange überlegen, die Antwort ist intuitiv klar. Dabei beziehen wir die Spielerposition, die Position des Balles und die des Tores ein.

Beste Entscheidung

Bild 2: Die beste Entscheidung ist nun eine Drehung nach rechts.

Genau dies ist auch die Aufgabe des Algorithmus (Bild 3): Unter Einbeziehung der unterschiedlichen Positionen den besten nächsten Schritt errechnen. Natürlich kann man das System besser machen, indem man mehr Eingabewerte nutzt, z.B. die Geschwindigkeiten von Ball und Spieler, oder die Position des Gegners. Aber die grundsätzliche Struktur der Aufgabe bleibt dabei unverändert: aus einen Satz von Eingabewerten muss der richtige Zielwert ermittelt werden.

Aufgabe

Bild 3: Aufgabe des Algorithmus ist es, unter Einbeziehung der unterschiedlichen Positionen die beste Entscheidung zu treffen.

Diese Grundstruktur der Aufgabe ist bei allen Problemen, die wir im Bereich Machine Learning adressieren, gleich. Z.B. muss im Fall der Bilderkennung das System einem Bild das richtige Label zuordnen. Nur ist es der Vorgang abstrakter. Im Fall des Spielers können wir noch in etwa nachvollziehen, wie wir zu einer Entscheidung kommen. Im Fall der Bilderkennung wissen wir zwar, dass das Bild eine Banane darstellt. Wie das Hirn zu dieser Einschätzung kommen, wissen wir aber nicht.

Bild 4: Die Struktur der Aufgabe bleibt auch bei der Bilderkennung erhalten.

Warum nutzen wir neuronale Netze?

Bisher habe ich noch offen gehalten, um was für eine Art Algorithmus es sich bei den Problemen oben handelt. Allgemein versteht man unter einem Algorithmus eine nachvollziehbare Abfolge von Handlungsanweisungen. Klassischerweise entstehen Algorithmen dadurch, dass ein schlauer Kopf ein Problem durchdringt und die Regeln (Handlungsanweisungen) herausfiltert, die zur Lösung notwendig sind. Diese Regeln werden dann in Programmcode umgesetzt (Programmcode ist nichts anderes, als eine bestimmte Art, die Handlungsanweisungen einem Computer zu vermitteln). So ist es möglich, Probleme wie Buchhaltung oder Lagerhaltung über Computerprogramme abzuwickeln. Wir kennen die entsprechenden Regeln und können dem Computer mitteilen, was er zu tun hat.

Entstehung von Algorithmen

Bild 5: Die klassische Entstehung von Algorithmen

Dieser Weg ist grundsätzlich auch für Probleme wie Bild- oder Spracherkennung denkbar. Mit einem Haken: bisher hat es noch niemand geschafft, die notwendigen Regeln hierfür herauszufinden und aufzuschreiben. Und ohne diese Regeln können also einfach keinen klassischen Algorithmus entwickeln, der diese Art von Problemen löst.

Eine anderer Ansatz muss her

Kehren wir nochmal zum Fussball-Beispiel zurück. Was soll der Algorithmus genau machen? Er soll einem Satz von Zahlen – den Positionen von Spieler und Ball – eine Entscheidung zuordnen. Dabei können wir jede Entscheidung mit einer Zahl versehen ( 1 = vorwärts, 2 = rückwärts, etc.). Mathematisch gesehen ist dies eine Abbildung: jedem Satz von Zahlen (Positionen) wird eine Zahl (beste Entscheidung) zugeordnet. Die einfachste Form einer Abbildung ist die lineare Abbildung, d.h. eine Gerade (Bild 5). Dabei wird jedem Wert x ein Wert f(x) über die Gleichung f(x) = ax + b zugeordnet. a und b sind sog. Parameter, die festlegen, wie steil die Gerade verläuft und wo sie die y-Achse schneidet.

Lineare Regression

Bild 5: Die einfachste Form einer Abbildung ist die Gerade.

Bild 5 zeigt gleich eine Anwendung für eine lineare Abbildung: Man kann sie nutzen, um eine Nährung für seine Datenpunkte zu bekommen. Die Kreuze in Bild 5 könnten z.B. Mietpreise in Abhängigkeit von der Wohnungsgröße darstellen. Die Parameter a und b werden nun so gewählt, dass die Gerade möglichst gut mit den Messwerten übereinstimmt. Dies ist die einfachste Form des maschinellen Lernens: Für Wohnung, deren Miete ich nicht kenne, kann ich den Mietpreis abschätzen. Nichts anderes passiert, wenn wir Excel bitten, eine Gerade durch unsere Datenpunkte zu legen.

Für Probleme wie Bild- oder Spracherkennung ist die Lage natürlich viel komplizierter. Hier haben wir tausende von Eingangswerten (z.B. in Form von Bildpunkten), und die Abbildung von diesen Bildpunkten auf eine Kategorie (z.B. “Banane”) ist nicht mehr nur eine einfache Gerade.

Aber hier kommt der Trick. Ein neuronales Netz ist nichts anderes als eine (sehr komplizierte) mathematische Abbildung, nur mit hunderten, tausenden, oder millionen von Parametern wie a und b in der obigen linearen Abbildung. Und jetzt gibt es einen mathematischen Satz, der besagt, dass neuronale Netze jede beliebige nichtlineare Abbildung beliebig gut annähren können. Mit anderen Worten: neuronale Netze sind grundsätzlich in der Lage, die oben beschriebe Art von Problemen zu lösen. Dieser Satz ist unter dem schönen Namen Universal Approximation Theorem bekannt.

Universal Approximation Theorem

Bild 6: Universal Approximation Theorem: Neuronale Netze sind grundsätzlich in der Lage Probleme wie Bilderkennung zu lösen

Also im Gegensatz zum klassischen Programmieransatz haben wir mit neuronalen Netzen die Chance, die gewünschten Probleme zu lösen. Das Lösen des Problems besteht dann i.w. darin, die richtigen Werte für die abertausenden Parameter zu finden. Leider gibt der mathematische Satz nur her, dass es eine Lösung – einen Satz von Parametern – gibt, nicht jedoch, wie man sie findet. Es gibt aber einen zweiten Grund, warum man neuronale Netze nutzt: das System kann die richtigen Parameter selbst lernen. Das ist aber eine andere Geschichte, die wir hier nicht weiter verfolgen.

Was sonst noch?

Ich möchte es an dieser Stelle dabei belassen, den Einsatz von neuronalen Netzen zu motivieren, auch, wenn ich nicht erklärt habe, wie ein neuronales Netz genau funktioniert. Letztlich ist es eine mathematische Abbildung, die in der Lage ist, eine bestimmte Art von Problemen zu lösen, die dem klassischen Programmieransatz verschlossen sind. Es hat nichts damit zu tun, was viele Menschen unter “Intelligenz” verstehen, und nur sehr grob mit dem, wie unser Hirn funktioniert. Daher sind die Begriffe “Künstliche Intelligenz” und “neuronale Netze” auch eher unglücklich, da sie mehr ablenken als aufklären.

Trotzdem: auch, wenn man verstanden hat, was ein neuronales Netz ist und wie es funktioniert, bleibt es faszinierend, dass es funktioniert. Es ist so ähnlich wie beim Lauf der Planeten um die Sonne. Wir verstehen die Gesetzmäßigkeiten und können die Bewegungen erklären. Inzwischen sind wir weiter als die Gallier und keine Angst mehr, dass uns der Himmel auf den Kopf fällt. Trotzdem sind wir fasziniert und eingenommen, wenn wir einen Sonnenuntergang am Meer erleben.

Mehr zum Thema KI und Machine Learning erfahren?

Welt der KI

Unser eintägiger Kurs “Die Welt der KI”

Wer mehr zum Thema erfahren möchte, ist eingeladen, sich zu einem der Kurse “Die Welt der Künstlichen Intelligenz” anzumelden.
 
 
 
 
 
 

Christian Wiele
christian@atnc.ai