WAS IST MASCHINELLES LERNEN UND WAS MACHT ES SO ERFOLGREICH?

Maschinelles Lernen ist die Basis für jene Art der Künstlichen Intelligenz, die aus Beispielen lernen bzw. selbstständig aus Daten die Regeln zur Lösung einer Aufgabe finden kann, ohne auf die Lösung dieses Problems durch menschliche Handlungsanweisungen programmiert worden zu sein. Beispiele sind das Erkennen weißer Linien bei Fahrassistenten, um sich daran zu orientieren, die Unterscheidung und Erkennung von Wörtern und ihrer Bedeutung bei Sprachassistenten (die mit mehreren KIs arbeiten, wobei jede davon eine andere dieser Aufgaben übernimmt) oder das Erkennen von Themen in Kundenemails. In gewisser Weise versucht Machine Learning durch systematisches Lernen anhand von Beispielen eine der vielen Arten zu imitieren, wie Menschen lernen - denken Sie zB daran, dass Kinder sprechen lernen, indem Sie zu bestimmen Objekten immer wieder Namen das Wort „Hund“ oder „Ente“ gesagt bekommen. Computer haben so in den letzten 20 Jahren gelernt auch Probleme zu lösen, deren Regeln durch Menschen entweder nicht vollständig beschreibbar sind oder die uns schlichtweg nicht bekannt sind. Eine besondere Stärke des Maschinellen Lernens ist die riesige Menge an Daten unterschiedlicher Formen wie Tabellen, Texte, Bilder oder Audiodaten, die Computer verarbeiten und auswerten können. Der oft verwendete Begriff „Big Data“ bezeichnet diese Eigenschaft.

Was bedeutet Maschinelles Lernen (Machine Learning)?

Maschinelles Lernen bedeutet datengetriebenes Programmieren von Computern. Mit Hilfe der Regeln, die es aus Beispielen ableitet, kann es in der Zukunft gleichbelagerte Aufgaben lösen. Der Prozess, diese Regeln zu erstellen, wird „Training“ genannt, der Computer sieht dabei ausschließlich zielgenau auf das Problem selektierte Daten, die meistens händisch aufbereitet sind, um dem Computer die zu lösenden Problem zu übersetzen. Dabei werden unterschiedliche Methoden (Machine Learning Algorithmen) verwendet, um die bestehenden Beispiele durchzuarbeiten und allgemeine Regeln zu finden, die sie beschreiben. Machine Learning arbeitet dabei immer mit statistischen Wahrscheinlichkeiten. Wenn uns eine Bilderkennung daher sagt, dass auf einem Foto ein Hund zu sehen ist, ist das die nutzerfreundliche Vereinfachung dafür, dass der Algorithmus das Bild durchsucht und dabei immer Indizien findet, die auf unterschiedliche Objekte hinweisen. Dieses Ergebnis kann er für sich nur in der Form von Wahrscheinlichkeiten aufbereiten („Das Objekt ist entsprechend der gefundenen Muster zu 90% ein Hund, zu 80% eine Katze, zu 50% ein Auto“) und wird dem Nutzer seine Einschätzung mit der höchsten Wahrscheinlichkeit als Ergebnis vorschlagen.

Image alt

Image alt

