Big Data und Deep Learning So spürt Deep Learning Datenmuster auf

Autor / Redakteur: Michael Matzer / Nico Litzel

Die Zunahme an unstrukturierten Daten wie etwa Bildern, Blogs und Sprachbotschaften macht es ratsam, diese Massendaten automatisch erkennen zu lassen. Deep Learning, ein Unterbereich des Machine Learning, hilft bei der Erkennung dieser Daten und findet Muster in natürlicher Sprache, in Bildern und vielem mehr.

Anbieter zum Thema

Im großen Feld von Artificial Intelligence (AI) bildet Deep Learning eine Unterdisziplin von Machine Learning.
Im großen Feld von Artificial Intelligence (AI) bildet Deep Learning eine Unterdisziplin von Machine Learning.
(Bild: Intel)

Heute „sehen“ und „sprechen“ Computersysteme fast wie Menschen. Die Leistung wird vor allem durch die Rechner-Performance begrenzt. Da es immer mehr Menschen, Organisationen und Rechnersysteme gibt, die miteinander kommunizieren, reicht es längst nicht mehr aus, Menschen in die Erkennung solcher Mitteilungen und Botschaften einzubinden. Die Informationen müssen maschinell verarbeitet werden.

Im Jahre 1965 begannen die ersten Forscher damit, Maschinen beizubringen, Handschriften auf Postkarten und Briefen zu erkennen. Schnell tauchte das Problem der Genauigkeit und Treffsicherheit dieser „Optical Character Recognition“ (OCR) auf. Was heute auf fast jedem Tablet-PC zur Verfügung steht, bedeutete vor rund 50 Jahren einen erheblichen Aufwand an Rechenleistung, an intelligenten Algorithmen und vor allem an Methoden.

Die erste Lösung lautete: Die Systeme müssen selbst lernen und sich selbst optimieren. Das war die Geburtsstunde des Deep Learning.

Einsatzbereiche

Heute sehen wir durch die gewaltigen Fortschritte an Rechenleistung, wie groß die Vorteile sind, die Deep Learning (DL) mit sich bringen kann. Autos können heute autonom fahren, weil sie ihre Umgebung rasend schnell erkennen und interpretieren. Google Voice verleiht jedem PC und Smartphone die Fähigkeit, Spracheingaben in unzähligen Sprachen zu erkennen – nicht nur die natürliche Sprache, sondern auch die Ausdrucksweise eines individuellen Sprechers.

Das ist im Chinesischen, in dem die Bedeutung eines Ausdrucks mit der Tonhöhe wechselt, von besonderer Bedeutung. DL-Systeme erkennen inzwischen Gesichter, Gesichtsausdrücke und sogar Gefühlsausdrücke, also das Mienenspiel eines Menschen. Affektives Computing, wie die Gartner Group es nennt, ist beinahe schon marktreif.

Die Zahl der Anwendungsgebiete ist schier unendlich und reicht von der Betrugserkennung über Fahndungsmethoden bis hin zur Medizin und dem Transportwesen. DL-Algorithmen interpretieren nicht nur durch ihr selbstoptimierendes Lernen, sie geben zunehmend auch Handlungs- und Entscheidungsempfehlungen.

Die ultimative Prüfung für jedes DL-System ist der nach Alan Turing benannte Turing-Test: Gemessen wird, wie gut es einem rechnergestützten System gelingt, einen Menschen nachzuahmen. Wenn der Rechner nicht von einem Menschen (Verhalten, Ausdruck, Wahrnehmung un Ähnliches) zu unterscheiden ist, dann gilt der Test als bestanden.

Bildergalerie

Herausforderungen

Von perfekten Künstlichen Intelligenzen (KI) à la HAL 9000 in Stanley Kubricks Filmklassiker „2001 – Odyssee im Weltraum“ sind die heutigen Systeme noch weit entfernt. Das Gehirn verfügt durchschnittlich über 100 Milliarden Nervenzellen, der größte heutige Rechencluster bringt es nur auf eine Milliarde Knoten. Nicht nur das. Greg Diamos, leitender Forscher im AI Labor im Silicon Valley von Baidu, sagte in einem Interview und auf der International Supercomputing Conference 2016 in Frankfurt/Main: „Der Unterschied zwischen der nachhaltigen Rechenleistung des schnellsten RNN-Trainingssystems (Rekursives Neuronales Netzwerk), das wir bei Baidu kennen, und der theoretischen Spitzenleistung des schnellsten Computers der Welt liegt annähernd beim Faktor 2.500.“

