Sonntag, November 05, 2017

Künstliche Intelligenz (KI)

Intelligente Maschinen

In den letzten fünf Jahren haben Maschinen erhebliche Fortschritte gemacht Intelligent zu werden, aber wie weit ist es noch bis wir wirklich von Intelligenz sprechen können, wo stehen wir?

Als jemand, der eine Dissertation mit dem Titel "Einsatz von Neuronalen Netzen in der Elektronenholographie"[1] vor 25 Jahren begann und 2001 abgeschlossen hat, will ich darauf einen genaueren Blick werfen.

Die Bausteine der KI

Für künstliche Intelligenz benötigt man drei Zutaten, sehr schnelle Rechner, gute Software, sehr viele Daten.

Schnelle Rechner

Die Geschwindigkeit von Rechnern hat in den letzten Jahren, wie seit hundert Jahren, zugenommen, aber es ging in letzter Zeit etwas unauffälliger voran und das liegt am Aufbau von Computern. Gab es in der Zeit von 1980 bis etwa 2010 einen spürbare Steigerung bei der Prozessorleistung, 8086 (1980, ein MegaFlop pro Sekunde), danach 80386, Pentium, und heute Core i7[2] Prozessoren (2016 50 GigaFlops) ist das eine Steigerung um den Faktor 50.000. (Eine Ursache liegt in der Lernkurve)

Das ist aber nur die halbe Wahrheit, denn die wahre Leistung eines modernen Computers liegt in der Grafikkarte. Um Videospiele in Echtzeit, hochauflösend und realistisch zu gestalten gibt es heute Grafikprozessoren, die tausendmal schneller sind und damit in den Leistungsbereich von Gehirnen vordringen!
Schnellster Rechner auf einer Platine von Nvidia [4]

Aktuell bietet etwa die Firma Nvidia einen Rechner mit acht Tesla100 [3] Prozessoren an, der 
960 000 000 000 000 Rechnungen pro Sekunde 
durchführt [4]. Dabei ist der Computer darauf optimiert, die Datenoperationen, die für Neuronale Netze erforderlich sind, optimal abzuarbeiten. 

Gute Software

Hohe Rechenleistung ist nur nützlich einzusetzen, wenn es geeignete Algorithmen gibt, die die Daten effizient aufbereiten. Künstliche Neuronale Netze (KNN) sind seit über 50 Jahren bekannt und seit den 1970 Jahren gibt es dafür auch einen sehr erfolgreichen Trainings-Algorithmus, den Backpropagation Algorithmus zum Trainieren der KNNs. Allerdings hat 1991 der Informatiker Sepp Hochreiter, geboren 1967 in Mühldorf am Inn (Am gleichen Ort wie der Autor dieses Blogs;), gezeigt [5], dass Backpropagation bei tiefen KNN, also jenen, die besonders "schlau" werden können, versagt. 

LSTM Speicherzelle, Quelle: Wikipedia

1997 ist es dann Sepp Hochreiter gelungen eine Alternative für die Neuronen in den Netzen aufzuzeigen, die Deep Learning ermöglicht. Das Verfahren wird als Long-Short-Term-Memory (LSTM) bezeichnet und ist eine überschaubar komplizierte Erweiterung des ursprünglichen Konzepts. 

Das entscheidende an diesem Verfahren ist eine Art Gedächtnis, das es dem Computergehirn ermöglicht, sich kurzzeitig an Ereignisse zu erinnern, was etwa beim Autofahren oder Texte erkennen entscheidend ist. Die Erfolge, die man aktuell in diesem Gebiet beobachtet, gehen entscheidend auf den Einsatz von LSTM zurück.


Viele Daten

In den Tagen, zu denen ich in den ich in den 1990 Jahren KNN programmiert und trainiert habe, gab es fast keine Daten, die man für das Training verwenden konnte. Ich erinnere mich noch an einen Diplomanden, den ich betreut habe, der achttausend Datensätze für eine Analyse vorbereiten musste.

Völlig anders ist die Situation heute, Täglich werden Milliarden Bilder und Texte ins Internet hochgeladen und stehen zur Verfügung, Big Data eben.

