Milvus 在 Likee 短視訊去重業務中的實踐

Zilliz發表於2022-06-20

寫在前面

本篇內容主要介紹擁有全球 4 億使用者的視訊直播公司 BIGO 如何利用向量搜尋引擎 Milvus 進行海量短視訊去重的工作。在 Milvus 向量搜尋引擎的加速下,BIGO 旗下的短視訊產品 Likee 能夠將每次搜尋都控制在 200ms 內,並且能夠保證較高的召回率。同時,我們採用了橫向擴充套件 Milvus 的方式來提高向量查詢的吞吐量,來保證業務查詢效率。

業務背景

自 2014 年成立以來,BIGO 基於強大的音視訊處理技術、全球音視訊實時傳輸技術、人工智慧技術,推出了一系列音視訊類社交及內容產品,如 BIGO LIVE、Likee。截至 2020 年第二季度,BIGO 旗下的短視訊產品 Likee 移動端月活躍使用者達 1.5 億,系統每天都需要處理使用者上傳的海量視訊。在這個過程中,為了將質量較高的內容推薦給使用者,系統需要對海量視訊中重複、低質的內容進行淘汰。

去重流程

我們在這裡利用了深度學習的方法進行去重工作。

首先把使用者上傳的視訊切成 15-20 幀,然後把每一幀轉換為特徵向量,再到 7 億多資料量的底庫中進行搜尋,把搜尋出來的 top k 個向量對應的視訊找到,再做比較精細的視訊相似度計算。

在進行向量相似度搜尋時要處理十億級的全量資料,同時每天還伴隨著大量的新增資料,這對向量搜尋系統的效能有非常高的要求和挑戰。

在經過全面的分析和對比之後,我們採用了分散式向量搜尋引擎 Milvus,來幫助我們完成向量相似度檢索的工作。

整體架構

接下來,介紹我們利用 Milvus 進行短視訊去重工作的整體業務架構。

如下圖所示,Likee 平臺上新增的視訊會被實時寫入 kafka,由 kafka-consumer 消費後先進入稽核流程。接著,通過稽核的內容會使用深度學習模型進行視訊特徵提取,將非結構化資料(視訊)轉化為結構化資料(特徵向量)。系統將特徵向量打包後將請求傳送至視訊相似度稽核程式。

視訊去重業務架構

每一個經過特徵提取、轉化為多個特徵向量的視訊,都會先經過 Milvus 構建索引,後存入 Ceph,然後再被 Milvus 查詢節點載入,提供搜尋能力。與此同時,我們也會將視訊 ID 和對應的特徵向量根據業務情況同步儲存到 TiDB 或 Pika 中。

視訊相似度檢索

在上面的流程中我們可以看到,該方案的重點在於對海量的特徵向量進行相似度檢索

上圖中的 similarity-audit(相似度檢驗)利用了 Milvus 的批量搜尋功能,先對每個新增視訊的多個特徵向量進行相似度搜尋,召回每個特徵向量的前 100 個相似向量(這裡召回的每個相似向量繫結了其對應的視訊 ID)。接著,對每次相似度搜尋召回的所有視訊 ID 去重,再從 TiDB 或 Pika 中查詢對應的特徵向量。最後,將查詢到的每組特徵向量和請求視訊的特徵向量進行特定的視訊相似度計算並打分,將得分最高的視訊 ID 作為結果返回,到這裡就完成了視訊的相似度檢索。

完整流程如下圖所示:

similarity-audit 相似度檢驗業務流程

總結與展望

以上就是有關在 Likee 業務中使用 Milvus 完成短視訊去重任務的內容分享。Milvus 作為一款高效能、高召回率的分散式向量搜尋引擎,在 Likee 短視訊去重業務中有著驚豔的表現,極大地幫助了 BIGO 的業務發展。

BIGO 希望今後能與 Milvus 開展更多深入的合作,諸如違規內容稽核或封禁、視訊個性化推薦服務等,來共同推動雙方業務的發展,期待 Milvus 社群發展得越來越好!


關於 Likee

憑藉高質量和多樣化的娛樂性內容,Likee 現已成為全球網際網路短視訊社交產品中引領世界潮流的先鋒與標杆。

  • 2020 年年中,Likee 移動端每月活躍使用者數達 1.5 億。
  • 2019 年 9 月末,Likee 移動端每月活躍使用者數達 1.002 億,位列 Google Play 全球下載榜單前五,超越 Instagram、SnapChat 等知名應用,下載量僅次於 Facebook。
  • 2019 年年中,Likee 移動端每月活躍使用者數達 8070 萬。
  • 2017年,BIGO 創立短視訊社群 Likee ,同年8月正式上架 App Store,直面海外市場,同年榮獲 Google 應用市場年度最佳娛樂應用。
  • 2014年,BIGO 由 David Li 和 Jason Hu 在新加坡創立,是一家專注於人工智慧技術公司。

作者介紹

郭昕陽,BIGO 機器學習平臺負責人,Senior Staff Engineer

韓寶玉,BIGO 機器學習平臺團隊,Engineer

編輯介紹

熊燁,Zilliz Community Intern

臧芃,Zilliz Community Intern


Zilliz 以重新定義資料科學為願景,致力於打造一家全球領先的開源技術創新公司,並通過開源和雲原生解決方案為企業解鎖非結構化資料的隱藏價值。
Zilliz 構建了 Milvus 向量資料庫,以加快下一代資料平臺的發展。Milvus 資料庫是 LF AI & Data 基金會的畢業專案,能夠管理大量非結構化資料集,在新藥發現、推薦系統、聊天機器人等方面具有廣泛的應用。

相關文章