Freitag, 22. September 2017

„Artificial Intelligence“ und Neuronale Netze - als kleine Seminararbeit!

„Artificial Intelligence (AI)“ ist ein Zweig der Computerwissenschaften, der tatsächlich für Furore sorgen dürfte. Was ist das? Was bedeutet das?

 Artificial Intelligence“ (AI) wird ins Deutsche gerne mit dem Begriff „Künstliche Intelligenz“ (KI) übersetzt. Das trifft es nicht ganz. „Artificial“ bezieht sich eher auf so etwas wie „sehr schlaue Vorgehensweise oder Handwerkskunst“. Auch „Intelligence“ ist nicht mit Intelligenz gleichzusetzen. Die „CIA – Central Intelligence Agency“ ist ja auch keine „zentrale Intelligenz – Agentur“. „Erkenntnis“, das „Gewinnen von Informationen“ auf eine „schlau, diffizile Art“, das trifft es eher. Bei AI oder der KI handelt es sich daher eher um Programme, die mit ausgeklügelten Mechanismen / Algorithmen eine verlangte Art von Informationen synthetisieren.
Nun tauchen in den letzten Jahren zunehmend Artikel in Zeitungen und Fachpublikationen auf, die sich dem Thema widmen. Muske Gründer von Tesla warnen vor den Auswirkungen des Technologieeinsatzes. Die Kanzlerin würde wohl auch hier davon sprechen, dass wir Neuland betreten.
KI ist eigentlich ganz einfach erklärbar. Sie grenzt sich ab von den „normalen“ Computerwissenschaften. Bei der „alten“ Informatik geht es schlicht darum, Regeln in Form von Algorithmen zu formulieren und stur abzuarbeiten. Ein Programm geht seinen Programmcode schlicht sequentiell (Schritt für Schritt) durch. Wenn es „Wenn – Dann – Fälle“ gibt („Wenn der 13.03.2018 ein Sonntag ist, dann starte um 4:30 die Mars-Expedition), dann wird in einem Programm verzweigt. Der eigentliche Clou liegt in der Möglichkeit, Wiederholungen mit der Abfrage von Zählerständen einzusetzen:  „Solange Dein Weinfass nicht geleert ist (Inhalt Weinfass > Null) verkaufst Du Wein“!
Klingt einfach. Kann man komplizierter machen! Wie legt mensch mit Hilfe eines Computerprogramms fest, wann und wie ein ICE zu warten sei!?!? Menschen sind schlau, manche mögen Kreuzworträtsel. Es gibt Menschen, die es lieben, „mehrere Millionen Zeilen“ in irgendeiner Computer – Sprache zu schreiben. Mehrere Millionen Zeilen produzieren aber unausweichlich alle 2.000 Zeilen mindestens einen Programmierfehler. Und manche Probleme sind so komplex, dass man sie nicht im Detail abbilden kann. Oder, es ist einfach zu wenig Wissen vorhanden. Wissenschaftlich ausgedrückt gibt es Probleme, die „hochgradig indeterminiert“ sind. Bei diesen Problemen besteht die Gefahr einer „kombinatorischen Explosion“. Welcher Kreuzworträtselversteher kann hier erfolgreich sein?
Da kommt der „Ausweg KI“ ins Spiel!
„Künstliche Intelligenz“ hat zwei relevante Ausprägungen. Es gibt „Regelbasierte Systeme“ und es gibt „Neuronale Netze“. Und den Rest halt, Robotic and such. In diesem Text werden Neuronale Netze betrachtet
Neuronale Netze versuchen als Anspruch, das menschliche Gehirn imitieren zu können. Die Biologie irgendwelcher Gehirne ist keinesfalls verstanden oder gar im Detail nachvollziehbar. Aber! Auch einfache Gehirne von irgendwelchen Tieren arbeiten vernetzt. Nervenzellen sind mit tausenden oder millionen anderer Nervenzellen verbunden / verknüpft. In den einzelnen Nervenzellen / Nervenknoten oder schon auf dem Weg dahin findet jeweils eine Art von „Logik“ statt. Das Gehirn von Fliegen ist klein. Dennoch können die kleinen Biester an Decken landen. Versuchen Sie das mal selbst mit Flügeln.
Solche „faszinierenden, diffizilen Techniken“ versucht man mit Neuronalen Netzen zu imitieren. „Nervenknoten“ werden durch Speicherelemente auf Speichermedien (z. B. Festplatten) mit möglichst tausenden Attributen abgebildet. Zwischen diesen Speicherknoten (mit möglichst vielen Attributen / Adjektiven) werden „Zeiger“ / Links (logische Verweise von Knoten A zu Knoten B oder zu allen Knoten XYZ oder mit z. B. der Logik  –A + –B = C) gesetzt. Die Logiken und Strukturen sind am Anfang überbordend gewählt. Je mehr Zeiger mit desto mehr Logiken, umso besser. Ein Neuronales Netz ist zwar zu Beginn nackt. Aber natürlich lernt der Mensch aus seiner Erfahrung und baut jeder neuen Version eines Neuronalen Netzes ein paar Grundlogiken oder Heuristiken ein. Eingangsdaten werden systematisch aufgesplittet, um die Masse der Eingangsdaten bewußt zu steigern. Oder sie werden eingeengt, um die Komplexität zu senken.
Danach werden die Systeme letztendlich in drei Schrittenangelernt“. Jedes Anlernen kann schief gehen! Jedes Anlernen ist „teuer“ und „kostenintensiv“.
Nehmen wir das Beispiel „Kaninchenerkennung“! Google startete das Projekt, um ein Neuronales Netz darauf zu trainieren, gezeichnete Kaninchen erkennen zu können. „Nicht weniger als die gesamte Menschheit war und ist also seitdem  (dazu) aufgerufen, in maximal 20 Sekunden eine Zeichnung“ eines Kaninchens bei Google anzufertigen. Und Hunderttausende machten mit.  Diese Bilddaten werden als Input (Eingabedaten) für das Neuronale Netz verwendet.
"Neuronale Verknüpfungen im Nervensystem des Fadenwurms Caenorhabditis elegans:
Netzwerk aller seiner rund 300 Nervenzellen"
(Quelle: Wikipedia: Autor:
Mentatseb / Lizenz: GNU Free Documentation License, Version 1.2 )

