Connect with us

Bessere Machine Learning-Leistung durch CNN-basiertes Bildgrößenanpassen

Künstliche Intelligenz

Bessere Machine Learning-Leistung durch CNN-basiertes Bildgrößenanpassen

mm

Google Research hat eine neue Methode vorgeschlagen, um die Effizienz und Genauigkeit von bildbasierten Computer-Vision-Trainingsworkflows zu verbessern, indem die Art und Weise verbessert wird, wie die Bilder in einem Datensatz im Preprocessing-Stadium verkleinert werden.

In dem Paper Learning to Resize Images for Computer Vision Tasks nutzen die Forscher Hossein Talebi und Peyman Milanfar ein CNN, um eine neue Hybrid-Bildgrößenanpassungsarchitektur zu erstellen, die eine bemerkenswerte Verbesserung der Erkennungsergebnisse in vier beliebten Computer-Vision-Datensätzen erzielt.

Das vorgeschlagene gemeinsame Framework für Erkennung und Größenanpassung. Quelle: https://arxiv.org/pdf/2103.09950.pdf

Das vorgeschlagene gemeinsame Framework für Erkennung und Größenanpassung. Quelle: https://arxiv.org/pdf/2103.09950.pdf

Das Paper stellt fest, dass die Vergrößerungs-/Verkleinerungsmethoden, die derzeit in automatisierten Machine-Learning-Pipelines verwendet werden, Jahrzehnte alt sind und häufig nur grundlegende bilineare, bikubische und nächste-Nachbar-Größenanpassung – Methoden verwenden, die alle Pixel gleichbehandeln.

Im Gegensatz dazu ergänzt die vorgeschlagene Methode die Bildaten durch ein CNN und integriert diese Eingabe in die vergrößerten Bilder, die letztendlich durch die Modellarchitektur verlaufen.

Bildbeschränkungen im AI-Training

Um ein Modell zu trainieren, das mit Bildern umgeht, enthält ein Machine-Learning-Framework eine Preprocessing-Phase, in der eine Vielzahl von Bildern unterschiedlicher Größen, Farbräume und Auflösungen (die zum Trainingsdatensatz beitragen) systematisch beschnitten und in konsistente Dimensionen und ein stabiles, einheitliches Format vergrößert werden.

Im Allgemeinen wird dies einige Kompromisse umfassen, die auf dem PNG-Format basieren, bei dem ein Kompromiss zwischen Verarbeitungszeit/Ressourcen, Dateigröße und Bildqualität hergestellt wird.

In den meisten Fällen sind die endgültigen Dimensionen des verarbeiteten Bildes sehr klein. Unten sehen wir ein Beispiel für die 80×80-Auflösung, in der einige der frühesten Deepfakes-Datensätze erzeugt wurden:

Dies ist die 80x80-Auflösung, in der einige der frühesten Deepfakes-Datensätze erzeugt wurden.

Da Gesichter (und andere mögliche Themen) selten in das erforderliche quadratische Verhältnis passen, müssen möglicherweise schwarze Balken hinzugefügt (oder verschwendeter Platz zugelassen) werden, um die Bilder zu homogenisieren, was die tatsächlich verwendeten Bildaten weiter verringert:

Hier wurde das Gesicht aus einem größeren Bildbereich extrahiert, bis es so wirtschaftlich wie möglich beschnitten wurde, um den gesamten Gesichtsbereich zu umfassen. Wie jedoch auf der linken Seite zu sehen ist, wird ein großer Teil des verbleibenden Bereichs nicht während des Trainings verwendet, was die Bedeutung der Bildqualität der vergrößerten Daten unterstreicht.

Hier wurde das Gesicht aus einem größeren Bildbereich extrahiert, bis es so wirtschaftlich wie möglich beschnitten wurde, um den gesamten Gesichtsbereich zu umfassen. Wie jedoch auf der rechten Seite zu sehen ist, wird ein großer Teil des verbleibenden Bereichs nicht während des Trainings verwendet, was die Bedeutung der Bildqualität der vergrößerten Daten unterstreicht.

Da die GPU-Fähigkeiten in den letzten Jahren verbessert wurden, mit der neuen Generation von NVIDIA-Karten, die mit steigenden Mengen an Video-RAM (VRAM) ausgestattet sind, beginnen die durchschnittlichen Bildgrößen zu steigen, obwohl 224×224 Pixel immer noch ziemlich standardmäßig sind (z. B. ist es die Größe des ResNet-50-Datensatzes).

Ein unvergrößertes 224x244-Pixel-Bild.

Ein unvergrößertes 224×244-Pixel-Bild.

Passen von Batches in VRAM

Der Grund, warum die Bilder alle die gleiche Größe haben müssen, ist, dass Gradientenabstieg, die Methode, mit der das Modell über die Zeit verbessert wird, einheitliche Trainingsdaten erfordert.

