Cognitive Computing, AI, ML

Was Sie über KI wissen müssen

23.03.2016 von Katherine Noyes und Simon Hülsbömer
Geht es um Fachbegriffe aus dem Universum der Künstlichen Intelligenz, kommt manch einer durcheinander. Wir schaffen Abhilfe.

Nichtssagende Buzzwords sind in der IT-Welt weit verbreitet - erschwerend hinzukommt, dass kaum zwei Experten unter einem Begriff exakt dasselbe verstehen, wie wir in unserer Web-TV-Rubrik "Bereit, wenn Sie es sind - das Buzzword-Verhör" schon oft feststellen durften…

Zum Video: Was Sie über KI wissen müssen

Das ist im Bereich der Künstlichen Intelligenz, des Cognitive Computing und der denkenden Roboter ein wenig anders - hier ist die Bedeutung zumeist klar, nicht jedoch der passende Begriff selbst. Manchmal bedeuten zwei Begriffe dasselbe - oder kennen Sie einen Unterschied zwischen maschineller Intelligenz und künstlicher Intelligenz? Wie verhält es sich mit Machine Learning und Deep Learning? Wir klären auf.

Oberbegriff KI / AI

"Künstliche Intelligenz" (KI) respektive der englische Ausdruck "Artificial Intelligenz" (AI) bezieht sich auf "eine breite Palette von Methoden, Algorithmen und Technologien, um Software so smart zu machen, dass sie auf Außenstehende wie eine menschliche Intelligenz wirkt", beschreibt es Lynne Parker, Leiterin der Abteilung Information and Intelligent Systems der amerikanischen National Science Foundation. Mit anderen Worten: Machine Learning (ML), maschinelles Sehen (Computer Vision), Natural Language Processing, Robotik und alle weiteren verwandten Themen sind Teil von KI/AI.

Maschinelle Intelligenz = KI

"Einige Leute werden zwischen Maschineller und Künstlicher Intelligenz einen Unterschied ausmachen, es gibt aber keine einheitliche Meinung, dass die beiden Ausdrücke verschiedene Bedeutungen haben", so Parker. Die Verwendung der beiden Begriffe sei regional unterschiedlich - "maschinelle Intelligenz" gehe mehr auf klassische Ingenieursarbeit zurück, die vor allem in Europa vorzufinden sei, erklärt Thomas Dietterich, Professor an der Oregon State University und Vorsitzender der Gesellschaft zur Förderung Künstlicher Intelligenz AAAI. "Künstliche Intelligenz" habe hingegen eine Art "Science-Fiction-Anstrich" und sei in den USA verbreiteter. In Kanada sei beispielsweise auch der Begriff "Computational Intelligence" üblich.

Machine Learning als Allerweltswort

Als Teil von KI beschreibt der Begriff Machine Learning (ML) eine breite Palette von Algorithmen und Methoden, um die Leistungsfähigkeit von Software mit wachsenden Datenmengen zu verbessern. Hier geht es sowohl um neuronale Netze als auch um Deep Learning - beide Begriffe spielen später noch eine Rolle.

"Grundsätzlich geht es beim Machine Learning darum, aus Datenmengen Entwicklungen abzulesen oder Kategorien wiederzuerkennen, in denen sich die Daten einordnen lassen. Sobald die Software dann mit neuen Daten in Berührung kommt, kann sie so passende Entscheidungen treffen", erklärt Parker.

