Machine Learning (ML), neuronale Netze, und Artificial Intelligence (AI) werden momentan häufig diskutiert und erscheinen allgegenwertig. In diesem Artikel fassen wir kurz die Entwicklung der letzten zehn Jahre zusammen und erklären, wieso dieser Trend in allen Wirtschaftsbereichen immer mehr Anwendung finden wird.
Hintergrund
Bereits in den 1940er Jahren haben Warren McCulloch und Walter Pitts die Grundlagen des Machine Learnings mit ihrer Veröffentlichung „A Logical Calculus of the Ideas Immanent in Nervous Activity“ zu den Themen Neuronen und Nervennetze gelegt.
1957 entwickelte Frank Rosenblatt den Perceptron Algorithmus, der ein vereinfachtes Modell eines biologischen Neurons abbildet. Drei Jahre später entwickelten Bernard Widrow und Marcian Hoff ADALINE, ein frühes künstliches neuronales Netzwerk. Bei diesem waren zum ersten Mal die Gewichte der Inputs von dem Netzwerk erlernbar.
Die Veröffentlichung des Buchs „Perceptrons“ von Marvin Minsky und Seymour Papert 1969 sorgte dafür, dass nach der anfänglichen Euphorie um Machine Learning das Thema an Bedeutung verlor und man in den sogenannten „AI Winter“ geriet. Das Buch stellt neben den Stärken auch die schwerwiegenden Einschränkungen der Perceptrons wie das XOR-Problem vor. Das XOR-Problem stellte deswegen eine solche Hürde dar, weil klassische Perceptrons nur linear separierbare Funktionen auflösen können. Die XOR-Funktion erzeugt aber ein nichtlinear lösbares Gleichungssystem.
Neues Aufleben
David Rumelhart, Geoff Hinton und Ronald Wiliams legten durch Experimente zur Backpropagation 1986 die Grundlage des Deep Learnings. Sie lösten das XOR-Problem in dem sie die Methode der Backpropagation auf mehr schichtige neuronale Netze anwandten.
Ein weiterer großer Schritt im Machine Learning war der Einsatz des Deep Learnings. Deep Learning bezeichnet eine Klasse von Machine Learning Algorithmen, die durch ihre Vielschichtigkeit nichtlineare Probleme lösen können. Dabei verarbeitet jede Schicht die von der darüber liegenden Schicht übergebenen Daten weiter, indem die Daten schichtweise abstrahiert werden.
Machine Learning aktuell
Der Einfluss von AlexNet auf Machine Learning
Besonders im letzten Jahrzehnt gewann das Thema wieder große Popularität. So sorgten insbesondere 2012 Geoff Hinton, Alex Krizhevsky und Ilya Sutskever für großes Aufsehen mit ihrem Convolutional Neural Network AlexNet.
Erfolg bei der Large Scale Visual Recognition Challenge
Mit AlexNet gelang es ihnen bei der seit 2010 jährlich stattfindenden ImageNet Large Scale Visual Recognition Challenge ( ILSVRC ) durch Deep Learning Verfahren ein herausragendes Ergebnis zu erzielen. Bei dieser geht es darum, eine möglichst effiziente Software zur Bilderkennung zu entwerfen. Als Datenbank wird die namensgebende, freie Datenbank ImageNet verwendet. So war das beste Ergebnis im Jahr 2010 eine Fehlerrate von 28,2%. 2011 war die Fehlerrate noch bei 25,7% und das 2. beste Ergebnis aus 2012 besaß immer noch eine Fehlerrate von 26,2%. Dagegen erreichte das AlexNet Team eine Fehlerrate von gerade einmal 16,4%. Dieses Ergebnis hatte in der Fachwelt schnell große Wellen geschlagen, was den Hype um das Machine Learning neu entfachte.
Gründe für den Erfolg von AlexNet
Man kann dieses Ergebnis zum Einen auf Fortschritte in der Theorie von Machine Learning Algorithmen zurückführen. Zum Beispiel sorgte der Einsatz der sogenannten „rectified linear activation unit“ (ReLU) für eine große Steigerung der Effizienz und Geschwindigkeit von Deep Learning Algorithmen. Ebenfalls wurden damit Probleme wie das Vanishing Gradient Problem gelöst. Bei dem Vanishing Gradient Problem handelt es sich darum, dass beim Training der neuronalen Netze gewisse Teile eines Netzes unter Umständen nicht mehr aktiv werden. Im schlimmsten Fall führt dies dazu, dass sich dieses Netz nicht mehr weiter trainieren lässt.
Zusätzlich muss man aber auch erwähnen, dass Hinton, im Gegensatz zu früheren Wettbewerbern, Grafikkarten, durch die 2007 von Nvidia veröffentlichte CUDA Technologie ermöglicht, anstelle von CPUs einsetzte. Diese erlaubt Grafikkarten für generelle Berechnungen einzusetzen. In einer 2006 Studie aus dem Jahr 2006 zeigten Rajat Raina, Anand Madhavan und Andrew Ng, dass durch den Einsatz von Grafikkarten eine bis zu 15 fache Steigerung der Geschwindigkeit beim Training von neuronalen Netzen erreicht werden kann.
Entwicklung nach AlexNet
Das Potenzial hinter diesen Verfahren wurde immer weiter erkannt, weshalb sogar große Unternehmen wie Google anfingen, sich mit dem Thema zu beschäftigen. Weil Machine Learning Algorithmen nichtlineare Probleme lösen können, sind sie beispielsweise zur Realisierung selbst fahrender Autos einsetzbar (z.B. Waymo). Aus diesem Trend entstanden diverse Programmbibliotheken wie Googles TensorFlow, Keras, oder das von der Unversität Montreal ewickelte Theano.
Warum ist es heute Anwendbar?
Machine Learning Verfahren finden mittlerweile große Anwendbarkeit, weil man auf der einen Seite eben diese Tools und auf der anderen Seite die günstige Verfügbarkeit der essenziellen Rechenleistung zur Verfügung stehen hat. So sanken die Preise für Grafikkarten in den letzten Jahren im Verhältnis zur Rechenleistung, wie folgenden Darstellungen zeigen.
Graphics Card | GFLOPS | Price ($) | Publication Year | GFLOPS/€ |
Nvidia GeForce GTX 680 | 3.090 | 500 | 2012 | 6,2 |
Nvidia GeForce GTX 780 | 3.977 | 499 | 2013 | 6,1 |
Nvidia GeForce GTX 780 Ti | 5.046 | 699 | 2013 | 7,2 |
Nvidia GeForce GTX 980 | 4.612 | 549 | 2014 | 8,4 |
Nvidia GeForce GTX 980 Ti | 5.632 | 649 | 2015 | 8,7 |
Nvidia GeForce GTX 1080 | 8.228 | 499 | 2017 | 16,5 |
Nvidia GeForce GTX 1080 Ti | 10.609 | 699 | 2017 | 15,2 |
Nvidia GeForce RTX 2080 | 8.920 | 699 | 2018 | 12,8 |
Nvidia GeForce RTX 2080 Ti | 11.750 | 999 | 2018 | 11,8 |
Entwicklung der Leistungsstärksten Grafikkarten für Machine Learning Anwendungen
Außerdem ermöglichen die 2016 von Google vorgestellten TPU Prozessoren (Tensor Processing Unit) Machine Learning Anwendungen zu beschleunigen. Spätere Generationen aus den Jahren 2017 und 2018 erlauben auch ein beschleunigtes Training der neuronalen Netze. Ebenfalls hilfreich im Einsatz von neuronalen Netzen ist die Möglichkeit auf GPU cluster zurückgreifen zu können, weil sie ein schnelles Training der Netze ermöglichen. So ist es nicht einmal Notwendig, die Berechnungen auf dem eigenen Computer durchführen zu müssen. Stattdessen ist es möglich, die Berechnungen zu sehr günstigen Preisen in Clouds durchzuführen (ImageNet Benchmark).
Anwendungsbereiche
Zu den wichtigsten Anwendungsbereichen von Machine Learning Algorithmen zählt einerseits die Computer Vision. Unter Computer Vision versteht man, einem Computer ein allgemeines Verständnis zur Einordnung von Bildern oder Videos zu ermöglichen und daraus Informationen zu gewinnen. Andererseits zählt die Sprachanalyse und die Auswertung von Texten dazu. Bei der Sprachanalyse bringt man dem Computer bei, allgemeine, gesprochene Worte zu verstehen und diese zum Beispiel in einen geschriebenen Text umzuwandeln. Bei der Textanalyse soll der Computer aus beliebigen Texten Informationen extrahieren können.
Daraus resultieren spannende Anwendungsfälle wie z.B. das Auswerten von Satellitendaten, die Aufwertung von Bildsuchen, die Analyse von öffentlichen Stimmungen oder selbstfahrende Autos.
Profitieren nur internationale IT-Konzerne von dieser Entwicklung?
Die günstige Verfügbarkeit von Rechenleistung, open-source Werkzeuge und die Verfügbarkeit von Daten durch digitale Prozesse, erlaubt es heute fast allen Unternehmen Machine Learning Verfahren einzusetzen. Unternehmen, die von dieser Entwicklung profitieren, starten häufig mit kleinen Projekten, die ihnen helfen die Technologien, den Umgang mit Daten und die Änderungen in den eigenen Prozessen besser zu verstehen.
Zu Bereichen, in denen sich schnell gute Ergebnisse erzielen lassen zählen unter Anderem:
- Automatische Auswertung von Bildern oder Videoaufnahmen
- Vorhersagen von Kennzahlen (Nachfrage, Lagerstände, etc.) auf deren Basis schnellere und bessere Entscheidungen getroffen werden können
- Wissensextraktion aus Dokumenten und großen Textkörpern
- Automatische Klassifizierung von häufig auftretenden Geschäftsvorfällen (zum Beispiel im Banking, Versicherungswesen oder anderen Prüfungsfällen) in automatisch akzeptierbare Anfragen und solche, die weiterhin manuell nachbearbeitet werden müssen