Der Grund, warum die Bilder so klein sein müssen, ist, dass sie während des Trainings in kleinen Batches, normalerweise zwischen 6-24 Bildern pro Batch, in VRAM geladen (vollständig entkomprimiert) werden müssen. Zu wenige Bilder pro Batch, und es gibt nicht genug Gruppenmaterial, um gut zu verallgemeinern, sowie eine Verlängerung der Trainingszeit; zu viele, und das Modell kann möglicherweise nicht die notwendigen Merkmale und Details erhalten (siehe unten).

Dieser “Live-Loading”-Abschnitt der Trainingsarchitektur wird als latenter Raum bezeichnet. Dies ist der Ort, an dem Merkmale wiederholt aus denselben Daten (d. h. denselben Bildern) extrahiert werden, bis das Modell zu einem Zustand konvergiert, in dem es alle verallgemeinerten Kenntnisse besitzt, die es benötigt, um Transformationen auf späteren, unbekannten Daten desselben Typs durchzuführen.

Dieser Prozess dauert normalerweise Tage, kann aber auch einen Monat oder mehr an konstanter und unermüdlicher Hochleistungsarbeit erfordern, um nützliche Verallgemeinerung zu erzielen. Erhöhungen der VRAM-Größe sind nur bis zu einem bestimmten Punkt hilfreich, da sogar geringe Erhöhungen der Bildauflösung einen Effekt auf die Verarbeitungskapazität haben können, der nicht immer vorteilhaft ist.

Die Verwendung einer größeren VRAM-Kapazität, um höhere Batch-Größen zu ermöglichen, ist auch ein gemischter Segen, da die durch diese höheren Trainingsgeschwindigkeiten erzielten Vorteile wahrscheinlich durch weniger präzise Ergebnisse aufgehoben werden.

Daher ist alles, was eine Verbesserung innerhalb der bestehenden Einschränkungen der Pipeline bewirken kann, eine bemerkenswerte Leistung.

Wie überlegene Verkleinerung hilft

Die endgültige Qualität eines Bildes, das in einen Trainingsdatensatz aufgenommen wird, hat sich als positive Auswirkung auf das Ergebnis des Trainings erwiesen, insbesondere bei Objekterkennungsaufgaben. Im Jahr 2018 argumentierten Forscher des Max-Planck-Instituts für Intelligente Systeme dass die Wahl der Resampling-Methode die Trainingsleistung und die Ergebnisse erheblich beeinflusst.

Darüber hinaus hat vorherige Arbeit von Google (koautoriert von den Autoren des neuen Papers) festgestellt, dass die Klassifizierungsgenauigkeit durch Kontrolle über Komprimierungsartefakte in Datensatzbildern verbessert werden kann.

Die CNN-Architektur für den von Google Research vorgeschlagenen Downsampling-Algorithmus.

Die CNN-Architektur für den von Google Research vorgeschlagenen Downsampling-Algorithmus.

Das CNN-Modell, das in den neuen Resampler integriert ist, kombiniert bilineare Größenanpassung mit einer “Skip-Connection”-Funktion, die Ausgaben aus dem trainierten Netzwerk in das vergrößerte Bild einbeziehen kann.

Im Gegensatz zu einer typischen Encoder/Decoder-Architektur kann die neue Vorschlag nicht nur als feed-forward-Engpass, sondern auch als inverser Engpass für die Vergrößerung auf jede Zielgröße und/oder -verhältnis dienen. Darüber hinaus kann die “Standard”-Resampling-Methode durch jede andere geeignete herkömmliche Methode ersetzt werden, wie z. B. Lanczos.

Hohe Frequenzdetails

Die neue Methode erzeugt Bilder, die im Wesentlichen wichtige Merkmale (die letztendlich durch den Trainingsprozess erkannt werden) direkt in das Quellbild “backen”. Ästhetisch gesehen sind die Ergebnisse unkonventionell:

Die neue Methode wurde auf vier Netzwerke angewendet – Inception V2; DenseNet-121; ResNet-50; und MobileNet-V2. Die Ergebnisse der Google-Research-Bild-Downsampling-/Größenanpassungsmethode erzeugen Bilder mit offensichtlicher Pixelaggregation, die die wichtigsten Merkmale vorhersagt, die während des Trainingsprozesses erkannt werden.

Die neue Methode wurde auf vier Netzwerke angewendet – Inception V2; DenseNet-121; ResNet-50; und MobileNet-V2. Die Ergebnisse der Google-Research-Bild-Downsampling-/Größenanpassungsmethode erzeugen Bilder mit offensichtlicher Pixelaggregation, die die wichtigsten Merkmale vorhersagt, die während des Trainingsprozesses erkannt werden.

Die Forscher stellen fest, dass diese anfänglichen Experimente ausschließlich für Bilderkennungsaufgaben optimiert sind und dass ihre CNN-gesteuerte “gelernte Größenanpassung” in der Lage war, verbesserte Fehlerraten in solchen Aufgaben zu erzielen. Die Forscher planen, die Methode in Zukunft auf andere Arten von bildbasierten Computer-Vision-Anwendungen anzuwenden.

Autor über maschinelles Lernen, Domänen-Spezialist in der menschlichen Bildsynthese. Ehemaliger Leiter der Forschungsinhalte bei Metaphysic.ai.