Abbildung: Zwei Beispiele wie BilderkennungsKIs arbeiten. Im ersten Fall erkennt sie unterschiedliche Hunderassen mit unterschiedlicher Wahrscheinlichkeit auf dem Bild (erkennt mit ihrer obersten Vorhersage die Rasse aber korrekt), auf den zweiten Fall - menschlich anmutender Hydranten - ist die KI nicht trainiert und sagt daher die nächstähnlichen Kategorien aus ihrem Modell vorher. Wir sind hier also weniger im Bereich der Physik, in der der Fall eines Steins mithilfe bekannter Formeln immer genau vorhergesagt werden kann, sondern eher in der Sozialwissenschaft, die versucht mit Regeln zu beschreiben, wie Gesellschaften funktionieren, wobei diese Regeln auch immer ungenau werden können, wenn sich Gesellschaften verändern. Beim Arbeiten mit Künstlicher Intelligenz/Machine Learning ist wichtig zu verstehen, dass sie immer nur Ergebnisse mit bestimmten statischen Unschärfen produzieren kann - genauso wie jede Meinungsumfrage immer eine Schwankungsbreite hat, die aus methodischen Gründen nie ganz beseitigt werden kann. Das ist kein Fehler oder Mangel eines Algorithmus, sondern ein notwendiger Preis dafür, dass Machine Learning dafür Dinge leisten kann, die den Menschen überfordern (zB alle heute in Europa veröffentlichten Zeitungsartikel in Echtzeit nach Themen zu sortieren) oder ihm das Leben mit Anwendungen wie Sprachassistenten vereinfacht, die über traditionelles Programmieren mit Regeln nie alltagstauglich zu bauen waren. Dass Künstliche Intelligenz immer nur Antworten gibt, die auf Wahrscheinlichkeiten beruhen, bedeutet im Umkehrschluss natürlich nicht, dass sie damit nicht auch Aufgaben genauer lösen kann als Menschen, denen ja auch nachgesagt wird, Fehler machen zu können.

Was ist das Ziel von Machine Learning?

Technisch gesprochen ist das Ziel von Machine Learning immer, entweder eine Vorhersage zu machen oder Daten entsprechend einem vorgegebenen Ziel zu clustern (daher Gruppen zu bilden). Beispiele für Vorhersagen wären das Abschätzen des Preises einer Immobilie auf Basis der Preisbildungsregeln, die ein Algorithmus aus einer großen Menge aktueller Daten über Immobilienpreise und Hauseigenschaften gelernt hat. Oder zu klassifizieren, ob auf einem Bild ein Objekt der Kategorie „Hund“ oder „Haus“ zu sehen ist (die Verwendung des Begriffes „Vorhersage“ dafür ist technisch begründet, für das Alltagsverständnis aber zugegebener weise irreführend). Beim Clustern geht es darum aus großen Datenmengen Muster sichtbar zu machen und mit ihnen zu arbeiten. Dabei werden zB aus Kundendaten Gruppen an Menschen mit ähnlichen Eigenschaften für die bessere Segmentierung im Marketing gebildet. Es kann auch eine große Anzahl an Textdokumenten durch Clustern sortiert werden, indem Wortgruppen identifiziert werden, die häufig gemeinsam vorkommen und Hinweise auf die inhaltlichen Themen der Dokumente zulassen.

Ein konkretes Beispiel wie Machine Learning funktioniert: Spamfilter

Um den Unterschied von Machine Learning zur klassischen Art des regelbasierten Programmierens zu verdeutlichen, schauen wir uns vielleicht das Beispiel eines Spamfilters an: im klassischen Zugang Computer zu programmieren stand am Anfang der Mensch, der überlegt hat, wie ein bestimmtes Problem zu lösen ist und was die maßgeblichen Faktoren dabei sind. Auf Basis unserer Beobachtungen wurden dann Regeln formuliert, um dem Computer zu zeigen, wann er E-Mails als Spam Kennzeichnen soll. Erste Versuche in den späten 90er Jahren arbeiteten mit regelbasierten Filtern, die zB bestimmte Absenderadressen aussortierten (die sich aber laufend änderten) oder auf bestimmte Schlüsselwörter wie „Hauptgewinn“ reagierten. Alle Leser, die alt genug sind, um sich an diese Zeit zu erinnern werden wissen, dass diese Systeme nicht besonders gut funktioniert haben. Machine Learning hat es geschafft alltagstaugliche Spamfiltersysteme zu bauen, indem es Computer auf eine große Menge an E-Mails trainiert hat, von der ein Teil als „Spam“ gekennzeichnet war und ein anderer Teil als „normale“ E-Mails. Anders als früher kann Machine Learning durch systematisches Untersuchen der E-Mails nun herausfinden, was alle Spam E-Mails gemeinsam haben, was alle normalen E-Mails gemeinsam haben und selbstständig daraus Regeln ableiten, um das eine vom anderen zu unterscheiden. Dabei würden Computern im Trainingsprozess vielleicht auffallen, dass eine Gemeinsamkeit der Spam-E-Mails eine statistische Häufung von 10 Begriffen ist oder dass zu bestimmten Tageszeiten gehäuft Spam-E-Mails aus einem bestimmten Absenderland kommen. Oder einer Kombination dieser und weiterer Faktoren. Ein anderes Beispiel: Wenn die Aufgabe lautet Katzen- von Autobildern unterscheiden zu lernen, besteht der Trainingsdatensatz aus Fotos von Katzen und Autos, die für den Computer jeweils mit der Information versehen wurden, ob sie eine Katze oder ein Auto darstellen. Machine Learning lernt aus den Pixelkombinationen, die wir als Bild wahrnehmen dann die Muster, die für uns eine Katze oder ein Haus darstellen.