Entwickler-Frameworks für Machine Learning
Apache Spark MLlib
Früher als Teil des Hadoop-Universums bekannt, ist Apache Spark mittlerweile ein bekanntes Machine-Learning-Framework. Sein umfangreiches Angebot an Algorithmen wird ständig überarbeitet und erweitert.
Apache Singa
Singa, seit kurzem Teil des Apache Incubator, ist ein Open-Source-Framework, das Deep-Learning-Mechanismen auf große Datenvolumen hin „trainieren“ soll. Singa stellt ein simples Programmierungsmodell für Deep-Learning-Netzwerke bereit und unterstützt dabei diverse Entwicklungsroutinen.
Caffe
Caffe umfasst ein ganzes Set von frei verfügbaren Referenzmodellen für gängige Klassifizierungsroutinen; die gewachsene Caffe-Community steuert weitere Modelle bei. Caffe unterstützt die Nvidia-Programmiertechnik CUDA, mit der Programmteile wahlweise auch durch den Grafikprozessor (GPU) abgearbeitet werden können.
Microsoft Azure ML Studio
Weil die Cloud also die ideale Umgebung für ML-Anwendungen darstellt, hat Microsoft seine Azure-Cloud mit einem eigenen ML-Service auf der Basis von „pay as you go“ ausgestattet: Mit Azure ML Studio können Nutzer KI-Modelle entwickeln und trainieren und anschließend in APIs umwandeln, um diese wiederum Anderen zur Verfügung zur stellen.
Amazon Machine Learning
Amazon Machine Learning arbeitet mit Daten, die in einer Amazon-Cloud wie S3, Redshift oder RDS liegen und kann mithilfe binärer Klassifizierungen und Multiklassen-Kategorisierung von vorgegebenen Daten neue KI-Modelle bauen.
Microsoft DMTK
Das DMTK (Distributed Machine Learning Toolkit) von Microsoft soll ML-Anwendungen über mehrere Maschinen hinweg skalieren. Es ist eher als "Out of the Box"-Lösung gedacht und weniger als Framework - entsprechend gering ist die Anzahl der unterstützten Algorithmen.
Google TensorFlow
TensorFlow basiert auf sogenannten Data-Flow-Graphen, in denen Bündel von Daten („Tensors“) durch eine Reihe von Algorithmen verarbeitet werden, die durch einen Graph beschrieben sind. Die Bewegungsmuster der Daten innerhalb des Systems heißen „Flows“. Die Graphen lassen sich mittels C++ und Python zusammenbauen und via CPU oder GPU verarbeiten.
Microsoft CNTK
Das Microsoft Computational Network Toolkit funktioniert ähnlich wie Google TensorFlow: Neuronale Netze lassen sich durch gerichtete Graphen erzeugen. Microsofts eigener Beschreibung zufolge lässt sich CNTK außerdem mit Projekten wie Caffe, Theano und Torch vergleichen – sei aber schneller und könne im Gegensatz zu den genannten gar parallel auf Prozessor- und Grafikprozessorleistung zugreifen.
Samsung Veles
Das Samsung-Framework ist dazu gedacht, Datensätze zu analysieren und automatisch zu normalisieren, bevor sie in den Produktivbetrieb übergehen – was wiederum durch eine eigene API namens REST sofort möglich ist – vorausgesetzt, die eingesetzte Hardware hat genügend Power. Der Python-Einsatz in Veles umfasst auch ein eigenes Analyse- und Visualisierungstool namens Jupyter (früher IPython) für die Darstellung einzelner Anwendungs-Cluster.
Brainstorm
Brainstorm setzt auf Python, um zwei Data-Management-APIs („Handers“ genannt) bereitzustellen – eine für CPU-Prozessing durch die Bibliothek „Numpy“ und eine für GPU-Verarbeitung via CUDA. Eine benutzerfreundliche GUI ist in Arbeit.
mlpack 2
Die neue Version der in C++ geschriebenen Machine-Learning-Bibliothek mlpack, die erstmals im Jahr 2011 erschien, bringt eine Menge Neuerungen mit – darunter neue Algorithmen und überarbeitete alte.
Marvin
Der Quellcode von Marvin ist sehr übersichtlich - die enthaltenen vortrainierten Modelle (siehe Bild) ermöglichen aber bereits eine umfangreiche Weiterentwicklung.
Neon
Neon von NervanaSystems ist ein Open-Source-Framework, das auf ein- und abschaltbaren Modulen basiert und KI-Prozesse via CPU, GPU oder Nervanas eigener Hardware ermöglicht.

Als Beispiel dient die Gesichtserkennung. "Ich weiß nicht, wie es genau funktioniert, dass ich das Gesicht meiner Frau wiedererkenne", meint Dietterich. "Das macht es so schwierig, einen Computer genau darauf zu programmieren." Das maschinelle Lernen arbeitet deshalb mit Beispielen. "Es geht mehr um Input-Output als ums Coding", sagt der AAAI-Chef.

Verbreitete ML-Spielarten sind laut Parker künstliche neuronale Netze, Support Vector Machines, Entscheidungsbäume, Bayessche Netze, Nächste-Nachbarn-Klassifikationen, Selbstorganisierende Karten, Fallbasiertes Schließen, Instance-based learning, das Hidden Markov Model und verschiedene Arten der Regressionsanalyse. Wer zu den einzelnen Begriffen mehr wissen möchte, findet ausführliche Informationen über die hinterlegten Wikipedia-Links.

Neuronale Netze vs. Deep Learning

Künstliche neuronale Netze stellen einen besonderen ML-Typ dar, der auf der Funktionsweise des menschlichen Gehirns basiert - auch wenn die wirkliche Vergleichbarkeit laut Parker äußerst gering ist. Es gibt verschiedene Arten neuronaler Netzen - im Wesentlichen basieren aber alle auf einem System von Knotenpunkten, die über unterschiedlich schwere Leitungen miteinander verbunden sind. Die Knotenpunkte werden auch "Neuronen" genannt und sind in mehreren Schichten angeordnet - darunter eine Eingabeschicht, über die Daten in das System gelangen, und eine Ausgabeschicht, über welche die Antworten erfolgen. Zusätzlich findet sich eine oder mehrere versteckte Schichten, auf denen das eigentliche Lernen stattfindet. Typischerweise lernen neuronale Netze durch Gewichtsveränderungen der Querverbindungen zwischen den Knotenpunkten, so Parker.

