Yolo Vision Shenzhen
Shenzhen
Jetzt beitreten
Glossar

Neuronale Architektursuche (NAS)

Erfahren Sie, wie Neural Architecture Search (NAS) das Design von Deep-Learning-Modellen automatisiert. Entdecken Sie die Kernmechanismen und erkunden Sie optimierte Modelle wie Ultralytics .

Neural Architecture Search (NAS) ist eine hochentwickelte Technik im Bereich des automatisierten maschinellen Lernens (AutoML), die das Design künstlicher neuronaler Netze automatisiert. Traditionell erforderte die Entwicklung leistungsstarker Deep-Learning-Architekturen (DL) umfangreiches Fachwissen, Intuition und zeitaufwändige Versuche. NAS ersetzt diesen manuellen Prozess durch algorithmische Strategien, die systematisch eine Vielzahl von Netzwerktopologien untersuchen, um die optimale Struktur für eine bestimmte Aufgabe zu finden. Durch das Testen verschiedener Kombinationen von Schichten und Operationen kann NAS Architekturen identifizieren, die in Bezug auf Genauigkeit, Recheneffizienz oder Inferenzgeschwindigkeit deutlich besser sind als von Menschen entworfene Modelle.

Kernmechanismen von NAS

Der Prozess der Ermittlung einer überlegenen Architektur umfasst im Allgemeinen drei grundlegende Dimensionen, die zusammenwirken, um das beste neuronale Netzwerk (NN) zu finden:

  1. Suchraum: Dieser definiert die Menge aller möglichen Architekturen, die der Algorithmus untersuchen kann. Er fungiert wie eine Bibliothek von Bausteinen, wie beispielsweise Faltungsfiltern, Pooling-Schichten und verschiedenen Aktivierungsfunktionen. Ein klar definierter Suchraum schränkt die Komplexität ein, um sicherzustellen, dass die Suche rechnerisch machbar bleibt und gleichzeitig genügend Flexibilität für Innovationen bietet.
  2. Suchstrategie: Anstatt jede Möglichkeit zu testen (Brute-Force-Methode), verwendet NAS intelligente Algorithmen, um den Suchraum effizient zu navigieren. Zu den gängigen Ansätzen gehören das verstärkende Lernen, bei dem ein Agent im Laufe der Zeit lernt, bessere Architekturen zu generieren, und evolutionäre Algorithmen, die leistungsstarke Modelle mutieren und kombinieren, um überlegene Kandidaten zu züchten.
  3. Strategie zur Leistungsabschätzung: Das Training jedes Kandidaten-Netzwerks von Grund auf ist unzumutbar langsam. Um dies zu beschleunigen, verwendet NAS Abschätzungstechniken – wie das Training mit weniger Epochen, die Verwendung von Proxy-Datensätzen mit niedrigerer Auflösung oder den Einsatz von Gewichtsaufteilung–, um das Potenzial einer Kandidatenarchitektur schnell zu bewerten .

Anwendungsfälle in der Praxis

NAS hat sich in Branchen, in denen strenge Hardwarebeschränkungen oder Leistungsanforderungen gelten, als unverzichtbar erwiesen und erweitert die Grenzen der Computervision (CV) und anderer KI-Bereiche .

  • Effizientes Edge-Computing: Für den Einsatz von KI auf Mobilgeräten sind Modelle erforderlich, die sowohl leichtgewichtig als auch schnell sind. NAS wird häufig verwendet, um Architekturen wie MobileNetV3 und EfficientNet zu entdecken, die die Inferenzlatenz minimieren und gleichzeitig eine hohe Genauigkeit gewährleisten. Dies ist für Edge-KI-Anwendungen von entscheidender Bedeutung, beispielsweise für die Echtzeit-Videoanalyse auf Smart-Kameras oder autonomen Drohnen.
  • Medizinische Bildgebung: Bei der medizinischen Bildanalyse ist Genauigkeit von größter Bedeutung. NAS kann Netzwerke so anpassen, dass detect Anomalien in Röntgenbildern oder MRT-Scans detect und dabei oft neue Wege zur Merkmalsextraktion finden, die menschliche Ingenieure möglicherweise übersehen würden. Dies führt zu zuverlässigeren Werkzeugen zur Identifizierung von Erkrankungen wie Hirntumoren oder Frakturen mit höherer Empfindlichkeit.

NAS vs. verwandte Konzepte

Um die spezifische Rolle von NAS zu verstehen, ist es hilfreich, sie von ähnlichen Optimierungstechniken zu unterscheiden:

  • NAS vs. Hyperparameter-Tuning: Während es bei beiden um Optimierung geht, konzentriert sich das Hyperparameter-Tuning auf die Anpassung von Konfigurationseinstellungen (wie Lernrate oder Batchgröße) für eine feste Architektur. Im Gegensatz dazu verändert NAS die grundlegende Struktur des Modells selbst, wie z. B. die Anzahl der Schichten oder die Art und Weise, wie Neuronen miteinander verbunden sind.
  • NAS vs. Transfer Learning: Transfer Learning nutzt ein vorhandenes, vorab trainiertes Modell und passt dessen Gewichte an eine neue Aufgabe an. NAS erstellt die Modellarchitektur von Grund auf neu (oder sucht nach einem besseren Backbone), bevor das Training beginnt.

Verwendung von NAS-abgeleiteten Modellen

Während die Durchführung einer vollständigen NAS-Suche erhebliche GPU erfordert, können Entwickler problemlos Modelle verwenden, die über NAS erstellt wurden. Beispielsweise wurde die YOLO unter Verwendung dieser Suchprinzipien entdeckt, um sie für Objekterkennungsaufgaben zu optimieren.

Das folgende Python zeigt, wie ein vorab recherchiertes NAS-Modell mit der Funktion ultralytics Paket:

from ultralytics import NAS

# Load a pre-trained YOLO-NAS model (architecture found via NAS)
# 'yolo_nas_s.pt' refers to the small version of the model
model = NAS("yolo_nas_s.pt")

# Run inference on an image to detect objects
# This utilizes the optimized architecture for fast detection
results = model("https://ultralytics.com/images/bus.jpg")

# Print the top detected class
print(f"Detected: {results[0].names[int(results[0].boxes.cls[0])]}")

Für diejenigen, die modernste Modelle ohne die Komplexität von NAS trainieren möchten, bietet Ultralytics eine hochoptimierte Architektur , die die neuesten Forschungsergebnisse berücksichtigt. Mit der Ultralytics , die den gesamten MLOps-Lebenszyklus vereinfacht, können Sie Datensätze, Training und Bereitstellung für diese Modelle einfach verwalten.

Werden Sie Mitglied der Ultralytics

Gestalten Sie die Zukunft der KI mit. Vernetzen Sie sich, arbeiten Sie zusammen und wachsen Sie mit globalen Innovatoren

Jetzt beitreten