Pruning (Neural Network)
Technik zur Modell-Komprimierung, bei der unwichtige Gewichte oder ganze Strukturen aus einem neuronalen Netz entfernt werden, um Speicher- und Rechenbedarf zu reduzieren.
Definition
Pruning ist eine Familie von Techniken zur Modell-Komprimierung, bei der einzelne Gewichte, Neuronen, Filter oder ganze strukturelle Einheiten aus einem trainierten neuronalen Netz entfernt werden. Die fundamentale Beobachtung dahinter: moderne neuronale Netze sind massiv überparametrisiert. Ein typisches LLM mit 70 Milliarden Parametern nutzt zur Inferenz nur einen Bruchteil der Gewichte aktiv. Pruning identifiziert diese Redundanz und beseitigt sie.
Die Geschichte reicht bis zu LeCun, Denker und Solla (1990) mit "Optimal Brain Damage" zurück, das schon damals zeigte, dass kleine Gewichte mit minimalem Loss-Einfluss entfernt werden können. Das Konzept blieb über Jahre eine Nische, bis Han, Mao und Dally (2015) mit "Deep Compression" zeigten, dass Pruning kombiniert mit Quantisierung und Huffman-Coding mobile Inferenz radikal beschleunigen kann. Mit dem LLM-Boom wurde Pruning erneut relevant, vor allem durch SparseGPT (Frantar und Alistarh, 2023) und Wanda (Sun et al., 2023).
Algorithmus
Pruning-Verfahren unterscheiden sich entlang mehrerer Dimensionen:
- Strukturiert vs. unstrukturiert: Strukturiertes Pruning entfernt ganze Strukturen (Neuronen, Filter, Heads), die direkt zu kleineren Matrizen führen. Unstrukturiertes Pruning setzt einzelne Gewichte auf Null, was nur auf Sparse-Hardware echte Speedups bringt.
- Wichtigkeits-Kriterium: Wie wird die Wichtigkeit eines Gewichts bestimmt? Magnitude (absoluter Wert), Gradient, Aktivierungs-basiert, oder Hessian-basiert.
- Zeitpunkt: Pre-Training (Sparse von Anfang an), während des Trainings (iteratives Pruning), oder Post-Training (One-Shot auf fertigem Modell).
- Retraining: Nach dem Pruning wird oft nachtrainiert, um Qualitätsverluste zu kompensieren. One-Shot-Verfahren wie SparseGPT verzichten darauf.
Klassische Magnitude-Pruning-Pipeline (Han et al., 2015):
- Training: Normales Training bis Konvergenz.
- Pruning: Gewichte mit kleinstem Absolutwert auf Null setzen.
- Retraining: Restgewichte nachtrainieren, um Verluste auszugleichen.
- Iteration: Schritte 2 und 3 mehrfach wiederholen mit zunehmender Pruning-Rate.
Moderne LLM-Pruning-Verfahren brauchen keine Retraining-Phase. SparseGPT formuliert pro Layer ein Approximations-Problem, das die Aktivierungen vor und nach Pruning so nah wie möglich beieinander hält, ähnlich zur GPTQ-Logik. Wanda nutzt ein noch einfacheres Kriterium: Pruning-Score gleich Magnitude mal Aktivierungs-Norm, was direkt aus dem Forward-Pass berechenbar ist.
Die Lottery Ticket Hypothesis (Frankle und Carbin, 2019) lieferte eine theoretische Begründung: in jedem grossen Netz existieren kleine Subnetze ("Winning Tickets"), die isoliert genauso gut performen, wenn sie mit der ursprünglichen Initialisierung trainiert werden. Das suggeriert, dass Overparametrisierung primär für Optimierung wichtig ist, nicht für die finale Modell-Kapazität.
Praxis
Praktische Pruning-Anwendung im LLM-Bereich ist heute primär durch Hardware getrieben. NVIDIA Ampere-GPUs (A100) und Hopper-GPUs (H100) unterstützen 2:4 strukturierte Sparsity nativ: in jedem 4er-Block von Gewichten dürfen genau 2 auf Null sein, was die Matrix-Multiplikation um Faktor 2 beschleunigt. Tools wie NVIDIA ASP (Automatic SParsity) und SparseGPT produzieren genau dieses 2:4-Pattern.
Wichtige Open-Source-Verfahren und Tools:
- SparseGPT: One-Shot Pruning für LLMs, 50 Prozent Sparsity ohne Retraining.
- Wanda: Noch einfacheres Pruning-Kriterium, vergleichbare Qualität.
- NVIDIA ASP: 2:4 Sparsity-Tooling mit TensorRT-Integration.
- Neural Magic DeepSparse: CPU-Inferenz-Engine mit Sparse-Optimierung.
- OpenVINO und ONNX Runtime: Production-Frameworks mit Sparse-Support.
Im Vision-Bereich ist Pruning seit Jahren etabliert. ResNet-Modelle für Edge-Deployment werden routinemässig auf 50 bis 70 Prozent ihrer Originalgrösse reduziert. Mobile Modelle wie EfficientNet sind oft schon mit Pruning-bewussten Trainings-Verfahren entworfen. Bei Sprachmodellen ist die Adoption langsamer, weil Qualitätsverluste schwerer zu erkennen sind und Quantisierung oft den besseren Hebel bietet.
Eine wachsende Praxis ist die Kombination aus Pruning und Quantisierung: erst auf 50 Prozent prunen, dann auf INT4 quantisieren. Das ergibt theoretisch Faktor 16 Reduktion gegenüber FP16 dense, in der Praxis Faktor 6 bis 10 mit kontrolliertem Qualitätsverlust.
Häufige Fehler
- Unstrukturiertes Pruning ohne Hardware-Support: Auf Standard-GPUs bringen 90 Prozent Sparsity oft null Speedup, weil Dense-Matrix-Mul effizienter ist als Sparse-Mul ohne spezielle Kernels.
- Kein Retraining: Bei klassischen Pruning-Verfahren ist Retraining oder Fine-Tuning unverzichtbar. Erst moderne One-Shot-Methoden wie SparseGPT umgehen das partiell.
- Falsches Wichtigkeits-Kriterium: Magnitude ist nicht immer optimal. Bei spezifischen Architekturen können gradient-basierte oder hessian-basierte Kriterien deutlich bessere Resultate liefern.
- Pruning aufgaben-blind: Globales Pruning anhand allgemeiner Kriterien kann auf spezifischen Tasks katastrophal scheitern. Task-aware Pruning ist oft nötig.
- Eval auf falschen Benchmarks: Pruning kann auf Standard-Perplexity-Tests akzeptabel aussehen, aber bei langen Kontexten oder Reasoning-Tasks brutal regredieren.
Abgrenzung
- Quantisierung: Reduziert Präzision, nicht Anzahl der Gewichte. Komplementär und oft kombiniert.
- Knowledge Distillation: Trainiert ein neues kleineres Modell, statt aus bestehendem zu entfernen. Erlaubt Architektur-Wechsel.
- Mixture of Experts (MoE): Dynamische Sparsity, bei der pro Token nur ein Subset der Experten aktiviert wird. Pruning ist statisch, MoE dynamisch.
- Neural Architecture Search: Sucht effiziente Architekturen von Grund auf. Pruning startet mit dichtem Modell und reduziert.
- Sparse Training: Trainiert von Anfang an mit Sparsity-Constraint, statt nachträglich zu prunen. Theoretisch effizienter, praktisch komplexer.
Weiter im KI-Lexikon
← Zurück zum LexikonHäufige Fragen
Was ist Neural Network Pruning?+
Pruning ist eine Technik zur Modell-Komprimierung, bei der unwichtige Gewichte oder ganze strukturelle Einheiten (Neuronen, Schichten, Köpfe) aus einem neuronalen Netz entfernt werden. Ziel ist die Reduktion von Speicherbedarf und Rechenzeit bei minimalem Qualitätsverlust. Die Idee geht zurück bis zu LeCun et al. (1990) mit "Optimal Brain Damage".
Was ist der Unterschied zwischen strukturiertem und unstrukturiertem Pruning?+
Unstrukturiertes Pruning entfernt einzelne Gewichte, was zu spärlichen Matrizen führt. Strukturiertes Pruning entfernt ganze Filter, Neuronen oder Attention-Köpfe, was die Modell-Architektur kleiner macht. Strukturiertes Pruning liefert echte Speedups auf Standard-Hardware, unstrukturiertes braucht Sparse-Hardware-Support.
Was sagt die Lottery Ticket Hypothesis?+
Frankle und Carbin (2019) zeigten, dass dichte Netze kleine Subnetze enthalten ("Lottery Tickets"), die isoliert genauso gut trainiert werden können wie das Original. Das suggeriert, dass Overparametrisierung primär für Optimierung wichtig ist, nicht für die finale Modell-Kapazität. Praktische Konsequenz: aggressives Pruning ist möglich.
Welche Pruning-Kriterien gibt es?+
Magnitude-based: Gewichte mit kleinem Absolutwert entfernen. Gradient-based: Gewichte mit kleinem Gradient-Produkt entfernen. Hessian-based: Gewichte mit geringem Loss-Einfluss entfernen (Optimal Brain Damage). Movement Pruning: Gewichte, die im Fine-Tuning gegen Null wandern, entfernen.
Was ist SparseGPT?+
SparseGPT (Frantar und Alistarh, 2023) ist ein One-Shot-Pruning-Verfahren für Sprachmodelle, das ähnlich zu GPTQ schichtweise vorgeht. Es kann ein 175B-Modell auf 50 Prozent Sparsity reduzieren ohne nennenswerten Qualitätsverlust und ohne Retraining. Damit wurde Pruning auf LLM-Skala erstmals praktikabel.
Wieviel kann man wegprunen?+
Bei strukturiertem Pruning sind 30 bis 50 Prozent ohne Qualitätsverlust üblich, mit Retraining auch mehr. Bei unstrukturiertem Pruning sind 80 bis 90 Prozent Sparsity möglich. NVIDIA Ampere-GPUs unterstützen 2:4 Strukturierte Sparsity nativ mit echtem Speedup, was 50 Prozent Pruning praktisch nutzbar macht.
Was ist der Unterschied zu Quantisierung?+
Pruning entfernt Gewichte komplett (setzt sie auf Null), Quantisierung reduziert nur ihre Präzision. Beide sind komplementär und werden oft kombiniert: erst prunen, dann quantisieren. Pruning ändert die Anzahl der Operationen, Quantisierung die Kosten pro Operation.
Wann lohnt sich Pruning für LLMs?+
Pruning lohnt sich vor allem bei Inferenz auf Sparse-fähiger Hardware (Ampere und neuer) oder bei extrem latenz-kritischen Workloads. Für die meisten Open-Source-Anwender ist Quantisierung der einfachere und wirkungsvollere Hebel. Pruning kommt zum Tragen, wenn man auch nach Quantisierung noch Performance braucht.
Verwandte Begriffe
Quellen
- LeCun et al. (1990) Optimal Brain Damage
- Han et al. (2015) Deep Compression
- Frankle and Carbin (2019) The Lottery Ticket Hypothesis
- Frantar and Alistarh (2023) SparseGPT
Wikidata: Q96072451 · Zuletzt geprüft: 2026-06-07