Diamos spricht von Trainingssystemen und RNNs, also rekursiven Neuronalen Netzwerken. Sie sind die am meisten verbreiteten Grundlagen von Deep Learning. Es gibt andere Methoden, so etwa symbolische Verfahren im Text Mining, einer Disziplin des maschinellen Lernens.

Aber DL hat durch Artificial Neural Networks (ANN) seit 2006 einen großen Aufschwung erlebt und wird seit 2016 massiv von Intel, IBM und anderen Schwergewichten unterstützt. Aus einem esoterischen Forschungszweig wird endlich eine Volksindustrie.

Methoden

Eine der großen Herausforderungen beim Machine Learning ist das Auffinden von Merkmalen und das Entwickeln von Funktionen, um diese Suchen zu stützen. Der Programmierer muss dem Algorithmus mitteilen, wonach das System suchen soll, beispielsweise eine Handschrift auf einem Brief.

Den Rechner mit Rohdaten zu füttern, um ihn zu „trainieren“, erweist sich schnell als wenig zielführend. Denn selbst das Erkennen der Kategorie „Katze“ lässt den Rechner, der „sehen“ kann, auf so viele Unterschiede stoßen, dass er kaum zu einem Ergebnis gelangt. Die Treffsicherheit tendiert gegen Null.

Die vielen verschiedenen Modelle des Deep Learning gehen dieses Problem an, indem sie dem Rechner durch Gewichtung beibringen, auf welche Merkmale er sich konzentrieren soll. Wie im Machine Learning wird der Algorithmus fortwährend mit den neuen Ergebnissen gefüttert und kann sich theoretisch selbst optimieren, um seine Genauigkeit zu steigern. „Rekursive Neuronale Netzwerke sind Funktionen, die Sequenzen von Daten umwandeln, beispielsweise ein Audio-Signal in eine textliche Transkription, oder einen englischen Satz in einen chinesischen“, erläutert Greg Diamos. „Andere ANN arbeiten nicht mit Sequenzen (Tonsignale zum Beispiel), sondern mit Daten von fester Länge, zum Beispiel einem Bild mit festen Abmessungen.“

Lernen ist gar nicht einfach

Verschiedene DL-Modelle, die unter anderem in München und Zürich entwickelt wurden, steigern sowohl die Treffsicherheit als auch die Schnelligkeit. Aus Wochen werden Tage, bis ein Trainingslauf beendet ist, aus Tagen werden Stunden und so weiter, bis das Training beendet ist und der Algorithmus auf Testdaten angewandt werden kann. Wenn beispielsweise der Gefühlsausdruck in einem Social-Media-Eintrag analysiert werden soll (Sentiment Analysis), muss das DL-System auch Ironie und Sarkasmus erkennen können.

Neuronale Netze arbeiten in der Regel nicht nur sequenziell-linear wie im Batch Processing, sondern auch in Schichten. In den sechziger und siebziger Jahren gab es nur eine Handvoll Schichten. Dabei werden die Ergebnisse stets von den niederen Ebenen an die höheren Ebenen weitergereicht, damit ein höheres Maß an Abstraktion erzielt wird. Inzwischen werden Ergebnisse zurück oder vorausgeschickt, um das Training zu beschleunigen. Greg Diamos arbeitet heute bei Baidu an einem RNN mit mehreren tausend Schichten.

Aber es gibt, wie der entsprechende Wikipedia-Artikel erwähnt, schon Neuronale Netzwerke mit Millionen Schichten. Faustregel: Je komplizierter das Problem (etwa Erkennung von natürlicher Sprache sowie deren Übersetzung), desto mehr Schichten werden benötigt. Es ist eine Form der Parallelverarbeitung und erfordert entsprechende Kapazität, Programme und Entwickler.

Technologien: GPUs

Dass Deep Learning heutzutage vor allem in Rechenclustern abläuft, liegt, wie gesagt, an der benötigten Rechenleistung: Die Aufgabe wird auf viele verschiedene Rechner verteilt. Mit „Rechner“ sind allerdings zunehmend nicht mehr CPUs gemeint, sondern Grafikprozessoren – GPUs. Sie sind bislang viel besser in der Lage gewesen, Parallelverarbeitung zu erledigen.