Der erste Schritt! Ja! Bei Google gibt es tatsächlich Mitarbeiter, die dem System mitteilen, dass es sich bei dem einen Bild um ein Kaninchen handelt, bei einem anderen aber nicht. Auch diese Information ist ein Input!  Der Aufwand, ein neuronales System zu trainieren, ist also enorm, da ja auch mit einem Faktor X Bilder eingegeben werden müssen, die halt keine Kaninchen darstellen.
Der zweite Schritt! Das Neuronale Netz „darf“ bereits während der Trainingsphase mitteilen, ob es ein Kaninchen erkennt. Das ist im „ersten Schritt“ einfach für das System. Sein Output sollte 100% Erfolg zeigen!
Dann aber wird das System getestet. Es werden Kaninchenbilder eingegeben und das Ergebnis wird mit „JA“ – ein Kaninchen oder „NEIN“ – kein Kaninchen bewertet! Es werden Bilder eingegeben, die keine Kaninchen zeigen. Der Output des Neuronalen Netzes wird kommentiert: JA oder Nein. Ist ein Kaninchen oder keines.
Im dritten Schritt finden die abschließende Testphase und die Feinjustierung statt. Verschiedenste Prüfungen validieren die Effektivität (weniger die Effizienz) eines Neuronalen Netzes.
Problematisch sind einige Aspekte bei dieser Vorgehensweise.
~Es gibt tatsächlich irritierend „erfolgreiche“ Ergebnisse in der „Mustererkennung“ ( also z. B. das Muster ‚gezeichnetes Kaninchen‘). Aber es stellen sich halt Fragen.
~Selbst dann, wenn ein Neuronales Netz eine Ergebnis-Rate von 80% + liefert, wird das Ergebnis von Menschen geprüft. Wozu benötigt man dann überhaupt das Neuronale Netz? Auch ein Mensch kann erkennen, ob es sich um ein Kaninchen handelt.  
~Der „Weg“, der „Algorithmus“, den das Neuronale Netz „verwendet“ ist nicht nachvollziehbar.  Es fehlt die „Erklärung“!
~Um es zu präzisieren. Was hat das System erkannt? Ein Kaninchen? Oder nur den „Schwarz-Prozentwert zwischen Werten einer Zeichnung und deren Hintergrund im Vergleich? Oder war es ein Vergleich mit "menschlichen Augenbrauen", der zum Tragen kam. Weil eine solche "Intelligenz" nichts ahnend vorab als "Mustererkennung" in das System eingebaut wurde?
~Manche Neuronale Netze (Facebook) arbeiten bei einem Echteinsatz mit einer minimalen Anzahl von Input-Eingaben: „Fünf Likes reichen aus“!
~Gerade Facebook leitet aber nicht qualifizierte Empfehlungen aus its work ab! Es werden Intelligensprofile erstellt.
~Bestätigen die Ergebnisse Neuronaler Netze nur die Eingaben? Handelt es sich hier also eher um „erstellte Horoskope“ im Ergebnis?
~Neuronale Netze werden auch gerne als „Big Data“ bezeichnet. Fragen Sie gerne bei der Berlin-Brandenburgischen Akademie der Wissenschaften nach! Es kommt bei Neuronalen Netzen auf „Schwellwerte“ an! Setze ich einen solchen Wert hoch, dann habe ich wenige Kaninchen. Setze ich den runter, dann habe ich viele Kaninchen!
~Wertet man die Ergebnisse von Neuronalen Netzen „sozialwissenschaftlich“ aus, so trifft man regelmäßig auf das Phänomen, dass Neuronale Netze extrem konservative Gesellschaftsvorstellungen abbilden. Frauen stehen halt am Herd, wenn eine Fragestellung "Kaninchen" betrifft!. Oder aber: Kaninchen werden von Frauen "gestreichelt".
~Denn das Hauptproblem ist und bleibt: Diese Systeme werden nicht nach wissenschaftlichen Methoden entwickelt! Diese „Forschung“ erfolgt „pragmatisch“!
It is Bullshit-Castle, was da „gebastelt“ wird! Es scheint zu funktionieren! Ich selbst kann dann also zu 80% als schwul gelten. Man kann aus der Länge meiner Nase gerne die Länge meines Penis ableiten wollen. Der bleibt unser eigener.  Es bleibt dabei: Horoskope bringen auch „Wissenserwerb“.

Keine Kommentare: