Grüner Scheck
Link in die Zwischenablage kopiert

Ultralytics YOLO11 zur Durchführung von Batch-Inferenzen verwenden

Erforsche den Unterschied zwischen Echtzeit-Inferencing und Batch-Inferencing bei der Verwendung von Ultralytics YOLO11 für verschiedene Computer Vision Anwendungen.

Wenn du ein selbstfahrendes Auto in Aktion gesehen hast, warst du Zeuge von KI-Inferencing in Echtzeit. Ein selbstfahrendes Auto nutzt in der Regel Kameras, Sensoren und KI, um seine Umgebung zu verarbeiten und fast sofort Entscheidungen zu treffen. Wenn jedoch keine schnellen Antworten erforderlich sind, kann die Echtzeit-Inferenzierung sehr ressourcenintensiv sein.

Eine bessere Option ist in diesen Fällen die Batch-Inferenz. Anstatt Daten kontinuierlich in Echtzeit zu verarbeiten, kann eine Batch-Inferenz große Datenmengen in geplanten Intervallen verarbeiten. Dieser Ansatz hilft, Ressourcen zu sparen, den Stromverbrauch zu reduzieren und die Infrastrukturkosten zu senken.

Bei Computer-Vision-Anwendungen werden zum Beispiel Modelle wie Ultralytics YOLO11 für Echtzeitaufgaben wie Objekterkennung und Instanzsegmentierung verwendet werden. Allerdings kann die Verarbeitung großer Mengen visueller Daten in Echtzeit sehr anspruchsvoll sein. 

Abb. 1. Ein Beispiel für die Segmentierung von Objekten in einem Bild mit YOLO11.

Mit Batch Inferencing kann YOLO11 visuelle Daten stapelweise verarbeiten, was die Belastung des Systems reduziert und die Effizienz erhöht, ohne die Leistung zu beeinträchtigen. Das macht es einfacher, Vision AI-Lösungen in großem Umfang einzusetzen, ohne die Hardware zu überlasten oder die Kosten zu erhöhen.

In diesem Artikel werden wir uns mit dem Batch-Inferencing, seinen Vorteilen und der Anwendung des Batch-Inferencing mit YOLO11 in Computer Vision Anwendungen beschäftigen. Los geht's!

Ein Blick auf Batch Inferencing in der Computer Vision

Du kannst dir Batch-Inferencing so vorstellen, dass du eine große Aufgabe auf einmal in Angriff nimmst, anstatt sie Stück für Stück zu bearbeiten, sobald sie eintrifft. Anstatt die Daten ständig in Echtzeit zu verarbeiten, kannst du mit Batch-Inferencing große Datengruppen in bestimmten Abständen verarbeiten. Dieser Ansatz ist viel effizienter, wenn keine sofortigen Antworten erforderlich sind, und hilft dabei, Computerressourcen zu sparen, den Energieverbrauch zu senken und Kosten zu reduzieren.

In der Computer Vision gibt es bestimmte Anwendungen, bei denen eine niedrige Latenzzeit entscheidend ist. Eine niedrige Latenzzeit ist die minimale Verzögerung zwischen der Eingabe (z. B. eines Bildes oder Videobildes) und der Reaktion des Systems. Bei der Echtzeit-Sicherheitsüberwachung zum Beispiel können schon kleine Verzögerungen zu Sicherheitsrisiken führen.

In vielen anderen Computer-Vision-Szenarien ist eine niedrige Latenzzeit jedoch nicht so wichtig. Hier kommt das Batch Inferencing zum Tragen - wenn das System nicht sofort reagieren muss. Beim Batch Inferencing werden visuelle Daten in Gruppen oder Stapeln in ein Computer Vision Modell eingespeist, sodass das System große Datensätze auf einmal und nicht kontinuierlich in Echtzeit verarbeiten kann.

Verstehen, wie Batch Inferencing funktioniert

