Yolo Vision Shenzhen
Shenzhen
Jetzt beitreten
Glossar

Evolutionäre Algorithmen

Explore how evolutionary algorithms use natural selection to optimize AI. Learn to automate [hyperparameter tuning](https://www.ultralytics.com/glossary/hyperparameter-tuning) for [YOLO26](https://docs.ultralytics.com/models/yolo26/) to boost model performance.

Evolutionäre Algorithmen (EAs) sind eine leistungsstarke Familie von Optimierungsalgorithmen, die die biologischen Prinzipien der natürlichen Selektion und Genetik nachahmen, um komplexe rechnerische Probleme zu lösen. Im Gegensatz zu traditionellen mathematischen Techniken, die auf derivativen Berechnungen basieren, wie beispielsweise stochastischer Gradientenabstieg (SGD), sind EAs dafür ausgelegt, große, unübersichtliche oder schlecht verstandene Suchräume zu durchforsten. Sie funktionieren, indem sie eine Population potenzieller Lösungen aufrechterhalten, die im Laufe der Zeit miteinander konkurrieren, sich reproduzieren und mutieren. Dieser Ansatz macht sie besonders effektiv für Aufgaben in der künstlichen Intelligenz (KI), bei denen die „beste” Lösung analytisch schwer zu bestimmen ist, sodass sich Systeme iterativ zu einem optimalen Ergebnis entwickeln können.

Biologische Inspiration und Kernmechanismen

Die Funktionsweise eines evolutionären Algorithmus basiert auf dem Konzept des Überlebens des Stärkeren. Der Prozess durchläuft einen Zyklus von Operatoren, die die natürliche genetische Evolution nachahmen und die Lösungsansätze schrittweise verfeinern:

  1. Initialisierung: Das System generiert eine anfängliche Population zufälliger Kandidaten. Im Zusammenhang mit maschinellem Lernen (ML) können diese Kandidaten verschiedene Sätze von Modellparametern darstellen.
  2. Fitnessbewertung: Jeder Kandidat wird anhand eines bestimmten Ziels getestet, das als Fitnessfunktion bezeichnet wird. Bei einem Computer-Vision-Modell (CV) bewertet diese Funktion in der Regel Metriken wie Genauigkeit oder Mean Average Precision (mAP).
  3. Auswahl: Kandidaten mit höheren Fitnesswerten werden probabilistisch ausgewählt, um als Eltern zu fungieren, wodurch sichergestellt wird, dass erfolgreiche Merkmale für die nächste Generation erhalten bleiben.
  4. Reproduction and Variation: New solutions are created through crossover (recombining traits from two parents) and mutation (introducing random changes). This introduction of genetic diversity is critical, as it prevents the algorithm from stagnating in a local optimum, helping it explore the search space for the global maximum.

Real-World-Anwendungen in AI

Evolutionäre Algorithmen sind vielseitig einsetzbar und wurden bereits erfolgreich in verschiedenen Bereichen des Deep Learning (DL) und der Technik

Automatisierte Hyperparameter-Optimierung

Eine der praktischsten Anwendungen von EAs ist Hyperparameter-OptimierungModerne neuronale Netze erfordern die Konfiguration Dutzender Parameter – wie Lernrate, Gewichtsabnahme und Momentum –, die einen erheblichen Einfluss auf die Leistung haben. EAs können diesen mühsamen Trial-and-Error-Prozess automatisieren, indem sie die Konfigurationseinstellungen weiterentwickeln. Zum Beispiel tune() Die Methode in der Ultralytics verwendet einen genetischen Algorithmus, um die besten Trainingshyperparameter für YOLO26 Modelle auf benutzerdefinierten Datensätzen.

Neuronale Architektursuche (NAS)

EAs sind ein Eckpfeiler der Neural Architecture Search (NAS). Anstatt dass menschliche Ingenieure die Struktur eines neuronalen Netzwerks (NN) manuell entwerfen, kann ein evolutionärer Algorithmus die Architektur „wachsen” lassen. Er testet verschiedene Kombinationen von Schichten, Neuronen und Verbindungen und entwickelt so effiziente Strukturen, die Geschwindigkeit und Genauigkeit in Einklang bringen. Diese Technik hat zur Schaffung hocheffizienter Backbones wie EfficientNet geführt, die für bestimmte Hardware-Beschränkungen optimiert sind.

Evolutionäre Algorithmen vs. Schwarmintelligenz

Obwohl es sich bei beiden um von der Natur inspirierte Optimierungsstrategien handelt, ist es hilfreich, EAs von der Schwarmintelligenz (SI) zu unterscheiden.

  • Evolutionäre Algorithmen: Basieren auf Generationswechsel. Individuen (Lösungen) leben, vermehren sich basierend auf ihrer Fitness und sterben, woraufhin sie durch ihre Nachkommen ersetzt werden. Die primären Treiber sind genetische Operatoren wie Mutation und Crossover.
  • Schwarmintelligenz: Imitiert soziale Interaktionen innerhalb einer Gruppe, wie beispielsweise einem Vogelschwarm oder einem Fischschwarm. Algorithmen wie die Particle Swarm Optimization (PSO) beinhalten eine Population von Agenten, die sich durch den Suchraum bewegen und ihre Positionen basierend auf ihren eigenen Erfahrungen und dem Erfolg ihrer Nachbarn anpassen, ohne dass ein Generationswechsel stattfindet.

Implementierung der Optimierung mit Ultralytics

Praktiker können genetische Algorithmen direkt nutzen, um ihre Objekterkennungsmodelle zu optimieren. Ultralytics tune Die Methode führt einen evolutionären Prozess durch, um Hyperparameter über mehrere Generationen hinweg zu mutieren, und identifiziert automatisch die Einstellungen, die die höchste Leistung für Ihre Validierungsdaten erzielen.

from ultralytics import YOLO

# Load the standard YOLO26 model
model = YOLO("yolo26n.pt")

# Run hyperparameter tuning using a genetic algorithm approach
# The tuner evolves parameters (lr, momentum, etc.) over 30 generations
model.tune(data="coco8.yaml", epochs=10, iterations=30, plots=False)

Diese automatisierte Verfeinerung ermöglicht es Entwicklern, über manuelles Rätselraten hinauszugehen. Für Teams, die ihre Abläufe skalieren, kann die Verwaltung dieser Experimente und die Verfolgung der Entwicklung der Modellleistung mithilfe Ultralytics optimiert werden, die Trainingsmetriken visualisiert und die Modellbereitstellung erleichtert.

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