Neuronale Netze arbeiten wie das menschliche Gehirn - viele Knotenpunkte (Neruonen), dazwischen unendlich viele Leiterbahnen, die an Gewicht zulegen, je mehr Daten verbeitet werden.
Foto: vitstudio - www.shutterstock.com

Der Begriff "Deep Learning" bezieht sich nun auf ein "tiefes neuronales Netz", nämlich eines, das eine sehr große Anzahl Neuronen in verschiedenen versteckten Schichten umfasst. Ein "flaches" neuronales Netz hingegen besteht in der Regel nur aus einem oder zwei versteckten Schichten.

Parker erklärt: "Die Idee hinter dem Deep Learning ist nicht neu, ist aber in jüngster Zeit populär geworden, weil wir heute sehr große Datenmengen besitzen und zudem schnelle Prozessoren, die erfolgreiche Lösungen für schwierige Probleme ermöglichen".

Welche KI-Systeme schon im Einsatz sind
Facebook Big Sur
Das unter Open-Source-Lizenz stehende KI-System setzt auf die Nvidia Tesla Accelerated Computing Platform und übernimmt bei Facebook heute komplexe Aufgaben, für die früher auf Drittanbieter-Hardware zurückgegriffen werden musste.
Google RankBrains
Für Suchanfragen, die erstmalig auftauchen, soll RankBrains menschliche Schriftsprache in mathematische Vektoren übersetzen, die die Suchengine dann verarbeiten kann. Diese Form des maschinellen Lernens wird mit steigender Zahl bislang unbekannter Suchanfragen immer besser. Wissbegierige Internetnutzer trainieren das System quasi unbewusst.
Google Deepmind AlphaGo
Besiegte kürzlich den Welt- und den Europameister im asiatischen Brettspiel Go: das KI-System Alpha Go, das von Google Deepmind entworfen wurde.
SwiftKey Neural Alpha
Wer SMS schreibt, bekommt schon länger Wortvorschläge. Mit Neural Alpha will "n-gram"-Erfinder SwiftKey nun aber auch ganze Satzzusammenhänge vorhersagen und so die Texteingabe noch intuitiver machen.
Open AI
Investor und Tesla-Gründer Elon Musk erforscht in der "Open AI"-Initiative zusammen mit anderen Silicon-Valley-Vordernkern die Künstliche Intelligenz zum Wohle der Menschheit. Damit wir keine bösen Terminatoren bekommen, die uns alle versklaven wollen...
Microsoft XiaoIce
Der Microsoft-"Virtual Social Assistant" XiaoIce trägt seit Ende 2015 den Wettbericht im chinesischen Fernsehen komplett ohne menschliche Hilfe vor.
Roboter-Concierge Connie
Wenn Sie demnächst in einem Hilton absteigen, könnten Sie einem kleinen Roboter-Concierge begegnen: "Connie" arbeitet mit Watson-Technologie von IBM und steht Hotelgästen mit Rat und Tat zur Seite. Das Pilotprojekt läuft gerade in den USA.

Cognitive Computing - es ist kompliziert

Cognitive Computing ist ein weiterer Unterbereich der KI/AI - ist aber nicht ganz so "einfach" zu definieren. Es ist sogar recht kontrovers.

Cognitive Computing bezieht sich laut Parker "auf Computing, das sich mit dem Begründen und dem Verstehen auf einem höheren Level beschäftigt - häufig auf eine Weise, die dem menschlichen Bewusstsein ähnelt - oder zumindest diesem nachempfunden ist." Es dreht sich typischerweise mehr um symbolische und konzeptionelle Informationen als um reine Daten- und Sensorenströme - mit dem Ziel, hochqualifizierte Entscheidungen in komplexen Sachverhalten zu treffen.

Kognitive Systeme setzen eine Vielzahl von Machine-Learning-Techniken ein, sie stellen selbst aber per se keine solche dar. Stattdessen ließen sie sich als "Komplett-Architektur aus verschiedenen KI-Subsystemen, die ineinander greifen" bezeichnen, sagt Parker. "Es handelt sich daher um einen Unterbereich von KI, der sich um kognitives Verhalten kümmert, das wir mit dem Begriff ‚Denken‘ verbinden würden als Gegenteil bloßer Wahrnehmung und motorischer Kontrolle", bringt es Dietterich auf den Punkt.

Ob Cognitive Computing aber tatsächlich ein KI-Bereich oder nur ein beliebtes Buzzword ist, ist nicht abschließend geklärt. "Cognitive ist Marketingquatsch", wettert beispielsweise Gartner-Analyst Tom Austin. "Es impliziert, dass Maschinen denken. Das ist doch Unsinn."

Zum Video: Was Sie über KI wissen müssen