Warum ist Machine Learning dem klassischen Programmieren oft überlegen?

Beim Machine Learning nutzen Computer ihre Fähigkeit gewaltige Datenmengen durchsuchen zu können, die menschliche Experten alleine von der Menge her nie bewältigen könnten. Dabei können sie auch Faktoren untersuchen, die Menschen nicht gut zugänglich sind, um dort Muster zu erkennen, die einem Menschen nie auffallen würden. Computer sehen zB Bilder nur in Form eines Haufens verschiedenfarbiger Pixeln. Für Menschen ist es schwierig diese Informationen zu verarbeiten und daraus Regeln zu definieren, um Computer damit zu programmieren. Machine Learning ist hier allerdings in seinem Element. Grob gesagt sind es diese beiden Eigenschaften Maschinellen Lernens, wodurch sich ihre Leistungsfähigkeit erklärt - von der besseren Auswahl aller möglichen Spielzüge in GO (daher dem Imitieren erfolgreicher Spielstrategien aus der Kenntnis vieler vergangener Spiele) bis zur genaueren Vorhersage von Aktienkursen auf Basis der Analyse der vergangenen Kursentwicklungen und der Zusammenhänge, die Menschen nicht sehen würden. Machine Learning und Programmieren folgen demnach einem ganz unterschiedlichen Prozess: Beim klassischen Zugang des Programmierens muss man vorab selbst lösen, welche konkreten Eigenschaften zB Spam und Nicht-Spam E-Mails unterscheiden, ein Set an Regeln dazu definieren (zB die Filterbegriffe „Hauptgewinn“ oder bestimmte Absenderadressen), nach denen der Computer die Eingangsdaten (in diesem Fall E-Mails) klassifiziert, ob es sich dabei um Spam handelt oder nicht. Ich muss daher vorab wissen, wie ich Spam von Nicht Spam unterscheide, um dem Computer zu sagen, wie er dieses Problem lösen soll. Anders funktioniert Machine Learning: in der Trainingsphase zeige ich ihm E-Mails mit den jeweiligen Ergebnissen (daher markiert ob es sich dabei um Spam handelt oder nicht) und gebe ihm den Auftrag, die Regeln der Unterscheidung aus den Daten selbst zu lernen und in einem Modell abzuspeichern. Dieses Modell kann ich dann verwenden, um meine zukünftig eingehenden E-Mails zu klassifizieren und gegebenenfalls auszusortieren. Während Spam-E-Mails bis Mitte der 2000er Jahre ein wild grassierendes Problem waren konnten erst Machine Learning Systeme es mittlerweile gut in den Griff bekommen. Ein anderes Beispiel: Regenvorhersagen werden traditioneller Weise durch Modelle gemacht, die versuchen auf mehreren Ebenen mittels komplexer Formeln die physikalischen Prozesse in der Atmosphäre zu modellieren. Aus diesem Modell wird dann versucht eine Vorhersage zu treffen, wann es wo wie viel regnen wird. Machine Learning hat hier einen anderen Ansatz eingebracht: mit Hilfe umfangreicher historischer Datensätze, die die Wetterbedingungen enthalten (Luftdruck, Feuchtigkeit, Bewölkung, Winddynamik etc.) und die Kennzeichnung zu welchen Zeitpunkten es wieviel geregnet hat kann Machine Learning daraus Regeln ableiten und damit zukünftigen Regen vorhersagen. Das Sammeln der Daten für diesen Zugang ist oft deutlich einfacher als das Modellieren der komplexen Atmosphäre. Und der Erfolg liegt auch oft in der Kombination beider Methoden. Dieses Beispiel zeigt den Mehrwert von Machine Learning, wenn wir Probleme lösen müssen, die wir nicht in Regeln beschreiben und modellieren können. Machine Learning hat also das Potential Computern Dinge beizubringen, die wir ihm durch vorgegebene Regeln nicht beibringen können, weil wir sie nicht kennen oder nicht passend formulieren können. Diese Tatsache ist maßgeblich für die jüngsten rasanten Entwicklung der Fähigkeiten von Computern verantwortlich. Ein Nachteil dieser Technologie ist aber oft, dass die Entscheidungsregeln für Menschen zwar in Form von Formeln sichtbar sind, aber so umfangreich, dass wir sie nicht interpretieren und verstehen können.