Wie Greg Diamos schon erwähnte, ist bei einem Faktor 2.500 zwischen dem IST-Zustand und dem potenziellen Maximum noch eine Menge Luft nach oben. „Das Ziel unserer Arbeit besteht darin, die Skalierbarkeit im Hinblick auf das Trainieren unserer RNNs zu erhöhen, um diese Lücke zu schließen“, sagte er im Interview. Diamos kommt vom GPU-Hersteller Nvidia und kennt sich mit deren Mehrkern-Technik bestens aus.

„Wir gehen so vor, dass wir GPUs auf kleinen Arbeitseinheiten 30-mal effizienter machen, was eine höhere Skalierung erlaubt. Wir erzielen eine 16-fache Steigerung der ,starken' Skalierung, wenn wir von acht GPUs, die nicht unsere Technologie aufweisen, auf 128 GPUs umsteigen, die unsere Technologie besitzen. Unsere Implementierungen von 128 GPUs erhalten einen Zuwachs an Gleitkommarechenleistung (FLOP/s) aufrecht, verglichen mit 31 Prozent auf einer einzelnen GPU.“

Statt also durch Verteilung auf 128 GPUs an skalierbarer Leistung einzubüßen, sieht Diamos fast die gleiche Leistung wie auf einer Einzel-GPU. Er hoffe auf die Entwicklung eines Prozessors (CPU oder GPU), der die Leistung von 10 PetaFLOP/s bei einem Energieverbrauch von 300 Watt/h erbringt – oder die Leistung von 150 ExaFLOP/s bei 25 Megawatt/h. Alle am Supercomputing beteiligten Nationen, von der Schweiz bis Südafrika, sind an dieser Optimierung beteiligt. Der Stand der Dinge wird halbjährlich in der Top-500-Liste aktualisiert, die seit 2016 auch die energieeffizientesten Systeme aufführt.

Deep Learning im Cluster

Wie schon erwähnt, spielen Cluster eine zentrale Rolle im DL-relevanten Trainieren von Neuronalen Netzen. „Die Skalierung des Trainings auf große Clusters ermöglicht das Training von größeren Neuronalen Netzwerken für umfangreichere Datenmengen, als mit irgendeiner anderen Technologie möglich wäre“, fasst Diamos die Lage zusammen.

Glücklicherweise muss kein DL-Forscher mehr einen NN-Cluster selbst bauen, um eine DL-Framework programmieren zu können. „Caffe“ ist ein in der Open-Source-Gemeinde verbreitet genutztes DL-Framework des Berkeley Vision and Learning Center (BVLC). Sowohl Intel als auch IBM haben es in ihre jeweiligen AI-Plattformen integriert.

Caffe kann mit einer einzigen K40-GPU von Nvidia über 60 Millionen Bilder pro Tag verarbeiten. Das entspricht einer Millisekunde (ms) pro Bild für die Inferenz (Vorgabe des vermuteten Befundes) und 4 ms/Bild für die Lernphase.

Doch Caffe muss auf einem Cluster implementiert werden, um leistungsfähig zu sein. Die Universität von Toronto hat 2012 mit AlexNet [PDF] einen Durchbruch erzielt, wobei für die Bilderkennung wie bei Caffe GPUs genutzt wurden. Diese Leistung gilt heute zusammen mit Caffe und ImageNet als Benchmark.

Mittlerweile sind eine Reihe weiterer Neural Network Cluster entstanden, und der Interessent sollte sich informieren, welche überhaupt von seinem bevorzugten Technologielieferanten unterstützt werden. Sie tragen fantasievolle Namen wie Theano, TensorFlow, Torch sowie Apache Singa. Es kann durchaus sein, dass ein Hersteller sein eigenes Süppchen kocht. Das zeigt sich bei den Ankündigungen von Mitte November 2016.

Neuheiten: Intel Nervana

Intel hat am 17. November 2016 seine KI-Plattform vorgestellt: Nervana. Was vorher ein bekannter NN-Cluster war, soll nun performante AI-Lösungen ermöglichen. Der Nervana Graph Compiler stellt NN-Topologien dar und optimiert sie, das Intel DL SDK erlaubt die Erstellung von App auf dem gewählten Framework. Die Software kommt von Nervanas DL-Framework Neon .

Intels jüngste Ankündigungen im AI-Feld umfassen nicht nur CPU-Funktionen, sondern auch die Analytics-Plattform Saffron und Movidius-VPUs.
Intels jüngste Ankündigungen im AI-Feld umfassen nicht nur CPU-Funktionen, sondern auch die Analytics-Plattform Saffron und Movidius-VPUs.
(Bild: Intel)

