百度商業多模態理解及 AIGC 創新實踐
一、富媒體多模態理解
首先來介紹一下我們對多模態內容的感知。
1、多模態理解
提升內容理解能力,讓廣告系統在細分場景下更懂內容。
在提升內容理解能力時,會遇到很多現實的問題:
- 商業業務場景多、行業多,獨立建模冗余且會導致過擬合,場景間分布共性和特異性,統一建模如何兼顧。
- 商業視覺物料周邊文本差,易導致配圖badcase。
- 系統充斥無意義ID類特征、泛化性差。
- 富媒體時代,如何高效利用視覺語義,這些內容特征、視頻特征和其他特征如何融合,是我們需要去解決的,用以提升系統內對富媒體內容的感知力度。
什么是好的多模態基礎表征。
什么是一個好的多模態表征?
從廣度上要擴大數據應用的范圍,從深度上要提升視覺效果,同時保證場景的數據微調。
之前,常規的思路是,訓練一個模型去學習圖片的模態,一個自回歸的任務,然后做文本的任務,再套用一些雙塔的模式,去拉近二者的模態關系。那時的文本建模比較簡單,大家更多的是在研究視覺怎么建模。最開始是CNN,后面包括一些基于目標檢測的方式去提升視覺的表征,比如bbox方式,但這種方式的檢測能力有限,并且太重了,并不利于大規模的數據訓練。
到了2020年和2021年前后, VIT方式成為了主流。這里不得不提的一個比較有名的模型就是 OpenAI在20年發布的一個模型CLIP,基于雙塔的架構分別去做文本和視覺的表征。再用cosine去拉進二者的距離。該模型在檢索上面非常優秀,但在VQA任務等一些需要邏輯推理的任務上,就稍顯能力不足了。
學表征:提升自然語言對視覺的基礎感知能力。
我們的目標就是要提升自然語言對視覺的基礎感知能力。數據方面,我們的商業域有著億級的數據,但仍然不夠,我們需要進一步擴展,引入商業域以往的數據,并進行清洗和梳理。構建了百億級別的訓練集。
我們構建了VICAN-12B多模態表征+生成模型,利用生成任務讓視覺對文本的還原,進一步確保視覺表征對文本的融合效果,提升自然語言對視覺的基礎感知能力。上圖中展示了模型的整體結構,可以看到它還是一個雙塔+單塔的復合結構。因為首先要解決的是一個大規模圖片檢索的任務。左邊的框中的部分我們稱之為視覺的感知器,是一個20億參數規模的ViT結構。右邊可以分兩層看,下面為了做檢索,是一個文本的transformer的堆疊,上面為了做生成。模型分為了三個任務,一個是生成任務,一個是分類任務,一個是圖片對比任務,基于這三個不同目標去訓練模型,所以達到了比較好的效果,但我們還會進一步去優化。
一套高效、統一、可遷移的多場景全域表征方案。
結合商業場景數據,引入了LLM模型提升模型理解能力。CV模型是感知器,LLM模型是理解器。我們的做法就是需要把視覺特征進行相應的遷移,因為剛才提到,表征是多模態的,大模型是基于文本的。我們只需要讓它去適配我們的文心LLM的大模型就可以了,所以我們需要利用Combo attention的方式,去做相應的特征融合。我們需要保留大模型的邏輯推理能力,所以盡量不動大模型,只是加入商業場景反饋數據,去促進視覺特征到大模型的融合。我們可以用few shot的方式去支撐下任務。主要任務包括:
- 圖片的描述,其實它不僅僅是個描述,而是一個Prompt逆向工程,優質的圖文數據可以作為我們后面文生圖的一個比較好的數據來源。
- 圖文相關性控制,因為商業需要做配置,需要做對圖片信息的理解,我們廣告配圖的搜索詞和圖片語義其實是需要做控制的,當然這是一個很通用的方式,就可以對圖片和Prompt進行相關的判定。
- 圖片風險&體驗控制,我們已經能夠對圖片的內容進行比較好的描述了,那么我們只需要簡單利用風控的小樣本數據遷移就能夠清楚地知道它是否涉及一些風險問題。
下面,重點分享下場景化精調。
2、場景化精調
視覺檢索場景,基于基礎表征的雙塔微調。
以基礎表征為基礎,結合文本大模型,利用商業各場景的圖片點擊反饋信號為Labelers,精細化刻畫不同場景圖文偏序關系。我們在7大數據集上進行了評測,均能達到SOTA的效果。
排序場景,受文本切詞啟發,將多模態特征語義量化。
表征以外,另一個問題是如何提升排序場景中視覺的效果。先來看一下領域背景,大規模離散DNN為業內排序模型主流發展方向,離散特征也是排序模型優化的核心。文本入模型,基于切詞將其token化,與其他離散特征組合,效果好。而對于視覺,我們希望也能將其進行token化。
ID類特征其實是一個極具個性化的特征,但是泛化特征通用性好了,其刻畫精度可能就變差了。我們需要通過數據和任務去動態調節這個平衡點在哪。也就是希望找到一個和數據最相關的尺度,去把特征進行相應的”切詞”變成一個ID,像文本一樣去切分多模態特征。所以我們提出了一個多尺度、多層級的內容量化學習方法,去解決這一問題。
排序場景,多模態特征與模型的融合 MmDict。
主要分兩步,第一步是學離散,第二步是學融合。
Step1:學離散
① 利用稀疏激活將連續信號用多個離散化信號表達;也就是通過稀疏激活的方式把稠密特征進行切分,然后去激活對應多模態codebook里面的ID,但這里面其實只有argmax操作,會引來不可導的問題,同時為了去防止特征空間的坍塌,加入了激活神經元與未激活神經元信息交互。
② 引入 STE 策略,解決網絡不可導問題, rebuild原始特征,保證偏序關系不變。
通過encoder-decoder的方式,把稠密特征進行序列量化,再通過正確的方式把量化出來的特征進行還原。還原前后要保證它的偏序關系不變,幾乎可以控制特征在具體任務上的量化損失小于1%,這樣的ID具備了當下數據分布個性化的同時,還具有泛化特性。
Step2:學融合
① 與排序模型大規模離散在 Sparse層融合。
那么剛才提到的隱層復用直接放在上面去,其實效果一般。如果把它ID化,量化之后,到sparse特征層和其他類的特征進行融合,有著比較好的效果。
② 通過中心 -> 殘差2層級, S-M-L 3種尺度,降低損失。
當然我們也采用了一些殘差,以及多尺度的方式。從2020年開始,我們把量化的損失逐步壓低,去年達到了一個點以下,這樣就可以在大模型抽出來特征之后,我們用這種可學習量化的方式對視覺內容進行刻畫,具備語義關聯ID的特征其實非常適配我們現在的商業系統,包括推薦系統的ID的這樣一個探索的研究方式。
二、擎舵
1、商業AIGC 深度結合營銷,提升內容生產力,效率效果聯動優化
百度營銷AIGC創意平臺從靈感到創作,再到投放形成了一個完美的閉環。從解構、生成、反饋都在推進優化我們的AIGC。
- 靈感:AI理解(內容&用戶理解)。AI能不能幫助我們去找到什么樣的Prompt是好的。從素材洞察到創意指導。
- 創作:AIGC,如文本生成,圖片生成,還有數字人、視頻生成等等。
- 投放:AI優化。從經驗試錯到自動優化。
2、營銷文案生成 = 商業 Prompt 體系+ 文心大模型
一個好的商業Prompt,具備以下一些要素:
- 知識圖譜,比如說賣車,車到底需要包含哪些商業元素,僅有品牌是不夠的,廣告主更希望有一個完整的知識體系;
- 風格,例如現在『文藝范』的宣傳體,其實是需要把它抽象成一些標簽,去幫助我們判斷主要是什么樣的營銷標題或營銷的一些描述。
- 賣點,賣點其實就是產品屬性的一個特征,即為最強有力的消費理由。
- 用戶畫像,是根據目標的行為觀點的差異區分為不同類型,迅速組織在一起,然后把新得出的類型提煉出來,形成一個類型的用戶畫像。
3、復合模態的營銷數字人視頻生成, 3 分鐘創造 1 個數字人
視頻生成目前已經比較成熟。但它其實依然存在著一些問題:
- 腳本寫作:受限于人的知識和經驗,難以持續高質量寫作,同質化嚴重。
- 素材準備:專業團隊、演員、素材儲備等成本高工具賦能,以“拼裝合成”為主。
- 后期制作:后期制作靠人工試錯,操作繁瑣。
前期通過prompt來輸入,想生成一個什么樣的視頻,希望選擇一個什么樣的人,讓他去說什么,都通過prompt來輸入,然后我們根據其訴求,能夠準確控制我們的大模型去生成相應的腳本。
接下來我們可以通過我們的數字人庫去召回相應的數字人,但是可能利用AI技術進一步提升數字人的多樣性,比如人臉替換、背景替換、口音語音替換去適配我們的prompt,最后腳本、數字人唇形替換、背景替換、人臉替換,視頻壓制之后,就可以得到一個口播視頻。客戶得以利用數字人的方式去介紹產品對應的一些營銷賣點。這樣3分鐘即可做好一個數字人,極大地提升了廣告主做數字人的能力。
4、營銷海報圖生成,結合多模態表征的營銷圖片生成
大模型還可以幫助商業實現營銷海報的生成和商品背景的替換。我們已有一個百億規模的多模態表征,中間這一層是我們學的一個擴散,我們基于好的動態表征去學unet。通過大數據的訓練之后,客戶還希望有一些特別個性化的東西,所以我們還需要加入一些微調的方式。
我們提供了一個幫助客戶微調的方案,一個大模型動態加載小參數的方案,這也是目前業界的一個通用的解決方案。
首先我們為客戶提供一個生圖能力,客戶可以通過編輯或者Prompt去改變這個圖片背后的背景。