Hier ist ein genauerer Blick auf die Schritte, die beim Batch-Inferencing nötig sind:

  • Datenerhebung: Visuelle Daten werden über einen bestimmten Zeitraum hinweg gesammelt. Dazu können je nach Anwendung Sicherheitsaufnahmen, Produktbilder oder Kundendaten gehören.
  • Batch-Vorbereitung: Die gesammelten Daten werden dann in Stapel zusammengefasst. In diesem Schritt werden die Daten so formatiert, wie es für das Modell erforderlich ist. Bilder können zum Beispiel in der Größe verändert, normalisiert oder in das richtige Format konvertiert werden, damit das Modell sie verarbeiten kann.
  • Vorhersage: Sobald die Daten aufbereitet sind, wird der gesamte Stapel in das Modell (wie YOLO11) eingespeist, das den gesamten Stapel auf einmal verarbeitet. So kann das Modell für alle Daten im Stapel gleichzeitig Vorhersagen treffen, was den Prozess effizienter macht, als wenn jeder Datenpunkt einzeln bearbeitet würde.

Wann sollte man Batch Inferencing einsetzen?

Nachdem wir nun erklärt haben, was Batch-Inferencing ist und wie es sich von Echtzeit-Inferencing unterscheidet, wollen wir uns genauer ansehen, wann es eingesetzt werden sollte.

Batch Inferencing ist ideal für die Analyse von historischen Daten. Nehmen wir an, du hast Überwachungsmaterial von einer U-Bahn-Station aus dem letzten Monat und möchtest bestimmte Muster erkennen, z. B. die Anzahl der Personen, die zu verschiedenen Tageszeiten ein- und aussteigen. 

Anstatt jedes einzelne Bild in Echtzeit zu verarbeiten, kannst du mit der Stapelverarbeitung das Filmmaterial eines ganzen Monats in Stapeln verarbeiten und so wichtige Ereignisse oder Trends erkennen, ohne dass du sofort Ergebnisse brauchst. Auf diese Weise kannst du große Datenmengen effizienter analysieren und Einblicke in langfristige Muster gewinnen, ohne das System zu überfordern oder ständig überwachen zu müssen.

Batch-Inferencing ist auch eine optimale Lösung, wenn die Systemressourcen begrenzt sind. Indem du die Inferenz außerhalb der Stoßzeiten (z. B. über Nacht) durchführst, kannst du Rechenkosten sparen und sicherstellen, dass das System während der Stoßzeiten nicht überlastet wird. Das macht es zu einem effizienten und kostengünstigen Ansatz für Unternehmen oder Projekte, die große Datenmengen verarbeiten müssen, aber keine Echtzeitanalyse benötigen.

Batch-Inferencing mit Ultralytics YOLO11

Das Ultralytics Python unterstützt Batch-Inferencing für Modelle wie YOLO11. Mit YOLO11 kannst du ganz einfach Batch-Inferenz durchführen, indem du das Argument "batch" angibst, das bestimmt, wie viele Bilder oder Videoframes auf einmal verarbeitet werden. 

Bei der Batch-Inferenzierung werden die Vorhersagen für alle Bilder im Stapel gleichzeitig erstellt. Standardmäßig ist die Stapelgröße auf 1 gesetzt, aber du kannst sie auf jede beliebige Zahl einstellen. 

Wenn zum Beispiel die Stapelgröße auf 5 eingestellt ist, verarbeitet YOLO11 fünf Bilder oder Videoframes auf einmal und erstellt Vorhersagen für alle fünf auf einmal. Größere Stapelgrößen führen in der Regel zu schnelleren Schlussfolgerungen, da die Verarbeitung mehrerer Bilder in einem Stapel effizienter ist, als sie einzeln zu bearbeiten.

Computer Vision Anwendungen durch Batch Inferencing ermöglicht

Als Nächstes wollen wir einige reale Anwendungsfälle für Batch-Inferencing in der Computer Vision untersuchen.

Verbesserung der Diagnostik und Forschung im Gesundheitswesen

