Structured Pruning
Eine Pruning-Variante, die ganze Strukturen (Neuronen, Filter, Attention Heads, Layer) entfernt statt einzelner Gewichte – liefert echte Speedups ohne spezielle Sparse-Hardware.
Structured Pruning entfernt ganze Neuronen, Filter oder Attention Heads – liefert echte Speedups auf Standard-Hardware ohne Sparse-Support.
Erklärung
Im Gegensatz zu Unstructured Pruning (einzelne Gewichte auf Null) entfernt Structured Pruning zusammenhängende Blöcke: ganze Convolutional Filter, Attention Heads oder sogar Layer. Das resultierende Modell ist ein echtes kleineres Modell ohne Sparse-Repräsentation.
Relevanz für Marketing
Structured Pruning ist die praxisrelevanteste Pruning-Methode, da Standard-Hardware (GPUs, CPUs) direkt von kleineren Modellen profitiert – kein Sparse-Support nötig.
Beispiel
LLM-Shearing (2023) entfernt gezielt Attention Heads und FFN-Dimensionen aus Llama-2 7B und erzeugt ein 1.3B-Modell, das besser performt als von Grund auf trainierte 1.3B-Modelle.
Häufige Fallstricke
Gröbere Granularität als Unstructured Pruning – kann weniger komprimieren. Schwieriger zu optimieren, welche Strukturen entfernbar sind. Erfordert Retraining/Fine-Tuning nach dem Pruning.
Entstehung & Geschichte
Li et al. (2016) führten Filter Pruning für CNNs ein. Für Transformer wurde Head Pruning von Michel et al. (2019) untersucht – sie zeigten, dass viele Attention Heads entfernbar sind. LLM-Shearing (2023) skalierte dies auf LLMs.
Abgrenzung & Vergleiche
Structured Pruning vs. Unstructured Pruning
Unstructured Pruning entfernt einzelne Gewichte (höhere Kompression möglich); Structured Pruning entfernt ganze Blöcke (echte Speedups auf Standard-Hardware).
Structured Pruning vs. Knowledge Distillation
Structured Pruning beschneidet ein existierendes Modell; Distillation trainiert ein neues kleineres Modell von Grund auf.