Was genau meint „selbstlernende KI“?

„Selbstlernend“ heißt, dass Computer mit Machine Learning in der Lage sind aus Trainingsdatensätzen selbstständig Muster und Regeln zu erlernen, um vorgegebene Unterscheidungen treffen zu können, ohne dass es menschliche Anweisungen dazu benötigt - zB ob man ein Spam E-Mail vor sich hat oder nicht. Das bedeutet im Umkehrschluss aber keineswegs, dass Computer das alles ohne Menschen tun können - im Gegenteil: Die Datensätze werden ihnen dabei von Menschen zur Verfügung gestellt und oft mit erheblichem Zeitaufwand erstellt, zusammengesammelt, aufbereitet und mit den jeweils zu lernenden Ergebnissen beschriftet (zB ob ein konkretes E-Mail Spam ist oder nicht). Diese umfangreiche Konzeption zum Training einer KI für eine neue Aufgabe ist anspruchsvoll und muss für jeden einzelnen Fall durch Menschen neu gemacht werden - zB indem aus der großen Menge an Machine Learning Methoden bestimmte ausgewählt werden. Dabei ist oft auch der Versuch mehrerer methodischer Ansätze notwendig, um zu einem Ergebnis zu kommen. Es ist auch keineswegs garantierte, dass jedes Machine Learning Projekt zu einem Ergebnis kommt. Wenn wir davon lesen, dass sich KIs permanent durch Daten weiterentwickeln, passiert das technisch gesprochen in den allermeisten Fällen dadurch, dass Experten regelmäßig zusätzliche Trainingsprozesse starten, um zu sehen, ob das Modell durch zusätzliches Training mit neuen, aktuelleren Beispielen seine Arbeit verbessert. Wenn das der Fall ist, wird durch Menschen das neue Modell in die Software eingebaut und angewendet. Es ist keineswegs so, dass KI-Modelle sich ohne menschliche Kontrolle verbessern. Und auch der Fachbegriff „unüberwachtes“ Lernen (unsupervised learning) bedeutet lediglich, dass dem Computer beim Training Daten gegeben werden, die keine Vorgabe enthalten, was genau aus den Daten gelernt werden soll (zB ob ein E-Mail Spam ist) und daher andere, offene Methoden angewendet werden müssen, um zum Ziel zu gelangen. Entwicklungsdesign, -prozess und die Datensätze kommen aber auch hier von Menschen und werden durch sie gesteuert. Zusammenfassend können wir also feststellen, dass der Mensch in der Entwicklung und Weiterentwicklung jeder KI immer notwendig ist und die Kontrolle hat. Das Missverständnis von „Selbstlernender KI“, die nachts auf eigene Initiative hinter unserem Rücken neue Dinge lernt und uns irgendwann damit überrascht, ist technisch gesehen haltlos. Sie wird uns für gute Fernsehunterhaltung aber hoffentlich weiter erhalten bleiben.