Ein Meer aus Bildern als Datenquelle

Unternehmen, die sich darauf besonders konzentrieren, an vorderster Stelle Google, sind daher auch in diesem Gebiet erfolgreich, wie ich schon 2004 [6] prognostiziert habe.

Und tatsächlich ist es einem Computer von Alphabet (Dachfirma von Google) 2016 [7] gelungen, das sehr schwierige Brettspiel Go gegen den Weltmeister aus Südkorea zu gewinnen (AlphaGo), und nur ein Jahr später war ein Programm aus dem gleichem Hause in der Lage, von 100 Partien gegen diese künstliche Go-Maschine 100 Partien zu gewinnen, also weit jenseits der Go-Intelligenz des Menschen, zu spielen.

Der Weg zur klugen Maschine

Vergleicht man die Situation heute mit dem Stand der Technik vor 25 Jahren, dann hat die künstliche Intelligenz gewaltige Fortschritte gemacht, der Computer gewinnt in Schach (1997), in der Quiz Show "Jeopardy" (2011) und in Go (2016). Er kann leidlich gut übersetzen, Bildinhalte erkennen und zumindest teilweise, Auto fahren. Aber immer haben wir berechtigterweise das Gefühl, der Computer ist dumm im Vergleich zu uns. Doch was fehlt? Jürgen Schmidhuber hat in einem Interview vermutet, es fehlen noch fünf Zeilen Code im Programm von Sepp Hochreiter. Nur welche?

Betrachtet man das menschliche Gehirn, so ist klar, dass die Arbeitsweise eines Neurons, einer Nervenzelle im Gehirn, nicht so besonders komplex ist. Allerdings ist die Verschaltung, und auch das Training, sehr trickreich. Ein Mensch kommt fast blind, taub und stumm zur Welt, nach einigen Monaten kann er Bilder und Worte erkennen, nach einigen Jahren sprechen und nach zwei Jahrzehnten ein Studium abschließen, ist dann also Intelligent (Genauer: Hat einen Bachelorabschluss).

Was ist in der Zeit passiert? Die 100 Milliarden Neuronen (10^11) haben pro Neuron tausende Verbindungen (Synapsen) aufgebaut und jede Sekunde bis zu 100 Nervenimpulse ausgesendet. 
Alles zusammen sind das 10^11*10^3*10^2*20*365*24*60*60 = 6,3* 10^24 Rechenoperationen bis das Studium abgeschlossen ist. Gehen wir davon aus, wir würden den genauen Algorithmus kennen und die Daten in den aktuellen Rechner von Nvidia einspeisen, nach 208 Jahren hätte der Computer den Bachelor Titel. 

Das ist zumindest ein Hinweis, wo wir stehen. In 10 Jahren ist der Computer 100 mal schneller, der Bachelor Titel nach zwei Jahren geholt und der Computer ist intelligent. 

Daher die Prognose: Im Jahr 2029 ist der Computer intelligent wie ein Mensch!

Worin die Gefahren liegen, habe ich im Blog "Glück gehabt" beschrieben.

Quellen:

[1] EINSATZ VON NEURONALEN NETZEN IN DERELEKTRONENHOLOGRAPHIE Dissertation Zur Erlangung des Grades eines Doktors der Naturwissenschaften an der Fakultät für Physik der Eberhard-Karls-Universität zu Tübingen Vorgelegt von Eduard Heindl aus Mühldorf am Inn 2001
[2] Intel-Core-i-Serie, Wikipedia
[3]  Whitepaper: NVIDIA Tesla P100 The Most Advanced Datacenter Accelerator Ever Built Featuring Pascal GP100, the World’s Fastest GPU
[4] Nate Oh, NVIDIA Ships First Volta-based DGX Systems, Anandtech, September 7, 2017
[5] Sepp Hochreiter's Fundamental Deep Learning Problem (1991), Diplomarbeit bei
Jürgen Schmidhuber
[6] Eduard Heindl, Das Google Zeitalter, Vortrag im Studium Generale der FH-Furtwangen am 14. Juni 2004
[7] AlphaGo, Wikipedia






Keine Kommentare: