Wir leben in einem Zeitalter der Daten, in welchem immer mehr Menschen freiwillig Daten an die Cloud liefern: Öffentliche Plätze werden von Kameras beobachtet, Familien lassen sich von "smarten" Lautsprechern belauschen, Fitnessbegeisterte übermitteln ihre Vitaldaten in die Cloud, Einkaufslisten werden an Lieferanten übermittelt, in Instagramm oder Facebook wird minutiös die Lebensgeschichte dokumentiert,...
Diese Daten sind heutzutage viel Wert, denn aufbauend auf einer geeigneten Analyse lassen sich Informationen herausfiltern, mit deren Hilfe Werbung gestaltet und platziert werden kann, so dass erwünschtes Konsum- oder Wahlverhalten gefördert werden kann. In diktatorischen Staatsformen können störende Individuen leicht identifiziert werden und vieles mehr.
In den letzten Jahren ist wegen immer mehr verfügbarer Daten das Problem entstanden, dass die riesigen Datenmengen nicht mehr zeitnah sinnvoll ausgewertet werden können, weswegen sie an Wert verlieren. Viele Daten-Analyse-Projekte scheitern.
Die Herausforderung für die Algorithmiker besteht darin, den Prozess der Datenanalyse weitgehend zu automatisieren. Aufgrund der riesigen Datenmengen scheitern aber viele Algorithmen daran, aus großen Datenmengen sinnvolle und nutzbare Informationen zu extrahieren. Deswegen beobachtet man zunehmend, dass erfolgreiche Datenanalyse-Projekte eine automatisierte Datenanalyse einsetzen, die maschinelles Lernen in den Analyse-Prozess einbindet.
Die Datenmengen wachsen oft so stark an, das auch mit Hilfe maschinellen Lernens Analyseprojekte nicht in der gewünschten Zeit abgeschlossen werden. Aus diesem Grund entwickelt man automatisiertes maschinelles Lernen, bei welchem sich ein Lernalgorithmus selbst weiter entwickelt.
Die Algorithmik ist inzwischen an einem Entwicklungsstadium angekommen, bei welcher die automatische Automation der Datenanalyse automatisiert wird. Oder anders ausgedrückt die Datenanalyse wird von Algorithmen ausgeführt, welche von maschinellen Lern-Algorithmen entwickelt wurden. Und die maschinellen Lern-Algorithmen werden von Algorithmen automatisiert weiterentwickelt.
Ein Beispiel:
Es gibt Computerprogramme, denen das Brettspiel Go beigebracht wurde, indem die Spielregeln einprogrammiert und Spielstrategien als Algorithmen formuliert wurden. Diese Programme hatten nie eine Chance gegen menschliche Profi-Spieler.
Im März 2016 siegte das Computerprogramm AlphaGo gegen einen der besten menschlichen Spieler Lee Sedol. AlphaGo wurde mit einer riesigen Anzahl an gespielten Go-Spielen gefüttert und entwickelte selbst basierend auf Algorithmen des maschinellen Lernens Gewinn-Strategien.
Im Jahr 2018 entwickelte man das Programm AlphaGo Zero, dem man lediglich die Spielregeln mitteilte und das man gegen sich selbst spielen ließ. Indem man umfangreiche neuronale Netze als grundlegende Architektur programmierte und Lernalgorithmen des verstärkenden Lernens im Zusammenspiel mit ausgefeilten Suchalgorithmen einbaute, konnte sich das Programm das spielen selbst beibringen und besiegte nach kurzer Zeit das Programm AlphaGo. Als man AlphaGo die Spielregeln von Schach beibrachte, konnte es mit nur 4 Stunden Trainingszeit, das bis dahin weltbeste Schachprogramm schlagen.