上述技術方案的能夠滿足使用者基本的視頻檢索需求,但是也存在缺陷:
• 大量視覺信息無法參與檢索召回:基于現有多模态算法的搜索,隻能識别處于标簽體系内的人、物、ASR、OCR等内容,大量視覺信息(比如在藍天翺翔的飛鳥),無法文本化參與檢索。
• 強依賴知識圖譜與語義分析:知識圖譜的維護與更新、意圖理解的能力,均需要不斷地投入與更新,使用負擔較大。
• 基于關鍵詞的搜索丢失語義聯系:以“馬老師騎自行車”為例,基于關鍵詞的搜索隻能合并搜索“馬老師”和“自行車”兩個關鍵詞,丢失“騎”這個概念,導緻召回偏差。
與此同時,随着時代發展,大家找片子的手法也越來越刁鑽。使用者希望不再滿足于某個關鍵詞,而是希望使用類似下面的自然語言,去匹配視頻本身的内容,而不僅僅是人、物、ASR、OCR可文本化的内容,比如:足球運動員受傷、飛機穿越天門山、春風化雨育桃李......
如果要實現這樣智能的搜索效果,應該怎麼做呢?我們先來回顧視頻檢索技術的發展曆程。
02 視頻檢索技術發展曆程
第一代:基于文本的傳統視頻檢索
在網絡還不發達的時代,計算機對于音視頻的處理能力及其有限,媒體數據僅僅被當作是文本數據的擴展。為了能夠搜索媒體數據,網站編輯一般會對媒體數據做一次人工編目:取好标題,寫好描述,甚至會手動添加若幹關鍵詞。
所以,傳統的視頻檢索,本質上是退化為文本檢索,通過利用關系型數據庫(如mysql)或文本倒排數據庫()的能力,對文本分詞,進行檢索排序。
第二代:基于AI标簽的跨模态視頻檢索
随着互聯網音視頻數據量的日益增長,媒資人工編目已經到了不可持續的地步,必然要求更高生産力技術的引入。
到21世紀10年代,基于CNN架構神經網絡的日趨成熟,AI已能簡單理解和認識視頻中的客觀實體,并能通過分類模型給視頻分類,此時智能标簽技術便應運而生。以阿裡雲視頻雲的智能标簽技術為例,它能夠給視頻自動打出以下标簽:
• 客觀實體:名人/政治人物/敏感人物、地标、Logo
• 場景與動作事件
• 時間、地域、人物等關鍵詞
• 視頻類目信息
第二代視頻檢索技術是在第一代技術的基礎上,對視覺、聽覺的模态進行了自動分析,将其轉化為文本數據,其總體架構仍然未變,仍是基于文本的檢索。
第三代:基于大模型的自然語言視頻檢索
上述搜索依賴于關鍵字或标簽進行内容索引和檢索,但這類方法存在明顯的限制,尤其是對于非文本内容,如:圖片、視頻,用有限的标簽來描述它們的全面信息是非常困難的。這些标簽可能既無法覆蓋所有相關的概念,也無法表達内容的細緻差異和深層含義。
随着AIGC和所謂的“通用人工智能(AGI)”崛起,尤以大語言模型(LLM)為代表的大模型全面應用為契機,第三代視頻檢索技術開始成熟。LLM内部包含着人類海量知識的表征,将LLM延展到音視頻模态,我們即可實現對媒體數據的表征。
多模态表征大模型能夠将文本、圖片、音頻、視頻等内容轉換成高維空間中的向量表示,也稱為嵌入()。這些嵌入可以捕捉到内容的語義信息,并将其映射到一個連續的向量空間内,使得語義上相似的内容在這個向量空間中彼此接近。
大模型檢索技術支持自然語言搜索,用戶可以用自己的話描述他們想要找的内容,而不是依賴于預先定義好的關鍵詞或标簽。通過對自然語言描述的理解,大模型可以将這些描述轉換為相應的向量表示,并在高維空間中尋找最匹配的内容。
第三代檢索技術的優勢在于它的靈活性和表現力。用戶不必再局限于有限的關鍵字,而可以用自己的語言進行更精确和細膩的描述。同時,由于大模型能夠理解内容的深層意義,搜索結果通常更加相關和準确,增強了用戶體驗,并為獲取和發現信息提供了更加強大的工具。
例如,一個用戶想要找到一張描繪“一個穿着古代盔甲的戰士在日落時分靜立在山巅”的圖片和視頻。在傳統的基于标簽的搜索系統中,用戶可能需要嘗試各種組合的關鍵詞,比如“戰士”、“盔甲”、“日落”、“山巅”等。而在大模型的跨模态檢索系統中,用戶可以直接輸入完整的描述,檢索系統會理解其語義并返回匹配的圖片和視頻。
03 自然語言視頻檢索上線
阿裡雲視頻雲基于達摩院的多模态表征大模型,在點播和智能媒體服務中上線了自然語言視頻檢索。并結合已有的AI标簽檢索、人臉檢索、圖像相似度檢索,形成了完整的多模檢索解決方案。
自然語言視頻檢索演示:
我們當前實現的自然語言視頻檢索技術,支持性能參數:
• 最大支持10萬小時規模的視頻中召回相關片段
• 在10QPS搜索速度下RT
• 召回的片段準确率達到80%以上
當然,在實現自然語言視頻檢索的過程中,我們也遇到了一系列的難點和挑戰。
下文将講述我們如何克服這些難點與挑戰,并介紹實現的技術原理與方案,以及未來視頻檢索進化的方向。
04 多模态表征大模型算法
算法原理
CLIP 是在2021年提出的一個視覺分類模型,在沒有微調的情況下,預訓練模型能夠在下遊任務中達到十分出色的遷移效果。為了擺脫監督學習對标注數據集的強依賴,CLIP采用了自監督對比學習方案,從互聯網收集的4億對圖文數據對中學習圖像和文本的對應關系,進而獲得了視覺-語言的對齊能力。
CLIP預訓練模型包含兩個主要模塊:Text 和 Image ,其中Text 用來提取文本的特征,采用63M參數的text 模型,而Image 用來提取圖像的特征,采用基于CNN架構的模型或者基于架構的ViT模型。
基于文本搜索圖像是CLIP的一個最直接的應用,先将待檢索圖像送入Image 生成圖像特征并存儲,再将檢索文本送入Text 生成文本特征,使用文本特征與存儲的圖像特征逐一進行比對,其中餘弦相似度最高的就是檢索得到的圖像。
CLIP雖然是基于文本-圖像對訓練的,它也可以很自然的推廣到文本-視頻檢索任務中:對視頻抽幀獲得關鍵幀圖像,再将關鍵幀圖像送入Image 提取圖像特征即可。
算法選型
盡管CLIP具有優異的zero-shot遷移能力,但它是基于英文數據集訓練的,要将其應用到中文搜索中需要非常麻煩的翻譯工作。為了避免增加翻譯模塊而引入額外的計算量,我們找到了達摩院發布的兩個開源中文檢索模型:TEAM 和 。
TEAM是達摩院在2022年發布的一項工作,作者在CLIP的雙塔結構上新增了一個名為Token (TEAM)的模塊,該模塊用于對token級别的圖像特征與文本特征做顯式對齊,并為輸入的圖文對生成匹配得分。
所述框架中Image 采用vit-large-結構,Text 采用bert-base結構。作者還構建了一個10億級規模的中文視覺-語言與訓練數據集(通過誇克收集),通過在這個數據集上對所提出框架進行預訓練,在中文跨模态檢索基準測試(-CN, -CN 和 COCO-CN )中達到了先進的性能。
是達摩院在2022年發布的另一項工作,主要是基于2億規模的中文數據集(原生中文數據+漢化中文數據)完成了對CLIP的漢化工作,而模型結構沒有做大的改動。
為了實現跨模态基礎模型對中文數據的高效遷移,作者開發了一種兩階段預訓練方法,其核心思想是利用LiT(-image )使文本編碼器能夠從CLIP的基礎視覺模型中讀出高質量的表示,然後将整個模型轉移到新的預訓練數據域。
首先使用已有預訓練模型對圖文雙塔做參數初始化,其中Image 使用CLIP的參數,Text 使用中文的參數。第一階段,凍結Image 參數,隻對Text 進行預訓練參數更新;第二階段,通過對比學習同時微調Image 和Text 。通過兩階段訓練,在中文跨模态檢索測試(MUGE, -CN, 和 COCO-CN)中達到了最先進的性能。
算法評測
基于阿裡雲視頻雲AI編輯部長期積累的數據,最終采用了一些短視頻作為測試視頻集。該視頻集以幾分鐘到10幾分鐘的短視頻為主,包含新聞、宣傳片、訪談、動畫等各種類型的視頻,這也十分符合視頻雲客戶定位。
将測試視頻集入庫之後,我們設計了一些自然語言句子作為搜索的query,會保證query一定有對應的視頻。考慮到視頻集規模較小,我們最終隻評估召回TOP1的準确率。
經過實際測試,TEAM和都能夠達到TOP1返回80%的準确率,二者都可作為大模型特征提取器嵌入系統框架中。
05 搜索工程技術方案
在系統架構設計上,我們的搜索服務架構采用Core-設計體系,把最核心不易變化的搜索流程設計為Core模塊,把各種不同的搜索業務,分開做成不同的。搜索Core模塊内部有個管理器,管理所有(設計上允許自注冊)。
每個包含3個接口信息分為特征提取、查詢改寫、聚合打分。
上述傳統搜索、跨模态檢索、大模型搜索分别對應3種,另外還支持新增人臉搜索、DNA搜索,後續其他搜索可以支持擴展。
在入庫流程上,媒資入庫時支持多維度的内容理解:
• 基礎信息base-:傳統搜索引擎
• 智能标簽-:依托達摩院自研智能标簽算法,支持物體、場景、地标、事件、LOGO、字幕OCR、語音ASR、詞、類目、主題、人物角色、自定義标簽識别
• 人臉特征face-:人臉識别
• DNA特征dna-:同源檢測特征提取
• 大模型特征mm-:多模态大模型特征提取,進行内容理解
把媒資按照不同維度進行内容理解,傳統标量數據存ES構建倒排索引,向量數據存在自研分布式向量數據庫。
在搜索流程中,跨模态大模型搜索根據用戶query文本,再經過大模型提取文本特征,搜索向量底庫得到目标内容,針對視頻内容會先聚合片段方便後續展示命中視頻媒資内部的細節信息。用戶也可以進行傳統ES文本搜索得到目标内容,用戶可以結合兩種搜索方式使用,多路召回能力目前還于内測中。
當前視頻抽幀頻率是1秒1幀,大模型搜索命中可以得到秒級别的片段信息,滿足用戶精準定位目标内容需求;依托了我們自研的分布式向量數據庫,支持海量數據(10億級别)特征數據存儲,搜索時延在1s内。
目前針對自然語言描述搜索TOP1準确率達80%,針對複雜語義的理解搜索還存在困難,後續結合LLM做改進優化。
人臉檢索支持以圖搜,多模檢索支持以文搜,大模型檢索支持以文搜、以圖搜。
在擴展性上,大模型搜索支持多租戶,各租戶之間數據相互隔離,既支持低成本共享實例,也支持高性能獨享實例;用戶管理媒資數據時支持建立多個搜索庫,每個搜索庫可分别設置搜索索引,搜索索引底層算子支持配置選擇;用戶根據搜索庫增删改查媒資數據,滿足客戶不用使用場景,搜索架構具有高擴展性、可靠性、穩定性。
06 總結和展望
本文介紹了智能媒體服務的跨模态大模型檢索技術實現和使用,我們把媒資進行多維度分析,使用傳統的基于ES的标量檢索和基于向量的特征檢索有機結合,滿足用戶對長視頻的内容理解和跨模态精準檢索的需求。
但是,視頻檢索技術還遠遠沒有進化到終點,在下面幾個方面仍待優化與突破。
一是算法的提升。
準召率優化:當前達摩院表征大模型TEAM和,召回準确率達80%;達摩院在研新多模态信息表征合一模型MBA召回準确率可達93%,後續待接入。
新的模态融合:當前接入的表征大模型,僅支持文本與圖像的對齊,音頻模态是缺失的。想象一下,如果我搜“空山新雨後”,找到了一幅搭配雨聲的山水風景視頻,是多麼酷的體驗。
多表征融合:當前算法僅基于句子級别的文本,以及幀級别的圖像進行特征提取,其實是丢失了視覺中的人物、物體等客觀實體細節的。理想中的表征大模型,應該是多表征融合的。例如我搜“梅西捧着金球獎”,出現的應該是梅西拿着金球獎,而不是C羅捧着金靴獎。這意味着表征大模型需要有人物識别和文字識别的能力,而不僅僅依賴訓練中的文本-圖像對。
二是成本與性能的平衡。
表征特征壓縮:當前是768維維向量,已經實現了壓縮為uint8搜索效果基本保持一緻,正在探索壓縮為01二值向量,實現低成本存儲與搜索。
基于片段的表征:當前視頻每秒抽取一幀進行特征計算存儲,已經研究出視頻片段合并,提前進行特征聚合減少抽幀數量,降低存儲同時提升搜索效率。
三是在工程與體驗上。
多路召回:針對AI标簽搜索、人臉檢索、大模型檢索,支持用戶進行同時搜索,搜索結果合并後重新打分排序。
檢索增強LLM:支持對用戶複雜搜索語句的理解,搜索時針對用戶query語句進行query改寫實現QP能力,識别、等字段進行搜索語句SQL式轉換,搜索結果結合原始query通過大模型再次分析過濾排序等;自然語言搜索增強形式,結合大模型實現問答式搜索,支持企業快速構建媒資知識庫。
目前,自然語言視頻檢索已在阿裡雲智能媒體服務(IMS)上線,歡迎大家咨詢體驗。
媒資搜索産品文檔:
歡迎加入官方答疑「釘釘群」咨詢交流:
參考文獻及大模型:
[1] 《視頻搜索太難了!阿裡文娛多模态搜索算法實踐》:[2] 《深度 | 上億用戶每天看100分鐘!基于多模态及檢索的短視頻内容理解》:[3] 《優酷推出“AI搜片” | 模糊搜索精準匹配,解決找片難》:[4] 模型:[5] TEAM圖文檢索模型:
有話要說...