Predicting total time to compress a video corpus using online inference systems
Dieses Paper schlägt ein neuartiges Online-Machine-Learning-Framework vor und evaluiert dieses, welches die gesamte Transcoding-Zeit für ein ganzes Video-Korpus mit weniger als 5 % Fehler vorhersagt und damit eine signifikant höhere Genauigkeit als bisherige Methoden zur Vorhersage pro Clip demonstriert.
Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
Stellen Sie sich vor, Sie betreiben eine riesige digitale Bibliothek, in der ständig Tausende von Videodateien abgegeben werden, um sie für das Streaming zu verkleinern. Dieser Prozess, die sogenannte „Kompression“, ist wie das Packen eines Koffers: Man muss die Videodaten falten und zusammenpressen, damit sie weniger Platz einnehmen, aber je schwieriger das Video zu falten ist (viel schnelle Bewegung oder komplexe Texturen), desto länger dauert es. In der Welt des Cloud-Computings ist es entscheidend zu wissen, wie lange so ein Packvorgang genau dauern wird. Es hilft Unternehmen zu entscheiden, wie viel Energie sie verbrauchen müssen und – was noch wichtiger ist – wie viel sie ihren Kunden berechnen sollen. Momentan agieren die meisten Systeme wie ein blind geführter Koch; sie verraten Ihnen erst den Preis der Mahlzeit, nachdem Sie bereits gegessen haben. Das macht die Budgetplanung zu einem Albtraum. Wissenschaftler haben versucht, die Zeit für jeden einzelnen Videoclip vorherzusagen, aber das ist so, als würde man versuchen, das Gesamtgewicht einer ganzen Lkw-Ladung Ziegelsteine zu erraten, indem man nur einen einzelnen Ziegelstein nach dem anderen wiegt. Das ist langsam, und die Fehler summieren sich auf. Die große Frage ist: Können wir die Gesamtzeit für den gesamten Stapel an Videos vorhersagen, noch bevor wir die Arbeit überhaupt beendet haben, und können wir dabei im Laufe der Zeit intelligenter werden?
Dieses Papier, geschrieben von einem Team des Trinity College Dublin, widmet sich genau diesem Problem. Anstatt zu versuchen, die Zeit für jeden einzelnen Videoclip einzeln vorherzusagen, haben sie eine neue Art von „intelligentem Taschenrechner“ entwickelt, der die benötigte Gesamtzeit zur Kompression einer ganzen Sammlung (oder eines „Korpus“) an Videos vorhersagt. Sie fanden heraus, dass es viel besser ist, das große Ganze im Blick zu behalten, als sich auf die kleinen Einzelteile zu konzentrieren. Tatsächlich war ihre Methode, die Gesamtzeit für die gesamte Gruppe vorherzusagen, mehr als doppelt so genau wie die alte Methode, die Zeit pro Clip zu schätzen.
Hier ist die Funktionsweise ihres Systems, erklärt anhand einer unterhaltsamen Analogie. Stellen Sie sich vor, Sie sind ein Bauleiter auf einer Baustelle mit 600 verschiedenen Räumen, die gestrichen werden müssen. Einige Räume sind klein und schlicht; andere sind riesig und mit komplizierten Wandgemälden bedeckt.
- Der alte Weg (Pro-Clip-Vorhersage): Sie versuchen zu schätzen, wie lange es dauern wird, jeden einzelnen Raum zu streichen, bevor Sie überhaupt anfangen. Sie schätzen vielleicht, dass der Raum mit dem Wandgemälde 10 Stunden dauert und die Abstellkammer 1 Minute. Aber wenn Sie auch nur eine einzige Schätzung falsch machen, ist Ihre Gesamtschätzung für den gesamten Auftrag daneben.
- Der neue Weg (Korpus-Vorhersage): Sie beginnen zu streichen. Nachdem Sie gerade erst ein paar Räume fertiggestellt haben (sagen wir, 2 % der Arbeit), halten Sie inne und schauen sich an, was Sie bisher getan haben. Sie stellen fest: „Hey, die Räume, die ich bisher gestrichen habe, dauern im Durchschnitt tatsächlich 15 Minuten pro Stück.“ Dann nutzen Sie diese realen Daten, um zu schätzen, wie lange der Rest der 588 Räume dauern wird.
Die Autoren testeten diese Idee mit zwei verschiedenen „Anstrichtools“ (Video-Codecs namens x264 und x265) und einem riesigen Datensatz aus 600 hochwertigen 4K-Videoclips. Sie haben nicht einfach nur geraten; sie haben ein System gebaut, das während des Prozesses lernt. Sie nennen das „Online-Inferenz“. Es ist wie ein GPS, das Ihre Route und Ankunftszeit jedes Mal aktualisiert, wenn Sie an einer neuen Landmarke vorbeikommen, anstatt nur eine statische Karte zu Beginn bereitzustellen.
Sie testeten verschiedene Strategien:
- Die „Fortschrittsbalken“-Schätzung: Dies ist die einfachste Methode. Sie nimmt einfach an, dass die restlichen Videos im gleichen Durchschnittstempo ablaufen wie die bereits fertiggestellten. Das ist okay, aber nicht besonders gut.
- Die „Gruppierungs“-Schätzung: Diese Methode sortiert die Videos in Gruppen (Cluster) basierend auf ihrer Komplexität (wie das Sortieren von Räumen danach, ob sie Wandgemälde oder schlichte Wände haben). Sie sagt die Zeit für die verbleibenden Räume in jeder Gruppe separat voraus. Das ist besser.
- Die „Superhirn“-Schätzung (Maschinelles Lernen): Hierbei wird ein intelligenter Algorithmus namens XGBoost verwendet. Er betrachtet die Details der Videos, die bereits verarbeitet wurden, und lernt daraus komplexe Muster, um den Rest vorherzusagen.
Die Ergebnisse waren überraschend und beeindruckend. Die Autoren fanden heraus, dass man nicht das „Superhirn“ für den gesamten Job benötigt. Tatsächlich ist die beste Strategie ein Mix-and-Match-Ansatz:
- Bevor man beginnt: Nutzen Sie ein allgemeines „Superhirn“-Modell, um eine grobe Vorstellung zu bekommen. Für das x264-Tool lag diese Schätzung etwa bei 13,5 % der Gesamtzeit daneben.
- Nach 2 % Erledigung: Wechseln Sie zum „Superhirn“, das online lernt. Dadurch sinkt der Fehler auf etwa 8,75 %.
- Nach 6 % Erledigung: Wechseln Sie zur einfacheren „Gruppierungs“-Methode. Überraschenderweise wurde diese einfache Methode sogar noch genauer und senkte den Fehler auf unter 5 % (4,89 % für x264 und 5,11 % für x265).
Das Papier argumentiert ausdrücklich dagegen, dass man ein einzelnes, komplexes Modell benötigt, das auf allem trainiert wurde, um gute Ergebnisse zu erzielen. Sie zeigten, dass allgemeine Modelle (die mit Daten aus anderen Quellen trainiert wurden) tatsächlich schlechter abschnitten, sobald der eigentliche Job begann. Sie bewiesen zudem, dass man nicht warten muss, bis der Job zu 50 % oder 90 % erledigt ist, um eine gute Schätzung zu erhalten; man kann bereits nach der Verarbeitung eines winzigen Bruchteils der Videos sehr genaue Vorhersagen (mit weniger als 5 % Fehler) treffen.
Das Team führte diese Messungen auf einem leistungsstarken Computer mit 64 Kernen durch, der 600 Clips verarbeitete, die entweder 2 oder 4 Sekunden lang waren. Sie fanden heraus, dass die „Rechenleistung“, die für diese Vorhersagen benötigt wird, minimal ist – sie fügt dem gesamten Prozess weniger als 0,2 % zusätzliche Zeit hinzu. Das bedeutet, dass das System schnell genug ist, um in Echtzeit eingesetzt zu werden, ohne die eigentliche Videokompression zu verlangsamen.
Kurz gesagt legt das Papier nahe, dass es für die Vorhersage, wie lange ein massiver Video-Job dauern wird, besser ist, ein „lernender Bauleiter“ als eine „Kristallkugel“ zu sein. Indem man eine kleine Stichprobe der Arbeit beobachtet und seine Schätzung im Laufe der Zeit anpasst, kann man die Gesamtkosten und die Zeit mit einer viel höheren Genauigkeit vorhersagen als durch den Versuch, jeden einzelnen Schritt im Voraus zu erahnen. Dies hilft Cloud-Unternehmen, Geld zu sparen, und lässt Kunden genau wissen, wofür sie bezahlen, noch bevor die Arbeit überhaupt begonnen hat.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.