Wie Milvus das Video-Deduplizierungssystem von BIGO für einen optimalen Durchsatz und ein optimales Benutzererlebnis umgestaltet hat

<200ms
Reaktionszeit bei der Suche mit einer hohen Abrufrate
>700 Millionen
Indizierung und Verwaltung von Einbettungsvektoren
Signifikant erhöht
Abfragedurchsatz ohne Leistungseinbußen
Milvus has done an extraordinary job in revolutionizing Likee's video deduplication system, which significantly fueled the growth of BIGO's short-video business.
Xinyang Guo
Über BIGO
BIGO Technology (BIGO) ist ein schnell wachsendes Technologieunternehmen mit Sitz in Singapur und über 30 Niederlassungen sowie sechs Forschungs- und Entwicklungszentren weltweit. Auf der Grundlage von Technologien der künstlichen Intelligenz bietet BIGO videobasierte Produkte und Dienstleistungen wie Bigo Live für Live-Streaming und Likee für das Teilen von Kurzvideos an und erfreut sich mit über 400 Millionen Nutzern in 150 Ländern großer Beliebtheit.
Herausforderungen: Massive Mengen an doppelten Videos entfernen
Likee ist eine unglaubliche globale Plattform, die es den Nutzern ermöglicht, sich selbst auszudrücken und ihre Erlebnisse durch kurze Videos zu teilen. Da jedoch täglich mehrere Millionen Nutzer Videos erstellen, steht Likee vor der großen Herausforderung, die Nutzererfahrung zu verbessern und hochwertige Inhalte zu empfehlen. Eine der größten Herausforderungen, die Likee bewältigen muss, ist die schiere Menge an Duplikaten von Videos, die auf die Plattform hochgeladen werden.
Um dieses Problem in den Griff zu bekommen, benötigt Likee eine Lösung, mit der doppelte Videos schnell und effizient erkannt und entfernt werden können. Ein solcher Prozess ist kompliziert und erfordert ein umfassendes Verständnis der unterschiedlichen Merkmale jedes Videos sowie die Fähigkeit, diese schnell zu vergleichen und gegenüberzustellen.
Bisher nutzte Likee Faiss, eine Bibliothek für die Ähnlichkeitssuche und das Clustering von dichten Vektoren. Faiss hatte jedoch Schwierigkeiten, große Mengen von Vektoren zu verwalten und wies eine langsame Abfrageantwort und einen begrenzten Abfragedurchsatz auf. Daher benötigte das Likee-Team dringend eine effizientere Lösung für die Ähnlichkeitssuche und -erkennung.
Lösung: Effizientere Videoähnlichkeitssuche mit Milvus
[Milvus (https://milvus.io/) ist eine Open-Source-Vektordatenbank, die speziell zum Speichern, Indizieren und Abfragen von Einbettungsvektoren entwickelt wurde und eine blitzschnelle Ähnlichkeitssuche ermöglicht. Mit Milvus hat das Entwicklungsteam von Likee ein effizienteres Deduplizierungssystem entwickelt, das Suchvorgänge in weniger als 200 ms durchführt und gleichzeitig eine hohe Wiederfindungsrate gewährleistet. Likee profitierte auch von der Skalierbarkeit von Milvus, was zu einem verbesserten Durchsatz bei Vektorabfragen und einer höheren Arbeitseffizienz führte.
Wie Likee doppelte Videos identifiziert
Das Deduplizierungssystem von Likee zerschneidet jedes neu hochgeladene Video in 15-20 Einzelbilder und konvertiert jedes in einen Merkmalsvektor. Anschließend sucht das System die k ähnlichsten Vektoren aus einer Datenbank, in der über 700 Millionen Vektoren zu allen vorhandenen Videos gespeichert sind. Anschließend bestimmt das System, welche Bänder Duplikate sind und entfernt werden müssen.
Das folgende Diagramm veranschaulicht die Struktur des Deduplizierungssystems von Likee. Zunächst werden neue Videos in Kafka, einem Datenspeichersystem, gespeichert und von Kafka-Konsumenten konsumiert. Das System verwendet dann Deep-Learning-Modelle, um die Videos in Einbettungen umzuwandeln und sie an den Ähnlichkeitsprüfer zu senden. Bevor sie für weitere Suchvorgänge geladen werden, werden die Einbettungen von Milvus indiziert und in Ceph gespeichert. Schließlich speichert das System die Video-IDs, die diesen Einbettungen entsprechen, in TiDB oder Pika, zwei relationalen Datenbanken.
Die Architektur des Deduplizierungssystems von Likee
Wie Milvus die Ähnlichkeitssuche von Likee unterstützt
Das folgende Diagramm veranschaulicht die einzelnen Schritte einer Ähnlichkeitssuche.
- Zur Durchführung einer Videoähnlichkeitssuche führt Milvus zunächst eine Stapelsuche durch, um die 100 ähnlichsten Vektoren zu jedem aus einem neuen Video extrahierten Merkmalsvektor abzurufen. Jeder ähnliche Vektor wird mit seiner entsprechenden Video-ID verknüpft.
- Anschließend entfernt Milvus doppelte Videos, indem es die Video-IDs vergleicht und die Merkmalsvektoren der verbleibenden Videos aus TiDB oder Pika abruft.
- Schließlich berechnet und bewertet Milvus die Ähnlichkeit zwischen den abgerufenen Merkmalsvektoren und denen des Abfragevideos. Die Video-ID mit der höchsten Punktzahl wird als Ergebnis zurückgegeben.
Wie Milvus die Ähnlichkeitssuche von Likee unterstützt
Ergebnisse: Verbesserter Abfragedurchsatz mit schnellerer Suchantwort
Milvus, eine hochleistungsfähige Vektorsuchmaschine, hat eine entscheidende Rolle im Videodeduplizierungssystem von Likee gespielt und damit die Benutzerfreundlichkeit und das Wachstum von BIGOs Kurzvideogeschäft erheblich verbessert. Mit Milvus kann Likee eine Suche in weniger als 200 ms abschließen und so eine hohe Auffindungsrate gewährleisten. Milvus ist zudem horizontal skalierbar, was Likee in die Lage versetzt, den Durchsatz bei Vektorabfragen deutlich zu erhöhen und gleichzeitig die Effizienz des Systems zu steigern, ohne die Leistung zu beeinträchtigen.
Zusätzlich zur Videodeduplizierung plant Bigo, Milvus für weitere videorelevante Zwecke einzusetzen, wie z.B. Stimmungsanalyse, Objekterkennung und personalisierte Videoempfehlungen. BIGO und Milvus freuen sich darauf, ihre Zusammenarbeit in diesen Bereichen und darüber hinaus auszubauen.
We plan to expand the use of Milvus in different fields like content moderation and restriction and customized video services. BIGO and Milvus working together will benefit both businesses and I look forward to Milvus and its community to keep growing and prosper.
Xinyang Guo