Geschichtete Repräsentation von Bildern auf mehreren Abstraktionsebenen
Deep Learning oder tiefgehendes Lernen (deutsch auch mehrschichtiges Lernen oder tiefes Lernen) bezeichnet eine Methode des maschinellen Lernens, die künstliche neuronale Netze (KNN) mit zahlreichen Zwischenschichten (englischhidden layers) zwischen Ein- und Ausgabeschicht einsetzt und dadurch eine umfangreiche innere Struktur herausbildet. Deep Learning erlaubt die Verarbeitung und Analyse komplexer Datenmuster; dazu verwendet Deep Learning tiefe hierarchische neuronale Netze, die automatisch abstrakte Merkmale aus den Daten extrahieren. Dies ermöglicht eine effiziente Verarbeitung komplexer Informationen, was wiederum zu präzisen Vorhersagen und Entscheidungen in verschiedenen Anwendungen führt.
Links: Eingangsschicht (input layer) mit den in diesem Fall drei Eingangsneuronen
Rechts: Ausgabeschicht (output layer) mit den in diesem Fall zwei Ausgangsneuronen
Die mittlere Schicht wird als verborgen bezeichnet (hidden layer), da ihre Neuronen weder Eingänge noch Ausgänge sind. Hier ist nur eine verborgene Schicht zu sehen, aber viele Netzwerke haben deutlich mehr. Die notwendige Anzahl von Ebenen, ab denen man von „Deep Learning“ spricht, ist nicht festgelegt.
Voraussetzungen und Grundlagen
Die in der Anfangszeit der künstlichen Intelligenz gelösten Probleme waren für den Menschen intellektuell schwierig, aber für Computer einfach zu verarbeiten. Diese Probleme ließen sich durch formale mathematische Regeln beschreiben.
Die wahre Herausforderung an die künstliche Intelligenz bestand jedoch in der Lösung von Aufgaben, die für die Menschen leicht durchzuführen sind, deren Lösung sich aber nur schwer durch mathematische Regeln formulieren lassen. Dies sind Aufgaben, die der Mensch intuitiv löst, wie Sprach- oder Gesichtserkennung.
Eine computerbasierte Lösung für diese Art von Aufgaben beinhaltet die Fähigkeit von Computern, aus der Erfahrung zu lernen und die Welt in Bezug auf eine Hierarchie von Konzepten zu verstehen. Hierbei ist jedes Konzept durch seine Beziehung zu einfacheren Konzepten definiert. Durch das Sammeln von Wissen aus der Erfahrung vermeidet dieser Ansatz die Notwendigkeit für die menschlichen Bediener, all das Wissen, das der Computer für seine Arbeit benötigt, formal spezifizieren zu müssen. Die Hierarchie der Konzepte erlaubt es dem Computer, komplizierte Konzepte zu erlernen, indem er sie aus einfacheren zusammensetzt. Wenn man ein Diagramm zeichnet, das zeigt, wie diese Konzepte übereinander aufgebaut werden, dann ist das Diagramm tief, mit vielen Schichten. Aus diesem Grund wird dieser Ansatz in der künstlichen Intelligenz „Deep Learning“ genannt.
Es ist schwierig für einen Computer, die Bedeutung von rohensensorischen Eingangsdaten zu verstehen, wie in der Handschrifterkennung, wo ein Text zunächst nur als eine Sammlung von Bildpunkten existiert. Die Überführung einer Menge von Bildpunkten in eine Kette von Ziffern und Buchstaben ist sehr kompliziert. Komplexe Muster müssen aus Rohdaten extrahiert werden. Das Lernen oder Auswerten dieser Zuordnung scheint unüberwindbar schwierig, wenn sie manuell programmiert würde.
Eine der häufigsten Techniken in der künstlichen Intelligenz ist maschinelles Lernen. Maschinelles Lernen ist ein selbstadaptiverAlgorithmus. Deep Learning, eine Teilmenge des maschinellen Lernens, nutzt eine Reihe hierarchischer Schichten bzw. eine Hierarchie von Konzepten, um den Prozess des maschinellen Lernens durchzuführen. Die hierbei benutzten künstlichen neuronalen Netze wurden inspiriert von Gehirnen, in denen biologischeNeuronen miteinander verbunden sind.
Die erste Schicht des neuronalen Netzes, die sichtbare Eingangsschicht, verarbeitet eine Rohdateneingabe, wie beispielsweise die einzelnen Pixel eines Bildes. Die Dateneingabe enthält Variablen, die der Beobachtung zugänglich sind, daher „sichtbare Schicht“. Die erste Schicht leitet ihre Ausgaben an die nächste Schicht weiter.
Diese zweite Schicht verarbeitet die Informationen der vorherigen Schicht und gibt das Ergebnis ebenfalls weiter. Die nächste Schicht nimmt die Informationen der zweiten Schicht entgegen und verarbeitet sie weiter. Dies geht über alle Ebenen des künstlichen neuronalen Netzes so weiter.
Diese Schichten werden als versteckte Ebenen (englischhidden layers) bezeichnet. Die in ihnen enthaltenen Merkmale werden zunehmend abstrakt. Ihre Werte sind nicht in den Ursprungsdaten angegeben. Stattdessen muss das Modell bestimmen, welche Konzepte für die Erklärung der Beziehungen in den beobachteten Daten nützlich sind. Auch die Struktur der Schichten kann je nach Modell variieren. Die Anzahl der Neuronen pro Schicht definiert die Breite des Netzes. Verschiedene Operationen wie Convolutional Filter, Addition, und Normalisierung beeinflussen die Werte in der Schicht.
Das Ergebnis wird in der letzten, wieder sichtbaren Schicht ausgegeben. Hierdurch wird die gewünschte komplizierte Datenverarbeitung in eine Reihe von verschachtelten einfachen Zuordnungen unterteilt, die jeweils durch eine andere Schicht des Modells beschrieben werden.
Geschichte, Entwicklung und Verwendung
Die Group method of data handling-KNNs (GMDH-ANN) der1960er-Jahre von Oleksij Iwachnenko waren die ersten Deep-Learning-Systeme des Feedforward-Multilayer-Perzeptron-Typs.
Karl SteinbuchsLernmatrix war eines der ersten künstlichen neuronalen Netze, das aus mehreren Schichten von Lerneinheiten oder lernenden „Neuronen“ bestand. Damit war er einer der Wegbereiter des Deep Learning, bei dem es um tiefe neuronale Netze geht, die viele Aufgaben erlernen können, bei denen frühere einschichtige Perzeptronen scheitern.
Sven Behnke hat seit1997 in der Neuronalen Abstraktionspyramide den vorwärtsgerichteten hierarchisch-konvolutionalen Ansatz durch seitliche und rückwärtsgerichtete Verbindungen erweitert, um so flexibel Kontext in Entscheidungen einzubeziehen und iterativ lokale Mehrdeutigkeiten aufzulösen.
Der Begriff „Deep Learning“ wurde im Kontext des maschinellen Lernens erstmals 1986 von Rina Dechter verwendet, wobei sie hiermit ein Verfahren bezeichnet, bei dem alle verwendeten Lösungen eines betrachteten Suchraums aufgezeichnet werden, die zu keiner gewünschten Lösung geführt haben. Die Analyse dieser aufgezeichneten Lösungen soll es ermöglichen, anschließende Versuche besser zu steuern und somit mögliche Sackgassen in der Lösungsfindung frühzeitig zu verhindern.
Heute wird der Begriff jedoch vorwiegend im Zusammenhang mit künstlichen neuronalen Netzen verwendet und tauchte in diesem Kontext erstmals im Jahr2000 auf, in der Veröffentlichung Multi-Valued and Universal Binary Neurons: Theory, Learning and Applications von Igor Aizenberg und Kollegen.
Zwischen2009 und2012 gewannen die rekurrenten bzw. tiefen vorwärtsgerichteten neuronalen Netze der Forschungsgruppe von Jürgen Schmidhuber am Schweizer KI-Labor IDSIA eine Serie von acht internationalen Wettbewerben in den Bereichen Mustererkennung und maschinelles Lernen. Insbesondere gewannen ihre rekurrenten LSTM-Netze drei Wettbewerbe zur verbundenen Handschrifterkennung bei der 2009 Intl. Conf. on Document Analysis and Recognition(ICDAR) ohne eingebautes A-priori-Wissen über die drei verschiedenen zu lernenden Sprachen. Die LSTM-Netze erlernten gleichzeitige Segmentierung und Erkennung. Dies waren die ersten internationalen Wettbewerbe, die durch Deep Learning oder rekurrente Netze gewonnen wurden.
Die jüngsten Erfolge von Deep Learning-Methoden, wie der Gewinn eines Go-Turniers durch das Programm AlphaGo gegen die weltbesten menschlichen Spieler, gründen sich neben der gestiegenen Verarbeitungsgeschwindigkeit der Hardware auf den Einsatz von Deep Learning zum Training des in AlphaGo verwendeten neuronalen Netzes. Gleiches gilt für die seit2020 gelungene Vorhersage von Proteinfaltungen. Diese Netze nutzen künstlich erzeugte Neuronen (Perzeptronen), um Muster zu erkennen.
Tiefe neuronale Netze können eine Komplexität von bis zu hundert Millionen einzelnen Parametern und zehn Milliarden Rechenoperationen pro Eingangsdatum aufweisen. Die Interpretierbarkeit der Parameter und Erklärbarkeit des Zustandekommens der Ergebnisse ist dabei nur noch eingeschränkt möglich und erfordert den Einsatz spezieller Techniken, die unter Explainable Artificial Intelligence zusammengefasst werden.
Eine weitere Begleiterscheinung des Deep Learning ist die Anfälligkeit für Falschberechnungen, die durch geringfügig veränderte Eingabesignale ausgelöst werden können. Ein Angreifer könnte z.B. Bilddaten absichtlich so manipulieren, dass eine Bilderkennung für Bilder, die für einen Menschen normal aussehen, falsche Ergebnisse liefert. Dieses Phänomen wird unter Adversarial Examples zusammengefasst.
Zu Grenzen und Erklärbarkeit von KI gibt es zwei unterschiedliche Konzepte. Bei beiden lassen sich die Logik, die Vorhersagen und die Entscheidungen einer KI nicht einfach ausdrücken.
„Transparente KI“ unterstützt die Ausgabe von Informationen, mit denen auch komplexe Entscheidungen erklärt und für den Menschen verständlich gemacht werden können. So kann die Entscheidungsfindung überprüft und bei Bedarf korrigiert werden. Beispiele sind Entscheidungsbäume und Expertensysteme.
„Opake KI“ unterstützt keine Ausgabe von Informationen, mit denen Entscheidungen für den Menschen verständlich gemacht werden können. Beispiele sind neuronale Netze, Deep Learning und genetische Algorithmen.
Ein bekanntes Beispiel für die Risiken opakerKI ist ein Experiment, das Microsoft im Jahr2016 mit der Veröffentlichung eines Twitter-Chatbots namens Tay durchgeführt hat. In weniger als24Stunden musste Microsoft den Bot abschalten, weil er damit begann, anzügliche und beleidigende Tweets zu verfassen.
Programmbibliotheken
Neben der meist in Schulungsbeispielen zum Verständnis der internen Struktur vorgestellten Möglichkeit, ein neuronales Netz komplett eigenhändig zu programmieren, gibt es eine Reihe von Softwarebibliotheken, häufig Open Source, lauffähig auf meist mehreren Betriebssystemen, die in gängigen Programmiersprachen wie C, C++, Java oder Python geschrieben sind. Einige dieser Programmbibliotheken unterstützen GPUs oderTPUs zur Rechenbeschleunigung oder stellen Tutorials zur Benutzung dieser Bibliotheken bereit. Mit ONNX können Modelle zwischen einigen dieser Tools ausgetauscht werden.
TensorFlow (Python, JavaScript, C++, Java, Go, Swift) von Google
Keras (Python, ab Version 1.4.0 auch in der TensorFlow-API enthalten) – populäres Framework (2018) neben Tensorflow.
Caffe vom Berkeley Vision and Learning Center (BVLC)
PyTorch (Python), entwickelt vom Facebook-Forschungsteam für künstliche Intelligenz
Torch (C, Lua) (Community) und das darauf aufbauende Facebook-Framework Torchnet
François Chollet:Deep Learning mit Python und Keras: Das Praxis-Handbuch vom Entwickler der Keras-Bibliothek. mitp, 2018, ISBN 978-3-95845-838-3.
Ian Goodfellow, Yoshua Bengio, Aaron Courville: Deep Learning: Adaptive Computation and Machine Learning. MIT Press, Cambridge USA 2016, ISBN 978-0-262-03561-3.
Rob F. Walker: Artifical Intelligence in Business: Balancing Risk and Reward, 2017, S.1–23.
Thorsten Hoeser, Claudia Kuenzer: Object Detection and Image Segmentation with Deep Learning on Earth Observation Data: A Review-Part I: Evolution and Recent Trends. Remote Sensing, 12 (10), 2020, S. 1–44. doi:10.3390/rs12101667. ISSN 2072-4292.
Thorsten Hoeser, Felix Bachofer, Claudia Kuenzer: Object Detection and Image Segmentation with Deep Learning on Earth Observation Data: A Review-Part II: Applications. Remote Sensing, 12 (18), 2020, S. 3053. doi:10.3390/rs12183053. ISSN 2072-4292.
↑Herbert Bruderer:Erfindung des Computers, Elektronenrechner, Entwicklungen in Deutschland, England und der Schweiz. In: Meilensteine der Rechentechnik. 2., völlig neu bearbeitete und stark erweiterte Auflage. Band2. De Gruyter, 2018, ISBN 978-3-11-060261-6, Wörterverzeichnis zur Technikgeschichte, S.408 (eingeschränkte Vorschauin der Google-Buchsuche [abgerufen am 23.November 2019]).
↑Li Deng, Dong Yu:Deep Learning: Methods and Applications. In: Microsoft Research (Hrsg.): Foundations and Trends in Signal Processing. Vol. 7, Nr.3-4, 1.Mai 2014, ISSN1932-8346 (englisch, microsoft.com[abgerufen am 22.Februar 2017]).
↑Ivakhnenko, A. G. and Lapa, V. G. (1965). Cybernetic Predicting Devices. CCM Information Corpo-ration.
↑KunihikoFukushima:Neocognitron: A Self-organizing Neural Network Model for a Mechanism of Pattern Recognition Unaffected by Shift in Position. In: Biological Cybernetics. 36. Jahrgang, Nr.4, 1980, S.193–202, doi:10.1007/BF00344251 (englisch, princeton.edu[PDF]).
↑AlexWaibel:Phoneme Recognition Using Time-Delay Neural Networks. Meeting of the Institute of Electrical, Information and Communication Engineers (IEICE), Tokyo, Japan, 1987. 1987 (englisch).
↑Sven Behnke:Hierarchical Neural Networks for Image Interpretation (=Lecture Notes in Computer Science. Band2766). Springer Berlin Heidelberg, Berlin, Heidelberg 2003, ISBN 3-540-40722-7, doi:10.1007/b11963.
↑Rina Dechter:Learning while searching in constraint-satisfaction problems.(PDF; 531 kB)In:fmdb.cs.ucla.edu.University of California, Computer Science Department, Cognitive Systems Laboratory,1985,archiviertvomOriginal(nicht mehr online verfügbar)am16.September 2021;abgerufen am 9.Juli 2020(englisch).Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/fmdb.cs.ucla.edu
↑Alex Graves, Jürgen Schmidhuber: Offline Handwriting Recognition with Multidimensional Recurrent Neural Networks. In: Yoshua Bengio, Dale Schuurmans, John Lafferty, Chris K. I. Williams, Aron Culotta (Hrsg.): Advances in Neural Information Processing Systems 22 (NIPS'22), December 7th–10th, 2009, Vancouver, BC. Neural Information Processing Systems (NIPS) Foundation, 2009, S. 545–552
↑A. Graves, M. Liwicki, S. Fernandez, R. Bertolami, H. Bunke, J. Schmidhuber: A Novel Connectionist System for Improved Unconstrained Handwriting Recognition. IEEE Transactions on Pattern Analysis and Machine Intelligence, Band 31, Nr. 5, 2009.
↑Dirk Eidemüller:Physik-Nobelpreis 2024.In:Welt der Physik.8.Oktober 2024,abgerufen am 13.Januar 2025.
↑John Hertz, Anders Krogh, Richard G. Palmer:Introduction to the theory of neural computation (=Santa Fé Institute studies in the sciences of complexity Lecture notes. Nr.1). Addison-Wesley, Reading, Mass. 1999, ISBN 0-201-51560-1.
↑Leilani H. Gilpin, David Bau, Ben Z. Yuan, Ayesha Bajwa, Michael Specter:Explaining Explanations: An Overview of Interpretability of Machine Learning. In: 2018 IEEE 5th International Conference on Data Science and Advanced Analytics (DSAA). IEEE, Turin 2018, ISBN 978-1-5386-5090-5, S.80–89, doi:10.1109/DSAA.2018.00018 (ieee.org[abgerufen am 8.Dezember 2019]).
↑Keras Documentation.In:Keras: Deep Learning library for Theano and TensorFlow.Abgerufen am 6.März 2017(englisch).
↑Why use Keras?In:keras.io.Abgerufen am 8.Januar 2020(englisch):„Keras is also a favorite among deep learning researchers, coming in #2 in terms of mentions in scientific papers uploaded to the preprint server arXiv.org. Keras has also been adopted by researchers at large scientific organizations, in particular CERN and NASA.“
↑Theano.In:deeplearning.net.ArchiviertvomOriginal(nicht mehr online verfügbar)am8.November 2020;abgerufen am 20.September 2019(englisch).Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/deeplearning.net