Glossar

Wissensdestillation

Entdecke, wie Knowledge Distillation KI-Modelle komprimiert, um schnellere Schlussfolgerungen zu ziehen, die Genauigkeit zu verbessern und die Effizienz des Einsatzes von Edge-Geräten zu erhöhen.

Trainiere YOLO Modelle einfach
mit Ultralytics HUB

Mehr erfahren

Knowledge Distillation ist eine Technik des maschinellen Lernens (ML), bei der ein kleineres, kompaktes Modell (der "Student") so trainiert wird, dass es das Verhalten eines größeren, komplexeren Modells (des "Lehrers") nachahmt. Das Hauptziel besteht darin, das vom Lehrermodell gelernte "Wissen" auf das Schülermodell zu übertragen, so dass das Schülermodell eine vergleichbare Leistung erbringen kann, jedoch mit deutlich geringeren Rechenanforderungen, wie z. B. einer geringeren Größe und einer schnelleren Inferenzlatenz. Dadurch werden komplexe Deep Learning-Modelle (DL) für den Einsatz in ressourcenbeschränkten Umgebungen wie mobilen Geräten oder Edge-Computing-Plattformen praktisch. Das Konzept wurde von Geoffrey Hinton und Kollegen in ihrem Artikel"Distilling the Knowledge in a Neural Network" bekannt gemacht.

Wie die Wissensdestillation funktioniert

Das Verfahren umfasst in der Regel ein vorab trainiertes Lehrermodell, bei dem es sich um ein einzelnes leistungsfähiges Modell oder um ein Ensemble von Modellen handeln kann, die für ihre hohe Genauigkeit bekannt sind. Das Schülermodell, das in der Regel weniger Parameter oder eine flachere Architektur hat (z. B. ein kleineres Convolutional Neural Network (CNN)), wird dann anhand der Ergebnisse des Lehrermodells trainiert. Anstatt nur die "hard labels" (die "ground truth") aus den Trainingsdaten zu verwenden, lernt der Schüler/die Schülerin oft von den "soft targets" des Lehrers/der Lehrerin - den vollständigen Wahrscheinlichkeitsverteilungen, die der Lehrer/die Lehrerin für alle Klassen vorhergesagt hat. Diese weichen Ziele enthalten umfassendere Informationen darüber, wie das Lehrermodell verallgemeinert und Ähnlichkeiten zwischen den Klassen darstellt. Eine spezielle Verlustfunktion, oft Destillationsverlust genannt, wird verwendet, um die Differenz zwischen den Vorhersagen des Schülers und den Soft Targets des Lehrers zu minimieren, manchmal in Kombination mit einem Standardverlust, der anhand der tatsächlichen Kennzeichnungen berechnet wird.

Nutzen und Wichtigkeit

Knowledge Distillation bietet mehrere entscheidende Vorteile:

  • Modellkomprimierung: Erzeugt kleinere Modelle, die weniger Speicherplatz benötigen.
  • Schnellere Inferenz: Eine geringere Modellkomplexität führt zu schnelleren Vorhersagen, was für Echtzeit-Inferenzanwendungen entscheidend ist.
  • Energieeffizienz: Kleinere Modelle verbrauchen weniger Strom, was für batteriebetriebene Geräte und nachhaltige KI-Praktiken wichtig ist. Siehe Ultralytics Richtlinien für Umwelt, Gesundheit und Sicherheit.
  • Einsatz auf Edge-Geräten: Ermöglicht leistungsstarke KI-Funktionen auf Hardware mit begrenztem Speicher und begrenzter Rechenleistung, wie Raspberry Pi oder NVIDIA Jetson.
  • Mögliche Leistungsverbesserung: Manchmal kann das Schülermodell besser verallgemeinern als ein ähnlich großes Modell, das direkt auf harten Labels trainiert wurde, da es aus dem reichhaltigeren Überwachungssignal des Lehrers lernt.

Anwendungen in der realen Welt

Knowledge Distillation ist in verschiedenen Bereichen weit verbreitet:

  1. Computer Vision: Große Objekterkennungs- oder Bildsegmentierungsmodelle, wie komplexe Versionen von Ultralytics YOLO oder Vision Transformers (ViT), können in leichtgewichtige Versionen umgewandelt werden, die für mobile AppsUltralytics HUB App) oder eingebettete Systeme in autonomen Fahrzeugen oder in der Robotik geeignet sind. Intuitivo nutzt beispielsweise die Wissensdestillation, um Wissen aus großen Grundmodellen in kleinere, kostengünstige Modelle für die Skalierung von Millionen von autonomen Verkaufsstellen zu übertragen, wodurch die Beschriftung erheblich beschleunigt wird (Quelle: YOLO Vision 2023 Talk).
  2. Natürliche Sprachverarbeitung (NLP): Massive Large Language Models (LLMs) wie BERT oder GPT werden oft in kleinere Versionen destilliert (z. B. DistilBERT von Hugging Face) für Aufgaben wie Sentiment-Analyse oder Fragenbeantwortung auf Geräten mit begrenzten Rechenkapazitäten oder für Anwendungen, die eine geringere Latenzzeit erfordern, wie z. B. Chatbots.

Verwandte Konzepte

Knowledge Distillation ist mit anderen Modelloptimierungstechniken verwandt, unterscheidet sich aber von ihnen:

  • Model Pruning: Dabei werden weniger wichtige Gewichte oder Verbindungen aus einem bereits trainierten Netz entfernt, um dessen Größe zu verringern. Die Destillation trainiert ein neues, kleineres Netz.
  • Modellquantisierung: Reduziert die numerische Genauigkeit der Gewichte des Modells (z. B. von 32-Bit-Fließkommazahlen auf 8-Bit-Ganzzahlen), um die Größe zu verringern und die Berechnung zu beschleunigen. Siehe Integrationen wie ONNX oder TensorRT.
  • Transfer Learning: Wiederverwendung von Teilen eines bereits trainierten Modells (in der Regel das Grundgerüst) und Feinabstimmung auf einen neuen Datensatz oder eine neue Aufgabe. Distillation konzentriert sich darauf, das Vorhersageverhalten eines Lehrers auf eine potenziell andere Schülerarchitektur zu übertragen.
  • Föderiertes Lernen: Trainiert Modelle auf dezentralen Geräten, ohne die Rohdaten zu teilen, und konzentriert sich auf den Datenschutz. Distillation konzentriert sich auf die Modellkomprimierung.

Knowledge Distillation ist ein leistungsfähiges Werkzeug, um modernste KI-Modelle zugänglicher und effizienter zu machen und die Lücke zwischen groß angelegten Forschungsmodellen und dem praktischen Einsatz von Modellen in der realen Welt zu schließen. Plattformen wie Ultralytics HUB erleichtern das Training und den Einsatz von potenziell destillierten Modellen wie YOLOv8 oder YOLO11.

Alles lesen