Die Hardware stellen die Xeon-CPUs, die Xeon-Phi-Koprozessoren und FPGAs (field-programmable gate arrays). Dafür werden zwei Chips entwickelt. „Lake Crest“ ist ein Chip, der hohe Rechenleistung für DL-NNs mit großer Bandbreite vereint, und „Knight's Mill“ ist ein Xeon-Phi-Prozessor, der die bisherige DL-Leistung vervierfachen soll.

Auch die nächste Xeon-Generation, die den Codenamen Skylake trägt, soll Mitte 2017 mit der Technologie AVX-512 eine erhebliche Beschleunigung der Inferenz-Prozesse im Machine Learning erlauben. Was Intel demonstrieren will: Deep Learning ist keine Domäne der GPUs, sondern CPUs können hier ebenfalls punkten, besonders wenn sie über Intels Math Kernel Library MKL und die Data Analytics Acceleration Library DAAL verfügen.

Intel Saffron ist eine Cognitive-Computing-Lösung, die auf In-memory-Reasoning-Prozesse setzt, die auf heterogene Daten angewandt werden. Was ähnlich etwa wie IBM Watson klingt, soll aber auch Platz in kleinen Geräten wie Smartphones und IoT-Endgeräten finden. Entsprechende Programmierschnittstellen sollen unter andrem in Intel-Geräten wie der 3D-Kamera RealSense ihren „Sehnerv“, unterstützen.

Intel beschreibt Movidus wie folgt: „Movidius bietet energiesparende High-Performance-System-on-Chip- Plattformen an, mit deren Hilfe Bildverarbeitungsanwendungen beschleunigt werden können. Zudem werden von Movidius Algorithmen bereitgestellt, die speziell auf die Bereiche Deep Learning, Depth Processing, Navigation und Kartierung sowie natürliche Interaktion ausgelegt sind und haben breites Know-how bei Embedded Computer Visions und Machine Intelligence.“

IBMs neue AI-Plattform PowerAI, die auf dem POWER-Prozessor basiert, unterstützt eine Reihe von neuronalen Netzen und Deep-Learning-Frameworks.
IBMs neue AI-Plattform PowerAI, die auf dem POWER-Prozessor basiert, unterstützt eine Reihe von neuronalen Netzen und Deep-Learning-Frameworks.
(Bild: IBM)

Neuheiten: IBM Power AI

Die IBM charakterisiert ihre ebenfalls Mitte November vorgestellte Plattform „PowerAI“ als Lösung aus Hard- und Software, „die die doppelte Rechenleistung im Vergleich zu vergleichbaren Servern mit vier GPUs bietet, auf denen AlexNet mit Caffe ausgeführt wird.“ Die gleiche Konfiguration soll auch Konfigurationen aus acht GPU-basierten x86-Servern rechts überholen können, solange die IBM-eigene POWER8+-CPU verwendet wird.

PowerAI unterstützt fünf AI-Frameworks, darunter Caffe und Theano. Ebenso wichtig sind die Programmierbibliotheken im Toolkit. Es sind GPU-DL-Libraries für cuDNN, cuBAS und NCCL als Bestandteile des Nvidia-SDKs. Sie sollen es Apps ermöglichen, die Beschleunigung mehrerer GPUs auf den aktuellen, optimierten IBM-Servern der Reihe S822LC zu nutzen (L steht für „Linux“, C für „Cloud“). Die Linux-Distributionen der Wahl sind hierbei RHEL, SLES und Ubuntu 14.4. Für Kunden mit S822LC ist PowerAI kostenlos. Das Toolkit lasse sich auf einem Einzel-Server ausführen wie auch auf großen Supercomputing-Clustern.

Ausblick

Intel will die Leistung von DL-Frameworks binnen dreier Jahre ab 2017 um den Faktor 100 steigern. Intels CEO Brian Krzanich verspricht eine „AI-Revolution“, die in den Startlöchern steht, um die Gesellschaft zu verbessern, sei es in der Krebserkennung, in der Genomforschung, im Bergbau, in der Ausbildung – oder im eingangs erwähnten autonomen Fahren.

Was für IBM Cognitive Computing auf Watson-Basis, das ist bei Intel ein umfassendes Chip- und Software-basiertes Ökosystem von Technologien mit der Bezeichnung „Nervana“. Intel reklamiert 80 Prozent Marktanteil im High Performance Computing für sich und unterstützt kleine Endgeräte sowie IoT. IBM setzt vor allem seine Power-CPU für Server und die Open Power Plattform. Der Interessent hat also immerhin klare Wahlmöglichkeiten.

(ID:44427863)