Zum Hauptinhalt Zur Navigation Zur Suche

KI = Krasse Investitionen

Die massiv parallele Implementierung des Gradientenabstiegs in KNN ist weder ein Geniestreich noch Quell gottgleicher Einsichten. Es ist eine Verzweiflungsaktion, wenn kein intelligenterer Weg erkennbar ist, ein Problem anzugehen.

Also keine Cleverness, sondern Brute Force: Es werden gigantische Mengen an Rechenleistung und Strom auf ein Problem geworfen in der Hoffnung, eine einigermaßen brauchbare Lösung zu finden.

Hand aufs Herz: So was haben wir alle irgendwann mal gemacht. Aber spätestens, wenn eine weltweite Chipknappheit ausgelöst wird und der Strombedarf die vorhandenen Kapazitäten sprengt, so dass alte Kohlekraftwerke wieder in Betrieb genommen werden müssen oder KI-Rechenzentren nur noch mit eigenen Kraftwerken errichtet werden dürfen, sollte dämmern: Das ist exzessiv!

Bloß weil etwas theoretisch berechenbar ist, heißt das noch lange nicht, dass es auch praktisch berechnet werden kann. Es gibt verschiedene Hürden, mit denen sich in der Theoretischen Informatik die Komplexitätstheorie beschäftigt. Keine Sorge: Wir werden da nicht tief eintauchen. Die wesentlichen Grundlagen haben wir schon in der zweiten Folge gelegt.

Eine terminierende Turing-Maschine unternimmt immer nur endlich viele Schritte und verwendet nur endlich viel Speicherplatz auf dem Band. Später führte ich die linearen Automaten ein: Turing-Maschinen, die linear proportional viel Speicher in Relation zur Länge ihres Inputs benötigen. Und ich erwähnte, dass dies eine schärfere Randbedingung sei als "endlich, aber ausreichend viel Speicher": Algorithmen, deren Speicherbedarf quadratisch mit der Input-Länge wächst, sind hier nämlich raus.

Ein weiterer Tipp versteckte sich in der Aussage, dass für alle Computer gilt: Sie sind zu langsam und der Speicher ist zu klein; man weiß nur nicht, was zuerst kneift.

Die Komplexitätstheorie misst die Schwierigkeit von Aufgaben daran, wie viele Rechenschritte und Speicherplatz sie in Abhängigkeit von der Problemgröße N haben. Wenn sich Zeitaufwand oder Speicherbedarf verdoppeln, wenn sich N verdoppelt – also proportional entwickelt -, haben wir lineare Komplexität oder Aufwand in Zeit oder Speicher.

Leider hat fast alles, was Spaß macht oder von besonderem Interesse ist, einen überproportionalen Aufwand. Quadratischer Aufwand kann bei großem N durchaus unangenehm werden, höhere Potenzen natürlich noch schneller. Und kombinatorisch oder exponentiell explodierender Aufwand beschränkt einen in der Regel auf Trivialprobleme.

Mit etwas Glück lässt sich im Algorithmendesign Speicheraufwand und Zeitaufwand gegeneinander tauschen und so vielleicht bis zu höheren N vordringen. Aber hier dreht die Praxis der Theorie gelegentlich eine lange Nase: Theoretisch optimale Algorithmen mit komplexen verpointerten Datenstrukturen besitzen eine geringe Speicherlokalität; das führt zu Cache Misses und Page-ins.

Für praktische Problemgrößen sind tumbe Algorithmen mit hoher Speicherlokalität trotz schlechterer Aufwandsklasse manchmal deutlich schneller. Wie auch immer: Bei irgendeinem N wird bei nicht linearen Problemen der Zusatzaufwand zum Erreichen von N+1 schmerzhaft.

Das war übrigens einer der Gründe, warum symbolische KI in den 1980er Jahren gescheitert ist: Reasoning-Aufwand explodiert kombinatorisch. Ein weiterer Grund war – wie heute bei LLMs – der explodierende Aufwand für die Kuratierung qualifizierten Expertenwissens. Denn symbolische KI benötigte dies wegen des Anspruchs der Nachvollziehbarkeit, Erklärfähigkeit und Verlässlichkeit in einer strikt logischen und fehlerfreien Form und Qualität. Und dann ist da noch das Over-Promising: die fantastischen Zukunftsversprechen, die nicht eingelöst werden konnten – déjà vu.

Sind die optimalen Aufwandsklassen durch Algorithmendesign erreicht, bleibt als letzte Möglichkeit die massive Parallelisierung der Berechnungen, um den lösbaren Problemumfang zu steigern.

Und das ist nun der eigentliche Trick der KNN: eine extreme Parallelisierung auf Kosten der Nachvollziehbarkeit, Erklärfähigkeit sowie Verlässlichkeit, unter Einsatz exzessiver Ressourcen.

Aber selbst bei dem einfachen GoL-Problem der Studie haben wir gesehen: Sowohl die notwendige Größe als auch die notwendige Menge an Trainingsmaterial – und damit Trainingszeit! – explodieren mit der Problemkomplexität. Auch der Wert der Verlustfunktion, ab dem eine Lösung akzeptiert wird, muss nach oben angepasst werden. Damit steigt zwingend die Fehlerrate im Einsatz.


Relevante Themen