Was ist Deep Learning?
Deep Learning ist ein Teilgebiet der AI. Künstliche neuronale Netze werden genutzt, um aus vorhandenen Daten eigenständig zu lernen.
Deep Learning
Wie erkennt ein Computer einzelne Gesichter, wie kann er mit einem Menschen sprechen? Wie fahren autonome Autos, weichen Hindernissen in Sekundenbruchteilen aus oder erkennen Verkehrsschilder? Mit der Lösung solcher Fragen beschäftigt sich die Künstliche Intelligenz – und hier speziell das Teilgebiet Deep Learning.
Grundlage des Deep Learnings sind „tiefe“ künstliche neuronale Netze (englisch: Deep Neural Networks oder DNN). Der Vorteil gegenüber konventionellen Softwarelösungen ist, dass diese künstlichen neuronalen Netze lernfähig sind und riesige Datenmengen verarbeiten können. Und je größer die Menge an Daten sind, desto mehr und besser können die Systeme lernen.
Deep Learning nimmt sich den Aufbau und die Art der Informationsverarbeitung des biologischen, menschlichen Gehirns zum Vorbild – die Nervenzellen und ihre Verbindungen untereinander. Allerdings geht es beim Deep Learning nicht um die exakte Nachbildung der biologischen Netze. Die Experten für Deep Learning entwickeln Modelle, die Informationen ähnlich wie ein Mensch verarbeiten können – es geht um maschinelle Intelligenz.
Mit Hilfe der künstlichen neuronalen Netze lösen Computer selbstkomplexeste Aufgaben, für die keine herkömmlichen Computerprogramme geschrieben werden können.
Für einfache Probleme lassen sich mathematische Regeln formulieren, die Computer einfach verarbeiten können. Weitaus schwieriger ist es, Probleme mit Hilfe von Computern zu lösen, die sich nicht mit mathematischen Regeln beschreiben lassen. Dazu zählen vor allem Aufgaben, die Menschen intuitiv lösen können – wie zum Beispiel die Sprach- oder Gesichtserkennung.
Die Technologie des Deep Learning hat in den vergangenen Jahren enorme Fortschritte gemacht. Das liegt vor allem an der gestiegenen Rechenleistung von Computern.
Eine einfache Definition: Deep Learning
Deep Learning ist ein Teilgebiet des Machine Learnings und damit von AI. Die Technologie nutzt künstliche neuronale Netze. Mit Hilfe dieser Netze kann sie enorm große Datenmengen verarbeiten. Die Technologie lernt aus diesen Daten. Auf diese Weise löst sie eigenständig komplexe Fragen und Probleme.
Wie sind künstliche neuronale Netze aufgebaut?
Künstliche neuronale Netze sind Grundlage des Deep Learning Prozesses. Sie bestehen aus künstlichen Neuronen und ihren Verbindungen.
Ein künstliches Neuron ist eine einfache Recheneinheit, auch Unit oder Knoten genannt. Die Verbindungen zwischen den einzelnen Neuronen sind abstrakte Strukturen, die auch als Kanten bezeichnet werden. Über diese Verbindungen werden Daten übertragen.
Die Verbindungen sind gewichtet. Sie sind also unterschiedlich stark. Auf die Übertragung der Daten wirkt das spezifische Gewicht hemmend oder erregend.
Die einzelnen Neuronen sind in Schichten angeordnet. Jedes neuronale Netz verfügt über eine Eingabeschicht (Input Layer) und eineAusgabeschicht (OutputLayer). Dazwischen liegt eine, meist aber mehrere verborgene Verarbeitungsschichten (Hidden Layers) oder auch Zwischenschichten.
Es kann mehrere Hundert solcher Verarbeitungsschichten geben. Je mehr Schichten es gibt, desto mehr Rechenleistung ist für das Deep Learning erforderlich. Die Zahl der Neuronen und Schichten hängt von der Aufgabe ab und kann genau festgelegt werden.
Die Daten werden von einer Schicht zur nächsten weitergegeben, beginnend mit der Eingabeschicht. Sie ist der Startpunkt der Informationsverarbeitung. In den Neuronen werden die Daten verarbeitet.
Ein Neuron der Eingabeschicht gibt seine Berechnungen an alle Neuronen der nächsten Schicht weiter. Läuft die Weitergabe der Informationen ausschließlich in Richtung der Ausgabeschicht, dann spricht man von einem Feed-Forward-Netz.
Es gibt aber auch Netze, in denen die Daten in andere Richtungen weitergeben werden – zum Beispiel „Rückgekoppelte Netze“ oder „Vollständig verbundene Netze“.
Wie lernen künstliche neuronale Netze im Deep Learning Prozess?
Ihr Aufbau macht „tiefe neuronale Netze“ sehr leistungsfähig. Aber wie lernen solche Systeme? Was genau passiert beim „Deep Learning“?
Der Lernvorgang beim Maschinellen Lernen ist noch recht leicht nachzuvollziehen. Die Programmierer stellen ihrem Algorithmus beim Training bestimmte Ein- und Ausgabewerte zur Verfügung. Alle Werte sind bekannt und korrekt (Überwachtes Lernen).
Nach einigen Rechenvorgängen kann der Algorithmus Beziehungen und Muster zwischen den Ein- und Ausgabewerten erkennen. So lernt er, diese Assoziationen auch auf neue Eingaben anzuwenden.
Die Ergebnisse können die IT-Experten dann mit den bekannten und korrekten Ausgabewerten vergleichen. So können die Entwickler leicht prüfen, wie gut die Ergebnisse sind. Die Ergebnisse wiederum sind die Grundlage für die nächste Trainingsrunde mit dem Algorithmus.
Beim Deep Learning Ansatz hingegen lässt sich der Weg zum Ergebnis von außen nicht mehr nachvollziehen – die Systeme ähneln einer „Black Box“. Die Lernvorgänge laufen in verborgenen Verarbeitungsschichten des künstlichen neuronalen Netzwerks ab (Unüberwachtes Lernen).
Zum Training kommt meist eine Kombination verschiedener Methoden zum Einsatz (überwachtes und unüberwachtes Lernen). Zum Teil werden einem solchen neuronalen Netzwerk für das Deep Learning Ein- und Ausgabedaten, zum Teil aber auch nur Eingabedaten und eine Aufgabe zur Verfügung gestellt.
In einem solchen Fall versucht das Netzwerk, eigenständig Beziehungen zwischen den Informationen herzustellen, Muster zu erkennen und Segmentierungen (Clustering) vorzunehmen.
Ein solches künstliches neuronales Netzwerk lernt, indem die Verbindungsgewichte zwischen den Neuronen verändert und neu gewichtet werden. Auftretende Fehler in der Bewertung von Informationen werden erkannt, in den nächsten Trainingsrunden berücksichtigt – und verbessern die Leistung fortlaufend.
Was das bedeutet, zeigt zum Beispiel das Deep-Learning-Programm AlphaZero. Es wurde 2017 vorgestellt und spielt unter anderem die BrettspieleGo und Schach.
Anders als seine Vorgänger trainierten die Entwickler das Programm aber nicht mit einer umfangreichen Spieldatenbank. AlphaZero erhielt zum Training allein die Spielregeln der Spiele – und lernte dann, indem es gegen sich selbst spielte.
Das Ergebnis: Die AI entwickelte eigene Spielstrategien und fand sogar neue und überraschende Wege zur Lösung von Problemen, die noch nie zuvor von Menschen gefunden worden waren.
Deep Learning vs. Machine Learning: Wo liegt der Unterschied?
Deep Learning ist ein fortgeschrittenes Teilgebiet des Machine Learning.
Während es im Bereich des Machine Learning um Mustererkennung mit Hilfe spezieller Algorithmen geht und keine neuronalen Netzwerke zum Einsatzkommen, nutzen die Experten beim Deep Learning künstliche neuronale Netzwerke.
Mit Deep Learning lassen sich noch komplexere Fragestellungen lösen als mit Machine Learning, vor allem mit Blick auf unstrukturierte Daten und sehr große Mengen von Daten.
Wofür eignet sich Deep Learning am besten?
Wenn große Datenmengen (Big Data) und viel Rechenleistung (Hochleistungs-CPUs und -GPUs) zur Verfügung stehen, können Deep-Learning-Technologien ihre Stärken ausspielen.
Die Technologie kommt heute vorwiegend in der Bilderkennung, sowie Text- und Spracherkennung zum Einsatz. Die Verarbeitung von Bildern spielt zum Beispiel bei der Gesichtserkennung von Facebook, der Bildersuche von Google oder dem Sprachassistenten Alexa von Amazon.
Große Datenmengen fallen auch in Fabriken an. Dies gilt zum Beispiel dann, wenn smarte Sensoren Maschinen überwachen. Mit Hilfe von AI lässt sich dann der beste Wartungspunkt vorhersagen – und zwar nach dem tatsächlichen Bedarf und bevor die Maschine wegen einer Störung ausfällt.
Ähnlich ist es im Straßenverkehr, wenn Kameras und Sensoren von autonomen oder halbautonomen Fahrzeugen in jeder Sekunde unzählige Daten erfassen. Diese Datenmengen zu verarbeiten und in Echtzeit Handlungen abzuleiten – das gelingt nur mit Deep Learning.
Einige Bereiche, in denen Deep Learning zum Einsatz kommt:
- Automobiltechnik (z. B. selbstfahrende Systeme, Fahrerassistenzsysteme)
- Medizinische Diagnostik (z. B. Erkennung von Krebszellen)
- Spracherkennung (z. B. Spracherkennungssystem wie Siri von Apple oder Alexa von Amazon, Übersetzungssysteme)
- Bilderkennung (z. B. Gesichtserkennung von Facebook, Bildersuche von Google, Bilderkennungssysteme in der Industrie)
- Finanzsektor (z. B. Verhinderung von Kreditkartenbetrug, Aktienhandel)
Wofür nutzt Nooxit Deep Learning?
Die SAP-Assistenten der Nooxit nutzen Algorithmen des Machine Learnings und Deep-Learning-Technologien. Der Storno-Assistent zum Beispiel findet potenzielle Stornos, in dem er zuvor mit großen Datenmengen trainiert worden ist. So lernt die AI, wann Stornierungen wahrscheinlich sind – und kann die Anwender in Echtzeit warnen.