In der medizinischen Forschung ist die Arbeit mit großen Mengen visueller Daten sehr verbreitet. Hier kann das Batch Inferencing Wissenschaftlern helfen, Daten in Bereichen wie Chemie, Biologie und Genetik einfacher zu analysieren. Anstatt die Daten einzeln zu analysieren, werden sie in Stapeln verarbeitet, was Zeit und Mühe spart.

In medizinischen Einrichtungen kann das Batch Inferencing zum Beispiel besonders nützlich sein, um große Mengen medizinischer Bilder wie MRTs oder CT-Scans zu analysieren. Krankenhäuser können diese Scans im Laufe des Tages sammeln und über Nacht in Stapeln verarbeiten. 

Mit diesem Ansatz können Krankenhäuser ihre Hardware und ihr Personal besser nutzen, die Betriebskosten senken und sicherstellen, dass alle Scans auf einheitliche Weise geprüft werden. Es ist auch für große Forschungsprojekte und Langzeitstudien von Vorteil, bei denen große Datenmengen verarbeitet werden müssen.

Abb. 2. Erkennung eines medizinischen Scans mit YOLO11.

Autonome Fahrzeuge mithilfe von Simulationen verbessern

Selbstfahrende Autos nutzen KI-Technologien wie Computer Vision, um die Welt um sie herum zu verarbeiten. Mit Hilfe fortschrittlicher Modelle wie YOLO11 können die Systeme im Auto andere Fahrzeuge, Fahrspuren, Straßenschilder und Menschen auf der Straße erkennen. Während Echtzeit-Inferencing auf der Straße entscheidend ist, verlässt sich die selbstfahrende Technologie auch stark auf Batch-Inferencing im Hintergrund. 

Abb. 3. YOLO11 kann Fußgängerinnen und Fußgänger auf der Straße leicht erkennen.

Nachdem ein Auto eine Fahrt beendet hat, können die gesammelten Daten, wie z. B. stundenlanges Kameramaterial, Sensormessungen und LIDAR-Scans, später in großen Stapeln verarbeitet werden. So können die Ingenieure die KI-Modelle des Autos aktualisieren, die Sicherheit des Systems erhöhen und seine Fähigkeit, mit verschiedenen Fahrbedingungen umzugehen, verbessern.

Batch Inferencing wird auch in Simulationen des autonomen Fahrens eingesetzt, um zu testen, wie selbstfahrende Autos in verschiedenen Situationen reagieren würden, z. B. beim Befahren von belebten Kreuzungen oder bei der Reaktion auf unvorhersehbare Fußgängerbewegungen. Dieser Ansatz spart Zeit, senkt die Kosten und vermeidet die Risiken, die damit verbunden sind, jedes Szenario im echten Leben zu testen.

Analyse von Einzelhandelsdaten durch Batch Inferencing

Auch im Einzelhandel kann das Batch Inferencing mit Computer Vision Modellen wie YOLO11 die betriebliche Effizienz erheblich steigern. Kamerasysteme in Geschäften können zum Beispiel den ganzen Tag über Tausende von Bildern aufnehmen, die dann über Nacht in Stapeln verarbeitet werden können. 

So können die Läden analysieren, was im Laden passiert, z. B. Kundenverhalten, Verkehrsmuster und Produktinteraktionen, ohne dass eine Echtzeitverarbeitung erforderlich ist, was für kleinere Läden eine Herausforderung sein kann. 

Ein weiteres interessantes Beispiel ist die Verwendung von Batch Inferencing zur Erstellung von Heatmaps, die Bereiche mit hoher und niedriger Kundenaktivität im Laden visualisieren. Durch die Analyse dieser Heatmaps können Einzelhändler feststellen, welche Bereiche am stärksten frequentiert werden und welche Teile des Ladens mehr Aufmerksamkeit oder eine Optimierung der Produktplatzierung benötigen. Diese Daten können Einzelhändlern helfen, bessere Entscheidungen über die Ladengestaltung, die Produktpositionierung und sogar über Werbestrategien zu treffen, um das Kundenerlebnis und den Umsatz zu verbessern.

