LogicFolding

LogicFolding

LogicFolding bezeichnet Verfahren, die mehrere logische Rechenschritte eines KI-Modells zu einem einzigen zusammenfassen, um Rechenzeit und Speicher zu sparen. Das Ergebnis bleibt gleich, der Weg dorthin wird kürzer.

Ein Computerprogramm besteht aus vielen kleinen Rechenschritten, die nacheinander abgearbeitet werden. Oft sind mehrere dieser Schritte zusammen genau dasselbe wie ein einziger, größerer Schritt. LogicFolding ist der Sammelbegriff für Techniken, die genau solche Ketten erkennen und zu einem Schritt zusammenklappen. Das englische Wort „folding“ heißt falten, und genau darum geht es: Man legt mehrere Schichten übereinander, bis nur noch eine übrig ist. Das Ergebnis der Rechnung bleibt dabei unverändert, nur der Weg dorthin wird kürzer. Angewendet wird das Prinzip heute vor allem in Programmen, die KI-Modelle für den Betrieb vorbereiten.

Warum gefaltete Logik Strom und Geld spart

Große KI-Modelle bestehen aus Milliarden einzelner Rechenoperationen. Jede einzelne kostet Zeit auf einem Grafikchip, und jeder Chip verbraucht Strom. Ein Anbieter, der täglich Millionen Anfragen beantwortet, zahlt diese Kosten immer wieder aufs Neue. Wenn LogicFolding zehn Prozent der Schritte einspart, sinkt die Rechnung entsprechend.

Besonders wichtig ist das auf kleinen Geräten. Ein Smartphone hat weder die Kühlung noch die Batterie eines Rechenzentrums. Damit ein Sprachmodell direkt auf dem Handy laufen kann, muss jede überflüssige Operation verschwinden. Gefaltete Logik ist hier oft der Unterschied zwischen „läuft flüssig“ und „läuft gar nicht“.

Ein Missverständnis sollte man dabei vermeiden: LogicFolding macht ein Modell nicht klüger. Es beantwortet dieselben Fragen wie vorher, nur schneller. Wer bessere Antworten will, muss das Modell trainieren, nicht falten.

Vom Rechenschritt zur zusammengeklappten Kette

Der einfachste Fall ist eine Rechnung, deren Ergebnis von vornherein feststeht. Steht im Programm „multipliziere mit 2 und multipliziere danach mit 3“, kann man das durch „multipliziere mit 6“ ersetzen. Ein Werkzeug prüft dazu die Kette von Anweisungen und sucht nach Stellen, an denen sich zwei Schritte mathematisch zu einem verrechnen lassen. Diesen Klassiker aus dem Compilerbau nennt man Konstantenfaltung, und LogicFolding baut darauf auf.

In KI-Modellen ist der häufigste Anwendungsfall etwas anspruchsvoller. Viele Modelle bestehen aus Schichten, die Zahlen zuerst gewichtet aufaddieren und danach normieren, also auf einen einheitlichen Wertebereich bringen. Beide Vorgänge sind reine Multiplikationen und Additionen. Man kann sie deshalb vorab zu einer einzigen Gewichtstabelle verrechnen. Im Betrieb rechnet der Chip dann nur noch einmal statt zweimal.

Grenzen hat das Verfahren dort, wo ein Schritt vom Ergebnis des vorigen abhängt und nicht vorhersehbar ist. Eine Entscheidung wie „nimm nur die positiven Werte“ lässt sich nicht mit einer Multiplikation verschmelzen. Auch beim Falten von Kommazahlen können winzige Rundungsunterschiede entstehen. Deshalb testet man ein gefaltetes Modell immer gegen das ursprüngliche und vergleicht die Ausgaben.

LogicFolding in Modell-Werkzeugen und Produktmeldungen

Direkt sieht man das Verfahren als Nutzer nie. Es steckt in den Werkzeugen, mit denen Entwickler ein fertig trainiertes Modell für den Einsatz vorbereiten. Bekannte Beispiele sind Laufzeitumgebungen wie ONNX Runtime oder TensorRT, die ein Modell beim Laden automatisch durchforsten und faltbare Stellen zusammenlegen. In deren Dokumentation taucht der Begriff neben verwandten Optimierungen auf.

In Nachrichten begegnet er meist indirekt. Wenn ein Unternehmen meldet, sein Modell laufe nun doppelt so schnell bei gleicher Qualität, steckt oft ein Bündel solcher Tricks dahinter. Neben LogicFolding gehören dazu die Quantisierung, bei der Zahlen gröber gespeichert werden, und das Pruning, bei dem unwichtige Teile des Modells entfernt werden. Der Unterschied ist wichtig: Quantisierung und Pruning verändern das Modell, LogicFolding nur seine Bauform.

Wer selbst programmiert, stößt spätestens dann darauf, wenn ein Modell auf einem Einplatinencomputer oder einem Mikrocontroller laufen soll. Dort ist Rechenleistung so knapp, dass jede eingesparte Operation zählt. Genau deshalb ist LogicFolding ein Standardschritt geworden, bevor ein Modell das Labor verlässt.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.