Kommentar von Ihar Rubanau, Sigma Software Group Transfer Learning in der Computer Vision
Anbieter zum Thema
Das Transfer-Learning hat bei Computer Vision an Beliebtheit gewonnen, da es tiefe neuronale Netze mithilfe von vortrainierten Modellen mit begrenzten Daten effektiv trainieren kann. Dieser Artikel gibt einen Überblick über die jüngsten Fortschritte im Bereich des Transfer Learning für Aufgaben der Computer Vision, wie z. B. Bildklassifikation, Objekterkennung, semantische Segmentierung und vieles mehr.

Computer Vision ist ein Bereich der Künstlichen Intelligenz und der Computerwissenschaft, der das Ziel hat, Maschinen zu befähigen, visuelle Daten zu interpretieren und zu analysieren. Das Ziel ist die Entwicklung intelligenter Systeme, die in der Lage sind, visuelle Wahrnehmungsaufgaben auf menschlichem Niveau zu bewältigen, wie z. B. das Erfassen, Erkennen, Verfolgen und Segmentieren von Objekten. Durch den Einsatz von Verfahren und Ansätzen wie Deep Learning und neuronalen Netzen hat Computer Vision bedeutende Meilensteine erreicht.
Zu den bemerkenswerten Beispielen gehören:
- 1. GPT-3-Bilderzeugung: Das GPT-3-Sprachmodell von OpenAI erstellt anhand von Textbeschreibungen realistische Bilder, die die beschriebenen Szenen genau wiedergeben.
- 2. Objekterkennung: Topmoderne Modelle wie Faster R-CNN, RetinaNet und YOLOv5 erreichen eine hohe Genauigkeit bei der Objekterfassung in Datensätzen wie COCO, Pascal VOC und ImageNet.
- 3. Autonome Fahrzeuge: Computer Vision, wie es die Nvidia-Plattform DRIVE AGX bietet, ermöglicht die Wahrnehmung und Entscheidungsfindung in Echtzeit für autonome Fahrzeuge.
- 4. Medizinische Bildgebung: KI-gestützte Systeme helfen bei der Diagnose von Lungenkrebs und beim Erkennen von diabetischer Retinopathie durch Verfahren der Computer Vision.
- 5. Robotik: Computer Vision spielt eine entscheidende Rolle bei der Objekterkennung, dem visuellen Erfassen und der Manipulation mit Robotern.
Computer Vision ist ein dynamischer und sich schnell entwickelnder Bereich, in dem ständig neue Verfahren und Anwendungen eingeführt werden. Es hat das Potenzial, die Industrie zu revolutionieren und die Interaktion zwischen Mensch und Maschine neu zu gestalten. In den Kompetenzzentren von Sigma Software erleben wir eine steigende Nachfrage von Unternehmen und erwarten in den nächsten sechs bis zwölf Monaten ein exponentielles Wachstum, insbesondere durch die zunehmende Verbreitung von Großmodellen.
Werfen wir einen Blick auf einige gängige Aufgaben, die mithilfe von Computer Vision in der heutigen Zeit gelöst werden können und die in vielen Geschäftsbereichen Anwendung finden könnten:
- Objekterfassung: Erkennen und Lokalisieren von Objekten in einem Bild oder Video
- Bilderkennung: Klassifizierung von Bildern auf der Grundlage ihres Inhalts
- Gesichtserkennung: Identifizierung und Überprüfung der Identität einer Person auf der Grundlage ihrer Gesichtszüge
- Autonome Fahrzeuge: Befähigung von Fahrzeugen zur Navigation und Interpretation ihrer Umgebung anhand visueller Daten
- Medizinische Bildgebung: Analyse von medizinischen Bildern zur Erkennung und Diagnose von Krankheiten
- Erweiterte Realität: Überlagerung von digitalen Informationen mit realen Bildern oder Videos
- Einzelhandel und E-Commerce: Verbesserung von Produktempfehlungen und visueller Suche
- Landwirtschaft: Verbesserung der Ernteerträge und Verringerung von Ernteschäden
Computer Vision steht vor großen Herausforderungen, u. a. der Anforderung, dass für die Schulung präziser Modelle umfangreiche kommentierte Daten benötigt werden. Die Aufnahme und Kommentierung großer Data Sets kann kostspielig und zeitaufwendig sein und erfordert spezielles Fachwissen. Außerdem erfordern verschiedene Aufgaben und Bereiche unterschiedliche Daten und Anmerkungen, was die Wiederverwendung bestehender Data Sets zu einer Herausforderung macht.
Transfer Learning
Transfer Learning überwindet diese Herausforderungen, indem es vortrainierte Modelle und Datensätze für neue Aufgaben und Domänen nutzt. Durch die Verwendung eines vortrainierten Modells als Ausgangspunkt können wir die Notwendigkeit für neue Daten und Anmerkungen möglichst gering halten und gleichzeitig die Leistung des neuen Modells für die Zielaufgabe verbessern. Obwohl sie mit dem Konzept von Transfer Learning im maschinellen Lernen und im menschlichen Gehirn verwandt sind, unterscheiden sich die zugrunde liegenden Mechanismen und Prozesse.
- Beim Machine Learning umfasst Transfer Learning die Verwendung von vortrainierten Modellen, die auf großen Datensätzen für eine bestimmte Aufgabe geschult wurden. Diese Modelle werden dann anhand kleinerer Datensätze für verwandte Aufgaben abgestimmt, um die Lerneffizienz und Genauigkeit zu verbessern. Vortrainierte Modelle haben bereits gelernt, Funktionen und Muster zu erkennen, die auf die neue Aufgabe angewendet werden können.
- Im menschlichen Gehirn bezieht sich Transfer Learning auf die Eigenschaft, Wissen und Fähigkeiten von einem Kontext auf einen anderen zu übertragen. Das Erlernen des Klavierspiels kann beispielsweise das Erlernen eines anderen Instruments wie der Gitarre aufgrund der übertragbaren Fähigkeiten erleichtern. Diese Übertragung von Wissen und Fähigkeiten zwischen verschiedenen Kontexten ist ein grundlegender Aspekt des menschlichen Lernens und der Intelligenz
Vortrainierte neuronale Netze
Es liegen mehrere vortrainierte neuronale Netze vor, die große Beliebtheit erlangt haben und in verschiedenen Anwendungen des Computer Visions weit verbreitet sind. Hier sind einige der bekanntesten davon:
VGG: Visual Geometry Group ist eine Familie von tiefen neuronalen Netzen, die bei der ImageNet Challenge 2014 Spitzenleistungen erzielten. Die VGG-Modelle zeichnen sich durch ihre tiefe Architektur mit bis zu 19 Schichten aus und werden häufig für verschiedene Aufgaben des Computer Vision verwendet, z. B. zur Objekterkennung und -lokalisierung.
ResNet: Residual Network ist eine andere Familie von tiefen neuronalen Netzen, die 2015 die ImageNet Challenge gewann. ResNet-Modelle zeichnen sich durch ihre Residual Blocks aus, die ein einfacheres Training von sehr tiefen neuronalen Netzen mit über 100 Schichten ermöglichen. ResNet-Modelle werden häufig für verschiedene Aufgaben der Computer Vision verwendet, z. B. für die Erkennung und Erfassung von Objekten.
Inception: Eine Familie von tiefen neuronalen Netzwerken, die 2014 von Google eingeführt wurde. Die Inception-Modelle zeichnen sich dadurch aus, dass sie mehrere parallele Faltungsschichten auf verschiedenen Skalen verwenden, um Merkmale aus Bildern zu extrahieren. Inception-Modelle werden in großem Umfang für verschiedene Aufgaben der Computer Vision verwendet, z. B. für die Klassifizierung von Bildern und die Objekterkennung.
MobileNet: Eine Familie von tiefen neuronalen Netzen, die für mobile und eingebettete Geräte mit begrenzten Rechenressourcen ausgelegt ist. MobileNet-Modelle zeichnen sich durch ihre schlanke Architektur aus, die eine schnelle Inferenz auf mobilen Geräten ermöglicht. MobileNet-Modelle sind für verschiedene Computer-Vision-Aufgaben weitgehend eingesetzt worden, z. B. zur Objekterkennung und -erfassung auf mobilen Geräten.
Diese vortrainierten neuronalen Netze wurden öffentlich zugänglich gemacht und als Ausgangspunkt für Transfer Learning in vielen Anwendungen der Computer Vision weithin genutzt. Weitere Informationen über die verschiedenen Modelle sind auf TensorFlow Model Garden und PyTorch Hub, den zwei beliebtesten Deep Learning Frameworks, zu finden.
Training vor Ort und in der Cloud
Das Training großer visueller Modelle kann vor Ort oder in der Cloud erfolgen, was jeweils eigene Vorteile mit sich bringt. Lokales Training bietet die Kontrolle über Hard- und Software und ermöglicht individuelle Anpassungen und Experimente. Es kann jedoch rechenintensiv sein und teure Hardware wie GPU oder TPU erfordern, und der Prozess kann zeitaufwändig sein und mehrere Tage oder Wochen dauern.
Cloud-basiertes Trainingbietet Zugang zu leistungsstarken Hardwareressourcen wie TPU und GPU und ist zudem skalierbar. Anbieter wie AWS, GCP und Azure verfügen über vorkonfigurierte ML-Plattformen, die einfaches Training und Bereitstellung ermöglichen. Cloud-Training ist für Projekte aller Größen kosteneffizient, kann aber zusätzliche Kosten wie z. B. für die Datenübertragung verursachen. Sicherheits- und Datenschutzaspekte müssen berücksichtigt werden, um Daten zu schützen und Vorschriften einzuhalten.
Anwendungsfälle
Um ein besseres „Gefühl“ zu bekommen, wie Transfer Learning funktioniert, sollten wir uns einen bestimmten Anwendungsfall aus dem Bereich Einzelhandel/Mode genauer ansehen. Man stelle sich vor, ein Einzelhandelsunternehmen möchte sein Produktempfehlungssystem verbessern, indem es den Kunden auf der Grundlage bestimmter Vorlieben ähnliche Produkte vorschlägt. Das Unternehmen verfügt über einen großen Katalog von Produktbildern und möchte ein genaues und effizientes Empfehlungssystem erstellen, das aus dem Kundenverhalten und den Rückmeldungen lernen kann. Genaue Angaben zu einem bestimmten Modell, einschließlich Python-Code, sind im GitHub-Bericht mit dem Titel „Fashion-Recommendation-System“ zu finden.
Eine Möglichkeit, das zu erreichen, besteht darin, das Empfehlungsmodell von Grund auf neu zu erstellen, aber das kostet eine Menge Ressourcen. Stattdessen kann das Unternehmen ein vortrainiertes CNN-Modell (Gefaltetes Neuronales Netzwerk) wie VGG verwenden, das bereits auf einem großen Datensatz von Bildern geschult worden ist.
Das vortrainierte CNN kann auf den Produktbildern des Einzelhandelsunternehmens feinabgestimmt werden, um allgemeine oder sogar spezifische Merkmale und Attribute der Produkte zu erkennen, wie z. B. Farbe, Textur und Form, die sich gezielt auf die Produktbilder des Unternehmens und nicht auf den allgemeinen Bildbestand beziehen.
Sobald das vortrainierte CNN auf die Produktbilder des Unternehmens abgestimmt wurde, kann es zur Erstellung von Einbettungen für jedes Produkt verwendet werden. Diese Einbettungen stellen die einzigartigen Merkmale jedes Produkts dar, die das Modell zu erkennen gelernt hat. Die Einbettungen können dann verwendet werden, um Produkte zu vergleichen und Ähnlichkeiten zwischen ihnen zu finden.
Im Allgemeinen erfolgt die Einbettung nicht in der für den Menschen lesbaren Form (wie Farbe, Textur), sondern wird als Gewichtskoeffizient der letzten Schicht des neuronalen Netzes dargestellt. Und die beliebteste Methode, um Ähnlichkeiten in dieser Form zu finden, ist die Verwendung des Kosinus-Abstands. Genauere Angaben finden sich im Kaggle-Notebook „Get Started With Semantic Segmentation“.
Im Ergebnis werden bei der Interaktion eines Kunden mit dem Empfehlungssystem, sein Verhalten und seine Vorlieben erfasst und seine Einbettungen erstellt. Das System vergleicht dann die Einbettungen des Kunden mit denen des Produktkatalogs des Unternehmens und schlägt Produkte vor, die den Vorlieben des Kunden am ähnlichsten sind.
Zusammenfassung
Transfer Learning hat sich als ein wertvolles Verfahren zur Verbesserung der Leistung von Compute- Vision-Modellen in verschiedenen Geschäftsanwendungen erwiesen. Durch die Verwendung von vortrainierten Modellen können Unternehmen ihre Notwendigkeit für umfangreiche Trainingsdaten verringern, was zu Kosteneinsparungen und einer kürzeren Markteinführungszeit führt. Im E-Commerce kann Transfer Learning die Produktsuche optimieren, die Markierung automatisieren und die visuelle Suche ermöglichen. Es kann auch die Bild- und Videoanalyse für die Qualitätskontrolle und Inspektion verbessern. Die Anpassung von vortrainierten Modellen an spezifische Bereiche stellt zwar eine Herausforderung dar, doch die Vorteile liegen in der verbesserten Modellgenauigkeit und -effizienz, die zu einem besseren Kundenerlebnis und höheren Umsätzen führen.
Artikelfiles und Artikellinks
(ID:49627689)