解讀優酷視頻多級多模態搜索引擎的關鍵技術

優酷在文本搜索系統的基礎上,不斷探索視頻搜索的方案,在多模態輸入、多級多模態索引、跨模態檢索上做了大量工作,本次分享將揭開優酷多模態圖引擎的面紗。

背景

隨着智能手機及移動互聯網的快速發展,人們接觸到的多模態數據不管是數量還是類別都在飛速增長。

優酷作爲視頻平臺,擁有海量OGC、UGC視頻內容,而視頻內容數據是高維度多模態數據,有標題、簡介、評論等文本信息,有視頻幀的圖像信息,有聲音,也有連貫的動作視頻片段。傳統的基於倒排索引的搜索引擎只適合檢索文本信息,對於多媒體內容檢索能力不足。

爲了讓用戶更便捷地找到多媒體內容,增加多模態搜索能力,優酷視頻搜索團隊設計並研發了多級多模態搜索引擎(MMS),可以提供分佈式大規模多層級多模態索引能力,低延時跨模態級聯檢索能力,多層級檢索、融合、排序能力。

系統概況

MMS基於阿里平臺的Hippo(在線服務調度)、SAP(應用服務框架)等基礎設施開發部署,主要在索引結構、檢索控制、執行框架、部署等方面做了系統設計和選型。

關鍵技術

1 分佈式多級多模態索引結構設計

每層級獨立構建分佈式索引,索引類型包括倒排及向量索引。以視頻、幀(圖片)、人臉爲例,索引結構如下:

視頻、幀、人臉存在層級關係;同時幀圖片及人臉都有表徵向量建的向量索引,支持億級別規模,分10個分片,Top10的召回率90%以上。

2 檢索調度

MMS的複雜性在於其在線檢索邏輯,即在支持層級及多模態query輸入的基礎上,如何控制跨層級、跨模態的檢索。通過定義標準的跨層級和跨模態準則,根據用戶的輸入形成在線檢索邏輯。

基本的檢索流程如下圖:

由multi-call進行多層級、多模態擴展查詢邏輯,其中關鍵是多級、跨模態的擴展查詢邏輯。

1)跨層級

跨層級的檢索由用戶輸入的層級作爲起始檢索點,用戶想要的輸出作爲終點作爲擴展,系統具有自適應推理能力。

2)跨模態

跨模態檢索會有兩種形式的解決方案,使用不同場景,索引構建前,不同模態數據做統一表徵,映射到統一空間,在線進行向量檢索,此處內容表徵的佔主要,MMS主要解決是在文本、向量間進行跨模態檢索。

3 圖化執行引擎

複雜檢索邏輯及低延遲服務能力要求,需要有高效的執行框架,圖化執行引擎具備最大限度並行能力。同時對算子進行抽象,可以更自由編排及複用。

MMS選擇Suez圖化執行引擎,採用DAG執行引擎+業務邏輯算子的實現方式。

4 通用性算子實現

搜索邏輯中會設計query parser、merge、sort通用邏輯,基於圖化執行引擎接口實現通用算子:

1)query parser算子負責解析請求,查詢串使用簡單文本方式,相對於pb/binary方式,可視化的查詢串更加直觀,同時查詢語法簡單且強大。查詢串支持查詢文本查詢,向量查詢,或者同時有兩者,支持高級語法,可以控制的查詢參數粗排精排等;

2)merge融合多層級doc,補全所需要的正排、summary信息;

3)sort是搜索排序邏輯,排序後選取Top N返回;

4)result是結果返回和處理邏輯,基於查詢使用文本方式,我們希望結果也是直接可視化,所以在構建結果的時候支持了 json/xml,同時爲了兼顧性能,我們也支持 protobuf 的返回格式,同時還加入 snappy/lz4 方式壓縮,使返回結果集更小,傳輸效率更高;爲了方便調試,我們加入了調試參數,可以保存聚合調試參數,輸出引擎內部的調試內容。

產品應用

1 優酷智能搜索

採用MMS對視頻、幀、元素(人物、動作)等多級內容進行索引,召回出視頻解構後的信息,可以實現定幀播放,支持用戶對於精準視頻內容片斷的需求。

2 以圖搜劇

用戶可以通過拍照、上傳圖片搜索人物及節目、相似畫面的視頻。輸入態豐富爲圖像,召回系統採用MMS,既具備傳統的通過人臉識別後用人名召回節目,又可直接通過圖片向量進行召回。

總結&展望

多媒體信息不斷豐富,直播、小視頻等相關應用增長迅猛,5G移動通信技術的進一步普及,多媒體信息的生產、傳播將會持續爆發式增長。人工智能技術日臻成熟,對於多模態內容理解、表徵會進一步加強。多模態的人機交互體現會滲透到生活、生產各個環節。多級多模態的檢索能力是必須要面臨的核心問題。

優酷的多級多模態搜索引擎(MMS)提供了低延遲的跨模態、跨層級搜索能力,支持大規模多模態的索引。在視頻分發、視頻創作中都有着十分關鍵的應用場景。MMS技術在更多的智能交互場景也將發揮更廣泛的應用場景。

作者介紹:阿里文娛開發專家 崇懿,阿里文娛開發專家 慧善

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章