Abb. 4. Heatmaps können Einzelhändlern dabei helfen, beliebte Bereiche im Laden zu identifizieren.

Vor- und Nachteile des Batch-Inferencing

Hier sind einige der wichtigsten Vorteile, die Batch Inferencing für verschiedene Branchen bringen kann:

  • Leichte Integration: Batch Inferencing lässt sich leicht in bestehende Arbeitsabläufe integrieren, insbesondere in Branchen wie dem Einzelhandel, der Sicherheitsbranche oder dem Gesundheitswesen, wo große Datenmengen in Massen verarbeitet werden müssen.
  • Leichtere Datenverwaltung: Bei der Arbeit mit großen Datenmengen kann die Batch-Inferenzierung die Datenverwaltung rationalisieren, da die Daten in überschaubare Gruppen eingeteilt werden. Das macht es einfacher, Daten im Laufe der Zeit zu verfolgen, zu überprüfen und zu organisieren.
  • Geringere Netzwerkbelastung: Wenn Daten in Stapeln verarbeitet werden, kann die Menge der zu einem bestimmten Zeitpunkt übertragenen Daten minimiert werden, was die Belastung der Netzwerkressourcen in cloudbasierten Systemen oder verteilten Rechenumgebungen verringert.

Die Batch-Inferencing-Methode hat viele Vorteile, aber es gibt auch einige Einschränkungen zu beachten. Hier sind ein paar Faktoren, die du beachten solltest:

  • Speicherbedarf: Die Speicherung großer Datensätze für die Stapelverarbeitung kann die Speicherkosten erheblich erhöhen, insbesondere bei hochauflösenden Bildern, Videos oder großen Datenmengen.
  • Rückstandspotenzial: Wenn sich Daten schnell ansammeln oder große Stapel nicht rechtzeitig verarbeitet werden, kann ein Rückstand entstehen. Dies kann zu Verzögerungen bei der Bereitstellung von Erkenntnissen und der rechtzeitigen Verarbeitung neuer Daten führen.
  • Ressourcenspitzen: Große Stapel, vor allem solche mit hochauflösenden Bildern, können Spitzen in der Speicher- oder Rechennutzung verursachen. Wenn sie nicht ordnungsgemäß verwaltet werden, können diese Spitzen das System überfordern und zu Verlangsamungen oder Abstürzen führen.

Die wichtigsten Erkenntnisse

Batch Inferencing ist eine effiziente Methode, um große Mengen visueller Daten zu verarbeiten, für die keine sofortigen Ergebnisse erforderlich sind. Anstatt jedes Bild in Echtzeit zu analysieren, werden sie in Stapeln zu festgelegten Zeiten verarbeitet, zum Beispiel über Nacht. 

Diese Methode ist kostengünstig, reduziert die Rechenlast und liefert trotzdem genaue Ergebnisse. Von der Bestandsverwaltung in Geschäften über die Unterstützung von Ärzten bei der Analyse medizinischer Scans bis hin zur Verbesserung von Technologien für selbstfahrende Autos - Batch Inferencing macht Computer Vision zugänglicher, erschwinglicher und praktischer für reale Anwendungen.

Bist du bereit, tief in die KI einzutauchen? Erkunde unser GitHub-Repository, tausche dich mit unserer Community aus und sieh dir unsere Lizenzierungsoptionen an, um deine Reise in die Computer Vision zu beginnen. Erfahre mehr über Innovationen wie KI in der Fertigung und Computer Vision in der Logistikbranche auf unseren Lösungsseiten.

LinkedIn-LogoTwitter-LogoFacebook-LogoKopier-Link-Symbol

Lies mehr in dieser Kategorie

Lass uns gemeinsam die Zukunft
der KI gestalten!

Beginne deine Reise in die Zukunft des maschinellen Lernens