蔣洪迅,張 琳,孫彩虹
中國人民大學(xué) 信息學(xué)院,北京 100872
隨著視頻的形式越來越成為互聯(lián)網(wǎng)信息主體,文本的比例越來越低,視頻內(nèi)容理解和識別變得越來越重要。內(nèi)容理解(content understanding)是計算機的一種能力,包括對內(nèi)容的吸收、處理、關(guān)聯(lián),最后形成結(jié)構(gòu)化數(shù)據(jù)。在影視場景下,視頻的類目體系是視頻網(wǎng)站運營中的重要工具,也是進行數(shù)據(jù)分析和推薦算法中提升冷啟動效果的重要手段,因此構(gòu)建一套合理、準確率高、覆蓋率高的視頻標簽類目體系必不可少。
視頻標簽可以理解成描述一個視頻的幾個關(guān)鍵詞,當看到視頻標簽的時候就可以大概知道這個視頻的內(nèi)容,作為內(nèi)容理解的一環(huán),層級分類的視頻標簽是很有效的一種管理方式,可以達到讓機器理解海量的視頻中的關(guān)鍵信息的目的,有助于視頻網(wǎng)站中基于內(nèi)容的推薦和分發(fā)。具體來說,類目體系是一套類目的劃分標準,這個標準具有多層次的、經(jīng)過討論定義明確的、視頻內(nèi)容涵蓋全面的特點。在影視場景下,一般來說會構(gòu)建一個如圖1所示的三級類目體系,包括類型標簽、題材標簽和實體標簽;其中類型標簽、題材標簽、實體標簽都是內(nèi)容標簽的更細粒度標簽。

圖1 影視視頻標簽體系示意圖Fig.1 Diagram of video labeling system
標簽分類模型是依據(jù)標簽類目體系構(gòu)建的,通過算法賦能,使得視頻標簽類目體系可以在各個業(yè)務(wù)方面發(fā)揮價值。根據(jù)實踐的經(jīng)驗發(fā)現(xiàn),當前影視場景下的視頻標簽分類模型存在以下兩個問題:(1)數(shù)據(jù)標注少?;ヂ?lián)網(wǎng)用戶上傳的視頻在內(nèi)容和質(zhì)量方面存在很大的差異,用戶生成的標題通常不完整或者模棱兩可,并且可能包含錯誤。雖然有很多的視頻影視劇,但是高質(zhì)量數(shù)據(jù)標注量較少。(2)實體標簽細粒度不夠。雖然當前一些視頻標簽分類的基線模型在影視場景下整體的標簽識別上得到不錯的效果,但對于一些在視覺上相似的劇集處理得不好,需要增加特征做進一步識別。
本文的貢獻主要體現(xiàn)在多任務(wù)標簽預(yù)測的研究角度和最細粒度內(nèi)容標簽的實體糾錯處理上。相比以往的同類研究,本文跳脫了通常的大規(guī)模語料訓(xùn)練標簽分類算法,更多著眼于實體糾錯的新研究角度,在方法上也不再局限于傳統(tǒng)的按級別的分層標簽預(yù)測分析,而是基于多模態(tài)預(yù)訓(xùn)練模型和影視資料知識圖譜提出了一個兩階段的視頻標簽分類框架和實施方法,如圖2 所示。具體來說,創(chuàng)新點主要體現(xiàn)在三個方面:在特征輸入方面,使用了基于大規(guī)模通用數(shù)據(jù)訓(xùn)練的多模態(tài)預(yù)訓(xùn)練模型提取視覺和文本的特征,訓(xùn)練了一個多任務(wù)的視頻標簽預(yù)測模型,同時獲取視頻的類型、題材和實體三級標簽;在模型結(jié)構(gòu)方面,提出了一種基于多任務(wù)學(xué)習(xí)框架的視頻標簽分類模型,在多任務(wù)學(xué)習(xí)網(wǎng)絡(luò)中引入相似性任務(wù)提高了分類模型訓(xùn)練的難度,使得同類樣本特征更加緊密,同時保證所學(xué)特征能更好地表達樣本差異,避免了樣本偏斜造成的局限性和過擬合,保證預(yù)測效果、客觀性和泛化能力;在實體糾錯方面,不再局限于現(xiàn)有語料內(nèi)的孤立信息,而是引入外部知識圖譜的共現(xiàn)信息,通過一個局部注意力頭擴展的實體糾錯模型,對前置模型的預(yù)測結(jié)果做修正,得到更準確的實體標簽預(yù)測結(jié)果。本文后續(xù)的多任務(wù)消融實驗也驗證了所提方法在較細粒度標簽分類問題上的有效性,而且新方法可以在少量樣本上達到較好的分類效果,表明該模型也適用于其他領(lǐng)域內(nèi)的數(shù)據(jù)集較少的情況下的分類任務(wù)。

圖2 影視視頻標簽分類模型架構(gòu)圖Fig.2 Architecture diagram of proposed video labeling model
視頻標簽研究屬于分類任務(wù),學(xué)術(shù)界中視頻標簽分類算法的研究經(jīng)過了長時間的發(fā)展。一般來說,視頻標簽分類的處理流程可以分為以下三個步驟:第一,數(shù)據(jù)的采樣和預(yù)處理;第二,學(xué)習(xí)視頻的時間和空間特征;第三,時序特征的動態(tài)融合。視頻標簽研究可以分為純視頻標簽分類算法和多模態(tài)預(yù)訓(xùn)練模型兩個方向。
傳統(tǒng)視頻標簽分類算法是指只涉及視頻圖像幀輸入的算法。得益于近些年深度學(xué)習(xí)的快速發(fā)展和機器性能的大幅提升,視頻標簽分類主流算法已經(jīng)從傳統(tǒng)手工設(shè)計特征變成端到端深度學(xué)習(xí)的方法。視頻標簽分類的相關(guān)工作中,使用深度卷積神經(jīng)網(wǎng)絡(luò)和時間序列模型相結(jié)合的方式學(xué)習(xí)時間和空間特征是目前的研究熱點。一般的做法是,將視頻抽幀之后,用二維的卷積神經(jīng)網(wǎng)絡(luò)(two dimensional convolutional neural network,2D-CNN)抽取視頻里面每一幀的特征,然后將所有幀的特征平均池化到一起變成視頻特征進行分類[1]。但是這種做法的問題在于視頻往往包含的幀數(shù)非常多,對每一幀都抽取特征會有非常大的計算開銷,并且對特征做平均池化難以捕捉視頻的時序信息。針對視頻抽幀問題,TSN(temporal segment networks)模型[2]提出基于片段間隔采樣的方法來解決連續(xù)抽幀導(dǎo)致計算開銷大的問題,同時采用分段共識函數(shù)來聚合采樣片段中的信息,在整個視頻上對長時間依賴的結(jié)構(gòu)進行建模。針對視頻時序信息,引入了循環(huán)神經(jīng)網(wǎng)絡(luò)來學(xué)習(xí)視頻序列數(shù)據(jù),TT-RNN(tensor-train recurrent neural networks)模型[3]將張量分解的方式應(yīng)用于循環(huán)神經(jīng)網(wǎng)絡(luò)模型,使用訓(xùn)練好的張量替換原始輸入層到隱藏層的權(quán)重矩陣,在同樣效果下計算復(fù)雜度低于原始循環(huán)神經(jīng)網(wǎng)絡(luò)模型。NetVLAD(net vector of locally aggregated descriptors)模 型[4]、NextVLAD(next vector of locally aggregated descriptors)模型[5]使用聚類算法聚合視頻幀中圖像局部特征,在降低特征維度的同時還能很好地保證模型的性能。由于NetVLAD模型的缺點是特征維度高且計算復(fù)雜,分類模型需要上百萬的參數(shù)。為了解決NetVLAD 中參數(shù)爆炸的問題,在NetVLAD 模型的基礎(chǔ)上,在其VLAD 層增加了非線性參數(shù),降低了其輸出層參數(shù)[6],從而整體參數(shù)量下降,但性能并不下降。同時還使用了注意力機制來聚合時間維度的信息,得到視頻中不同幀的分類貢獻度。在最近的研究中,3D CNN(three dimensional convolutional neural network)對圖像序列采用3D 卷積核進行卷積操作,同時捕獲視頻中的時間和空間特征信息。I3D 模型[7]在網(wǎng)絡(luò)中加入了光流信息作為輸入,將特征提取網(wǎng)絡(luò)里面的2D 卷積核展開成3D 卷積核來處理整個視頻,視頻圖像和堆疊的光流兩個流的結(jié)果融合作為最終輸出結(jié)果。Non-Local模型[8]則在3D ResNet 模型里面引入了自注意力機制,通過注意力學(xué)習(xí)時間和空間的全局信息,相當于擴大了卷積核的感受野。同樣基于注意力機制,Attention Cluster 模型[9]將經(jīng)過卷積神經(jīng)網(wǎng)絡(luò)模型抽取的特征使用堆疊的注意力模塊集成局部關(guān)鍵特征。Slow-Fast模型[10]引入快和慢兩個不同時間分辨率的通道,分開處理空間維度信息和時間維度信息,學(xué)習(xí)視頻的靜態(tài)和動態(tài)變化。同時,通過快和慢兩個分支,SlowFast 模型探討了不同采樣率下雙流信息交互融合的方式。此外,Regularized-DNN(regularized deep neural networks)模型[11]提出了一種正則化特征融合網(wǎng)絡(luò),在神經(jīng)網(wǎng)絡(luò)中加入正則化來利用特征之間的關(guān)系和類別之間的關(guān)系自動學(xué)習(xí)維度特征相關(guān)性,可見多特征融合也是一個研究的方向。
在視頻標簽分類領(lǐng)域,多模態(tài)預(yù)訓(xùn)練模型通常包括圖像模態(tài)的信息和文本模態(tài)的信息。對于圖片和文本的多模態(tài)預(yù)訓(xùn)練模型,從模態(tài)的交互方式上,可以分為單流模型和雙流模型兩種。在單流模型中,語言模態(tài)的信息和視覺模態(tài)的信息融合之后整體作為輸入,然后直接輸入到編碼器中。單流模型代表的模型有VisualBERT(visual bidirectional encoder representation from transformers)[12]、Unicoder-VL(universal encoder for vision and language)[13]、ImageBERT(image bidirectional encoder representation from transformers)[14]、VL-BERT(vision and language bidirectional encoder representation from transformers)[15]等?;趫D像切塊投影的ViL-Transformer(vision-and-language transformer without convolution or region supervision)模型[16]也延用了單流交互方式,減少引入額外的計算量,將圖片拆分成若干個Token 進行編碼。在雙流模型中,語言模態(tài)的信息和視覺模態(tài)的信息會先分別經(jīng)過兩個獨立的編碼器,得到編碼特征后再輸入到模態(tài)的交互層,不同模態(tài)的信息在語義上的對齊和融合是在模態(tài)交互層上完成的。在交互編碼層中,模型使用共同注意力機制,即自注意力模塊中的查詢向量(Query)來自一個模態(tài),而鍵向量(Key)和值向量(Value)來自另一個模態(tài)。經(jīng)過交互層的編碼后,圖像特征和語言特征會分別再經(jīng)過一個自注意力網(wǎng)絡(luò)層來學(xué)習(xí)高階特征。雙流模型代表有ViLBERT[17]等模型。目前單流模型和雙流模型的特征編碼器都是基于Transformer 框架搭建的,不同在于模態(tài)融合時是否進行了關(guān)鍵向量的交互學(xué)習(xí)。這些多模態(tài)預(yù)模型在訓(xùn)練時需要標簽類別信息進行有監(jiān)督訓(xùn)練,依然存在對大規(guī)模標簽類別標注的依賴性。而對比自監(jiān)督訓(xùn)練方式則可以較好地解決這個問題。對比自監(jiān)督學(xué)習(xí)是一種訓(xùn)練編碼器的簡單思路,關(guān)鍵思想是在特征空間中最小化正樣本對之間的距離,最大化負樣本對之間的距離,使得編碼器對相似內(nèi)容輸出相似的結(jié)果。基于對比自監(jiān)督學(xué)習(xí)的思想,通過編碼點積計算即可獲得兩個內(nèi)容之間的匹配程度。CLIP(contrastive language-image pre-training)模型[18]基于比對自監(jiān)督方式采用4 億對圖像-文字進行預(yù)訓(xùn)練,將分類模型轉(zhuǎn)換為圖文匹配任務(wù),用文本弱監(jiān)督圖片分類,學(xué)習(xí)文本與圖片相關(guān)性,在多個下游任務(wù)中獲得了非常好的實驗效果。
多任務(wù)學(xué)習(xí)是指基于共享表示,同時訓(xùn)練多個任務(wù)的機器學(xué)習(xí)方法。訓(xùn)練過程中,多個任務(wù)共享樣本信息、模型參數(shù)以及底層的表征信息,多個任務(wù)的損失值合并計算后同時驅(qū)動梯度進行反向傳播,從而完成層次結(jié)構(gòu)信息的使用,優(yōu)化模型的網(wǎng)絡(luò)層參數(shù)[19]。細粒度識別的關(guān)鍵挑戰(zhàn)是生成有效的特征表示,以減少類同圖像之間的差異,同時擴大不同類圖像之間的差異。Parkhi 等人[20]提出首先使用分類損失函數(shù)學(xué)習(xí)人臉分類的同時使用相似性損失函數(shù)來微調(diào)和提升性能,最終提升了人臉識別的準確性。秦佳佳[21]也在心理研究角度說明了相似性任務(wù)在類別學(xué)習(xí)中的有效性。在本文中,細粒度的圖像理解旨在區(qū)分每一個影視劇集,這個任務(wù)存在兩個挑戰(zhàn):一方面,許多影視劇集之間具有高度相關(guān)性,并且場景圖像之間存在細微差異難以區(qū)分(類間方差?。?;另一方面,同一部影視劇存在場景、人物、背景的轉(zhuǎn)換,當以不同的姿勢、光照、場景、人物和遮擋物呈現(xiàn)時,同一部劇集的畫面看起來會有很大不同,視覺上效果差異較大(類內(nèi)方差大)。在分類預(yù)測階段,本文設(shè)計了一個多任務(wù)深度學(xué)習(xí)框架,將多個任務(wù)合并學(xué)習(xí),通過分層非線性映射來學(xué)習(xí)細粒度圖像識別的有效特征。
基于視覺信息訓(xùn)練的單模態(tài)視頻標簽分類模型一般是對數(shù)據(jù)進行端到端的訓(xùn)練,需要較大規(guī)模的數(shù)據(jù)量。不過數(shù)據(jù)標注成本較大并且大規(guī)模數(shù)據(jù)集的訓(xùn)練也非常消耗算力[22],零樣本學(xué)習(xí)、基于預(yù)訓(xùn)練模型的遷移學(xué)習(xí)逐漸成為新的研究趨勢,旨在達到從已知樣本到未知類別的知識泛化學(xué)習(xí)[23]?;趫D片、文本等信息的多模態(tài)視頻標簽分類模型則可以很好地利用文本和圖片信息的交互知識,但有監(jiān)督學(xué)習(xí)仍然存在數(shù)據(jù)依賴,而CLIP 可以利用文本對圖片進行弱監(jiān)督學(xué)習(xí)。
本文要研究的影視視頻標簽分類算法屬于視頻標簽分類任務(wù),即從一段視頻提取若干關(guān)鍵幀,為它們打若干標簽后再聚成該視頻的標簽。但是影視視頻標簽分類與通用領(lǐng)域的視頻標簽分類不同的是,其關(guān)鍵區(qū)分特征多與畫面內(nèi)容、人物關(guān)系、場景布局、臺詞字幕等因素有關(guān),不能直接使用在通用領(lǐng)域數(shù)據(jù)集上預(yù)訓(xùn)練的模型完成預(yù)測。況且影視領(lǐng)域目前還沒有一個標注好的大規(guī)模數(shù)據(jù)集,本文將在CLIP 圖文預(yù)訓(xùn)練模型下游添加影視數(shù)據(jù)集,采用圖文預(yù)訓(xùn)練模型+下游分類任務(wù)微調(diào)的形式,將多層級標簽視為多個分類任務(wù),每一個分類任務(wù)同時結(jié)合分類損失函數(shù)和相似性度量損失函數(shù)進行標簽預(yù)測,在少量樣本上達到較好的分類效果。
本文提出了一種融合知識圖譜的影視視頻標簽分類模型,該模型旨在通過圖像-文本兩個模態(tài)建模,利用視頻中豐富的語義信息為視頻內(nèi)容打上多層次的標簽;同時,針對更細粒度標簽識別的困難樣本,結(jié)合知識圖譜信息完成進一步的知識推理過程,最終得到影視視頻更準確的內(nèi)容標簽。
本文構(gòu)建的標簽預(yù)測模型,其總體架構(gòu)如圖3所示,由輸入模塊、特征提取模塊、模態(tài)融合模塊和多任務(wù)分類預(yù)測模塊組成。具體來說,模型采用了圖文預(yù)訓(xùn)練模型+下游分類任務(wù)微調(diào)的形式,將多層級標簽的識別視為多個孤立的分類任務(wù),對于每一個分類任務(wù)都結(jié)合分類損失函數(shù)和相似性度量損失函數(shù)進行預(yù)測。

圖3 標簽預(yù)測模型的算法框架圖Fig.3 Algorithmic framework diagram of label prediction model
標簽預(yù)測流程可以概括為,給定一組圖文對輸入,包括文本序列{w1,w2,…,wn}和圖片編碼{r1,r2,…,rn},其中每條文本會被切分為若干個Token 進行編碼,兩個序列分別經(jīng)過文本和圖像特征提取分支,訓(xùn)練獲得同一語義空間下的表征,特征融合后饋送到下游任務(wù)層進行預(yù)測,優(yōu)化模型參數(shù)最小化損失值,最終得到預(yù)測結(jié)果。
2.1.1 特征提取網(wǎng)絡(luò)
特征提取模塊采用了基于大規(guī)模通用圖文數(shù)據(jù)訓(xùn)練出的多模態(tài)預(yù)訓(xùn)練模型,文本、圖像表征網(wǎng)絡(luò)接收文本、圖片兩個模態(tài)的輸入,分別通過一個圖像編碼器和一個文本編碼器計算圖像和文本的特征,再分別進行L2 范數(shù)的歸一化操作,讓文本特征和圖像特征的特征尺度保持一致,得到文本特征Embt和圖像特征Embi。具體過程參見算法1。
算法1特征提取網(wǎng)絡(luò)
在文本分支中,將{w1,w2,…,wn}中每個token 的詞向量和位置向量相加作為輸入向量。文本是有序的,位置向量是指將token 的前后語序信息編碼成特征向量的形式,把單詞的位置關(guān)系信息引入到模型中,從而獲取文本天生的有序信息。然后將輸入向量饋送到Transformer的Encoder中來編碼輸入,每一個Encoder 中包含兩個子層:第一層是多頭自注意力機制,包括12 個注意力頭;第二層是前向傳播層,用來提高模型的非線性擬合能力。每個子層都使用了殘差網(wǎng)絡(luò),在訓(xùn)練過程中可以緩解梯度消失的問題,使之可以構(gòu)建更深層的網(wǎng)絡(luò)。整個Transformer 共堆疊了12 個這樣的Encoder 結(jié)構(gòu)。最后將Transformer的輸入饋送到layer norm 網(wǎng)絡(luò)中對樣本特征做歸一化,得到1 024維特征Embt。
在圖像分支中,深度卷積網(wǎng)絡(luò)中的卷積和池化操作用于分層提取視覺特征。輸入是單張圖片,首先調(diào)整輸入圖片的大小格式,將給定圖像縮放到224×224 的大小,按比例裁剪圖片,保留最中間的圖像部分,再對圖片每個通道的像素值執(zhí)行歸一化操作。這里使用由若干個殘差模塊構(gòu)成的ResNet-50網(wǎng)絡(luò)作為圖像特征提取的骨干結(jié)構(gòu)。ResNet-50包含49 個2D 卷積操作和一個全連接層,首先對輸入做卷積操作,然后輸入到4個不同卷積核尺寸的殘差模塊中,最后進行全連接操作以便進行分類任務(wù)。在2D網(wǎng)絡(luò)中,卷積和池化的操作主要在空間上進行,最終得到1 024維特征Embi。
2.1.2 模態(tài)融合網(wǎng)絡(luò)
本文采用中間融合的方式,將上一層特征提取網(wǎng)絡(luò)得到的文本特征Embt(N,1 024) 和圖像特征Embi(N,512)分別看作兩個token,將這兩個token 拼接之后得到Emb(N,2,1 024),再饋送到Transformer的Encoder模塊中對兩個token融合。
本質(zhì)上,基于Encoder 模塊做特征之間的融合,可以解釋為將查詢向量Query、鍵向量Key、值向量Value 3 個向量在注意力的多個輸出頭分別進行點積計算,并分別得到自適應(yīng)的加權(quán)方案。對于不同區(qū)域的信息,按照不同的加權(quán)值結(jié)合起來最終得到整體的向量表達[24]。在這里,Encoder 的主要作用是學(xué)習(xí)同一樣本中文本token和圖片token的交互特征,最終得到一個固定長度的向量表示Embattention。
其中,Emb*Wq為查詢向量Query,Emb*Wk為鍵向量Key,Emb*Wv即值向量Value,Wq、Wk、Wv分別代表3組不同的參數(shù)矩陣,用于將輸入的同一個Emb映射到3個不同的向量空間。本文的特征融合Encoder堆疊了6 層這樣的編碼層,每一層使用了8-head 的注意力模塊,相當于在8 個不同的通道進行了圖片、文本模態(tài)特征的融合學(xué)習(xí)。
2.1.3 多任務(wù)預(yù)測網(wǎng)絡(luò)
標簽預(yù)測模型學(xué)習(xí)的目的就是學(xué)習(xí)一組參數(shù),使得模型預(yù)測的結(jié)果與樣本的真實標簽一致,也就是損失函數(shù)的值最小。本文將分類任務(wù)的交叉熵損失函數(shù)和相似性損失函數(shù)結(jié)合在同一個網(wǎng)絡(luò)中進行多任務(wù)訓(xùn)練和聯(lián)合優(yōu)化。如圖4 所示是多任務(wù)網(wǎng)絡(luò)層的結(jié)構(gòu)圖,經(jīng)過模態(tài)融合之后的特征先經(jīng)過若干個全連接層,然后被輸入到分類網(wǎng)絡(luò)和相似性網(wǎng)絡(luò)同時進行訓(xùn)練。

圖4 多任務(wù)網(wǎng)絡(luò)層結(jié)構(gòu)Fig.4 Layer-structure of multitasking network
交叉熵損失函數(shù)(cross entropy loss)是經(jīng)典的分類損失函數(shù),由softmax公式和交叉熵(cross-entropy)公式兩個組合。假設(shè)有N個訓(xùn)練樣本,歸屬于C個類別,其中每個樣本ri被標記為類li。如式(3),假定最終全連接層的輸出是fs(ri,c),交叉熵損失函數(shù)的計算公式如下:
其中,fs(ri,c)表示最后的全連接層在輸入為ri下,第c類的輸出,li為對應(yīng)輸入的類別標簽。可以看到,這個計算公式旨在將相同類的數(shù)據(jù)“擠壓”到特征空間的同一個角落,因此沒有保留類內(nèi)方差,而類內(nèi)方差對于發(fā)現(xiàn)視覺和語義相似的實例至關(guān)重要。
度量學(xué)習(xí)則可以通過學(xué)習(xí)特征表示來解決這個問題,使得來自同一類的樣本聚集在一起,來自不同類的樣本則相互遠離,即擴大類間距離和縮小類內(nèi)距離。除了單獨使用分類損失函數(shù)進行約束之外,相似性任務(wù)使用了Triplet Loss[25]與分類損失融合起來用于特征表示學(xué)習(xí)。在計算時,有3個樣本表示為(ri,pi,ni),其中ri是來自特定類的參考樣本,pi是來自同一類的樣本,ni是來自不同類的樣本。給定一個輸入樣本ri,Triplet Loss 驅(qū)動的網(wǎng)絡(luò)可以生成一個特征向量ft(ri) ∈RD,其中超參數(shù)D是特征維度。理想情況下,對于每一個參考樣本ri,期望它與不同類的任何ni的距離比同一類中的pi大一定的邊距m>0,也就是說D(ri,pi)+m<D(ri,ni)。
式(4)是Triplet Loss 的計算方式。為了計算Triplet Loss,還將特征進行了L2 范數(shù)歸一操作,其中D(.,.)是Triplet 網(wǎng)絡(luò)中兩個融合特征經(jīng)過L2 范數(shù)歸一化之后的平方歐幾里德距離,m為最小邊距。
損失函數(shù)是指導(dǎo)模型學(xué)習(xí)方向的準則,根據(jù)損失函數(shù)的求導(dǎo)方向可以做反向傳播來修改模型參數(shù)。在多任務(wù)框架中,模態(tài)融合之后的特征表示會同時被輸入到Softmax 分類網(wǎng)絡(luò)和Triplet 相似性網(wǎng)絡(luò),Softmax 分類網(wǎng)絡(luò)的輸出fs(r)被轉(zhuǎn)發(fā)到Softmax損失層以計算分類誤差Losss(r,l),Triplet 相似性網(wǎng)絡(luò)的輸出ft(r)被轉(zhuǎn)發(fā)到Triplet 損失層以計算分類誤差Losst(r,p,n,m)。分類任務(wù)和相似性任務(wù)的輸出可以看作兩個獨立的預(yù)測場景,在多任務(wù)融合階段,如式(5),本文通過加權(quán)組合來整合這兩種類型的損失。λ是兩個任務(wù)的權(quán)重系數(shù),取值范圍在0~1之間。
實體糾錯模型服務(wù)于第三級標簽的識別任務(wù),進一步對實體標簽的識別結(jié)果做優(yōu)化。標簽預(yù)測模型根據(jù)概率選取最終分類結(jié)果。然而實體標簽的粒度非常細,對于在視覺畫風相似、場景人物相似的情況下往往會出現(xiàn)多個相似影視劇集難以區(qū)分的情況,導(dǎo)致出現(xiàn)錯誤識別的實體標簽。以圖5 場景為例,正確的標簽是“延禧攻略”,而分類模型給出的結(jié)果排序是“陳情令、延禧攻略”。由于“陳情令”的預(yù)測分數(shù)大于“延禧攻略”,導(dǎo)致其作為概率最大的標簽被輸出。這種情況來自于兩方面的原因:其一,這個樣本的文本信息無法給出與“延禧攻略”劇集相關(guān)信息;其二,樣本的圖像在視覺畫風、場景布局上與“陳情令”相似,導(dǎo)致難以區(qū)分。

圖5 錯誤預(yù)測的一個實例Fig.5 Example of wrong labeling prediction
本文采用引入外部知識圖片中的元數(shù)據(jù)(metadata)信息來解決上述問題。根據(jù)圖像中出鏡的人臉識別和現(xiàn)實生活中的人物關(guān)系知識圖譜,可以獲知視頻中出現(xiàn)了演員“許凱”,結(jié)合該演員的出演歷史可排除“陳情令”,從而得到正確標簽。基于此,本文提出了優(yōu)化視頻標簽分類的第二階段模型,一種融合知識圖譜的實體糾錯方法。引入預(yù)先構(gòu)建的知識圖譜節(jié)點和節(jié)點關(guān)系作為對文本信息和視覺信息的補充,訓(xùn)練擴展注意力機制的先驗知識模型,提高影視實體標簽識別的準確性和覆蓋率。
實體糾錯任務(wù)可以形式化為:給定一批訓(xùn)練樣本G={g1,g2,…,gn},其中g(shù)∈{n1,n2,…,N}。對于每一個輸入g,隨機將一部分節(jié)點信息掩蔽之后得到g∈{n1,[mask],n3,…,N},節(jié)點ni包括影視名稱節(jié)點和演員節(jié)點以及一個特殊的MASK 節(jié)點。本文目標是訓(xùn)練一個重構(gòu)缺失節(jié)點模型,預(yù)測其出現(xiàn)概率最大的節(jié)點ni∈g。在圖神經(jīng)網(wǎng)絡(luò)中,圖卷積層會計算當前節(jié)點與所有鄰居的得分,加上注意力機制可以為其提供自適應(yīng)加權(quán)方案,為不同節(jié)點分配不同權(quán)重,并且只需要計算鄰居或者多階范圍內(nèi)的鄰居?;趫D注意力網(wǎng)絡(luò)思路,本文添加局部注意力頭擴展Transformer模型,并采用BERT類似的掩蔽機制來預(yù)測最終標簽結(jié)果,同時結(jié)合知識圖譜的節(jié)點關(guān)系考慮節(jié)點預(yù)測的合理性。
實體糾錯模型的總體架構(gòu)如圖6 所示。對于某個待定視頻,將一定概率的候選名稱看作影視節(jié)點,出鏡人物識別出的演員看作演員節(jié)點,每個節(jié)點為一個token向量輸入模型。訓(xùn)練模型時提取影視知識圖譜中的劇集-演員兩類實體,構(gòu)建成一個二部圖,將其鄰接矩陣輸入模型中。在預(yù)測階段,例如輸入“張若昀”“郭麒麟”“宋軼”3 個演員名字,就能得到與之相關(guān)性最高的影視劇名稱是《慶余年》。

圖6 實體糾錯模型的體系結(jié)構(gòu)圖Fig.6 Structural diagram of entity error correction model
本文改進了Transformer 的Encoder 部分。傳統(tǒng)Transformer自注意力機制需要計算所有token的Query向量、Key向量和Value向量,相當于算得全局注意力分數(shù);細粒度的實體標簽糾錯,本文更關(guān)注相鄰節(jié)點的作用,只需計算具有出演或合作關(guān)系的明星與影視劇名兩個實體間的注意力分數(shù),無需對所有實體計算token,本文將Encoder中一部分注意力頭替換成了局部注意力,基于知識圖譜來修正計算視野,將非鄰居節(jié)點間注意力強制為零。具體過程參見算法2。
算法2實體糾錯模型
其中,Hl是第l層的注意力頭集合,Wl和bl為該層訓(xùn)練權(quán)重和偏差,沿矩陣列進行concatenate操作。在實際訓(xùn)練過程中,本文將使用兩種類型的注意力頭,即全局注意力頭和局部注意力頭:
對于全局注意力頭,每個節(jié)點可以通過全局注意力關(guān)注所有其他節(jié)點,與每一個節(jié)點都進行交互并計算注意力分數(shù)。全局注意力是典型的自注意力計算方式,每個注意力頭具有獨立的初始化參數(shù)和訓(xùn)練參數(shù),但是計算過程是相同的:
其中,q(?)、k(?)、v(?)分別表示節(jié)點表征X(l)經(jīng)過3 個不同的參數(shù)矩陣映射之后的Query 向量、Key 向量和Value 向量。對于局部注意力頭也是同樣的思路,不同之處是查詢向量只能與其直接鄰居節(jié)點的關(guān)鍵向量進行交互并計算注意力分數(shù):
其中,As是知識圖譜的鄰接矩陣,包含影視劇節(jié)點和演員節(jié)點,影視劇和演員之間有交互關(guān)系,在出演關(guān)系的影視劇-演員之間為1,其余地方為0。最后,本文使用交叉熵損失函數(shù)來訓(xùn)練網(wǎng)絡(luò)計算所有類別的概率分布來預(yù)測輸出節(jié)點類別,具有最高概率的類就是經(jīng)過糾正之后的標簽。
當前有很多視頻片段數(shù)據(jù)集,但是在影視劇領(lǐng)域還沒有一個標注好的、可供訓(xùn)練的標準數(shù)據(jù)集。目前已有的一些視頻標簽的公開數(shù)據(jù)集,難以符合三級標簽的影視劇視頻的應(yīng)用場景,這些數(shù)據(jù)標簽都在相同層次上,譬如類型標簽或題材標簽,但缺乏更細粒度的實體標簽,況且影視視頻標簽分類的關(guān)鍵特征跟畫面內(nèi)容、人物關(guān)系、場景美工、拍攝風格、臺詞字幕等因素都有關(guān),本文也難以借用其他領(lǐng)域的通用視頻標簽數(shù)據(jù)集。此外由于視頻數(shù)據(jù)源較難獲取,在數(shù)據(jù)預(yù)處理時,需要同時完成抽幀和文本識別操作,本文考慮以(圖片,文本)對的形式組織數(shù)據(jù),用多張相似圖片模擬視頻連續(xù)抽幀結(jié)果。一個視頻包括圖像信息和文本信息,本文最終分別爬取了圖片和對應(yīng)的文本作為多模態(tài)信息。也就是說,利用搜索引擎構(gòu)造了數(shù)據(jù)集。其中,文本和圖片信息均來自百度圖搜,例如輸入query=“小敏家電視劇”,可以獲取網(wǎng)站返回的若干張圖片,選取自劇集截圖且保留該圖的標題文本描述。百度圖搜返回的結(jié)果是經(jīng)過排序篩選的,相關(guān)性較高,本文可以將此類(圖片,文本)對作為訓(xùn)練數(shù)據(jù)。
本文最終收集的數(shù)據(jù)如表1所示,數(shù)據(jù)來自于豆瓣電影平臺的標簽體系,共包含24 000 圖文對,分別歸屬于240 部影視劇集,每個影視劇集包含100 個(圖片,文本)對。其中,視頻真實標簽的信息來自豆瓣,輸入query=“小敏家”,本文可以從豆瓣爬取到該劇集的詳細信息,包括一級標簽“電視劇”、二級標簽“劇情/家庭”、三級標簽“小敏家”,甚至可以獲得編劇、演員、上映日期等信息,便于以后構(gòu)建影視領(lǐng)域的知識圖譜。

表1 數(shù)據(jù)集標簽統(tǒng)計表Table 1 Statistics of dataset
在評價指標方面,本文采用Top-N Acc、MacroP、MacroR和MacroF1作為評價指標,多分類問題中真實的樣本標簽有多類,學(xué)習(xí)器預(yù)測的類別也有多類,混淆矩陣在高維情況下難以直觀表示分類效果。本文將多分類的評價拆分成若干個二分類的評價,計算每個二分類的F1-score 平均值作為MacroF1 評價指標。Top-N Acc是視頻多分類的常用評價指標,計算公式如下:
其中,M是總樣本數(shù)量,I(x)為指示函數(shù),當x為真時,表達式為1,否則為0。在Top-N準確率指標中,N的取值一般在1 到10 之間,Top-1 的分類準確率是指,在預(yù)測結(jié)果得分中,排名第一的類別與實際標簽一致的準確率;Top-5 的分類準確率是指,預(yù)測結(jié)果前五名的類別中,包含與實際標簽一致的準確率。本文兩個階段的任務(wù)都是分類任務(wù),均采用MacroF1指標和Top-N Acc指標。
在基準模型方面,本文使用了三種不同結(jié)構(gòu)的CLIP 模型和兩種消融模型,包括CLIP-RN50、CLIPRN101、CLIP-ViT 模型、只訓(xùn)練標簽預(yù)測階段的多任務(wù)分類模型以及本文提出的兩階段融合模型。其中,CLIP-RN50 使用ResNet-50 架構(gòu)作為圖像特征編碼器,包含50 層卷積和全連接網(wǎng)絡(luò);CLIP-RN101 ResNet-101 架構(gòu)作為圖像特征編碼器,包含101 層卷積和全連接網(wǎng)絡(luò);CLIP-ViT Vision Transformer 架構(gòu)作為圖像編碼器,圖像輸入是將原始224×224像素圖片分塊展開成的序列。文本標簽預(yù)測模型是實體糾錯模型的前置模型,本文對比了兩個階段模型的輸出結(jié)果,以驗證實體糾錯模型帶來的效果差異。在標簽預(yù)測模型的實驗過程中,各個基線模型的參數(shù)設(shè)置都是一致的。批量大小設(shè)置為64,訓(xùn)練持續(xù)200個epoch。使用自適應(yīng)矩估計Adam 優(yōu)化器,初始學(xué)習(xí)率為0.001,動量為0.9,每2 000 個樣本做一次學(xué)習(xí)率衰減,衰減系數(shù)為0.1。在實體糾錯模型的實驗過程中,批量大小設(shè)置為64,訓(xùn)練持續(xù)40 個epoch。其中,兩個階段的模型的可學(xué)習(xí)參數(shù)通過均值為0、方差為0.02 的正態(tài)分布進行初始化。所有的模型超參數(shù)通過在驗證集上進行網(wǎng)格調(diào)參獲得,每10個epoch會保存一次在驗證數(shù)據(jù)集上具有最佳性能的模型,根據(jù)損失來進行替換每次保存的最優(yōu)模型,然后用于測試分類任務(wù)中的性能。針對第三級標簽識別結(jié)果的優(yōu)化,本文將圖片-文本對數(shù)據(jù)集的標簽結(jié)果和影視知識圖譜融合輸入到實體糾錯模型中進行細粒度標簽糾錯任務(wù)。實體糾錯模型是基于Transformer框架的,整個Transformer模型包含6層Encoder,每一層含有8 個注意力頭,其中每個節(jié)點都有300 維表示。在訓(xùn)練時,本文隨機屏蔽了30%的節(jié)點。
在實驗過程方面,本文先將構(gòu)建的圖片-文本對數(shù)據(jù)集輸入到多任務(wù)標簽預(yù)測模型中進行多級標簽識別。標簽預(yù)測模型是基于對比自監(jiān)督CLIP 模型的,其中圖像編碼器使用的是ResNet-50 主干網(wǎng)絡(luò),文本編碼器使用的是文本Transformer 主干網(wǎng)絡(luò)。特征融合階段使用的是一個基于注意力機制的Encoder模塊,多任務(wù)架構(gòu)將分類損失函數(shù)和相似性損失函數(shù)進行權(quán)重相加。
本文分別在類型、題材、實體三種不同粒度級別標簽上進行測試。其中,類型標簽包含三類,即電影、電視劇、綜藝;題材標簽分為八類,包含科幻、喜劇、戰(zhàn)爭、農(nóng)村、武俠、愛情、音樂、歷史等;三級標簽是最細粒度的實體標簽,每一個影視劇屬于一類,總共有228 類。對于各層級標簽各種模型的分類性能比較結(jié)果如表2所示,從中可以發(fā)現(xiàn)三個方面的主要結(jié)論:首先,在小規(guī)模影視數(shù)據(jù)集上各種CLIP模型分類效果差異不大。基于同樣的輸入圖片大小進行預(yù)訓(xùn)練,相比ResNet 系列模型的卷積層堆疊,視覺Transformer 模型將圖片按位置切分并拼接成序列。在本文數(shù)據(jù)集上,CLIP-RN50、CLIP-RN101、CLIP-ViT 3個不同架構(gòu)在類型標簽Top-1 中三者精確度分別是78.3%、78.9%、78.8%,MacroF1 分別是76.8%、78.0%、77.8%;在題材標簽Top-1中三者精確度分別是62.6%、63.1%、62.8%,MacroF1 分別是50.7%、53.9%、52.0%;在最細粒度的實體標簽Top-1 中三者精確度分別是33.2%、33.4%、33.9%,MacroF1 分別是31.2%、31.4%、31.9%,顯然性能差異不顯著。其次,本文提出的多任務(wù)學(xué)習(xí)框架可以顯著提升分類性能。可以看到,將相似性任務(wù)加入到多任務(wù)訓(xùn)練框架后,模型對于3個級別標簽的識別準確性上都有提升。其中在類型標簽上多任務(wù)框架的Top-1識別精確度從78.3%提升到81.2%,MacroF1從76.8%提升到79.7%;在題材標簽上Top-1 識別精確度從62.6%提升到64.7%,MacroF1 從50.7%提升到53.5%;新模型在第三級實體標簽識別性能上提升最明顯,Top-1 精確度從33.2%提升到38.7%,MacroF1 從31.2%提升到34.8%。本文所提出的新模型之所以能取得性能上的顯著提升,是相似性任務(wù)訓(xùn)練模型學(xué)習(xí)到了樣本之間特征表達的差異,而傳統(tǒng)分類任務(wù)較少考慮樣本差異化特性。實驗結(jié)果也驗證了本文提出的多任務(wù)框架對于細粒度標簽識別的有效性。最后,本文提出的實體糾錯模型可以在標簽預(yù)測模型基礎(chǔ)上進一步提升對實體標簽的分類性能。實體標簽是最細粒度的內(nèi)容標簽,這里的實體糾錯模型實際視作針對于困難樣本改進多任務(wù)框架標簽預(yù)測模型的一個優(yōu)化算法。從表2中可以看出,引入知識圖譜中的演員節(jié)點和出演關(guān)系之后,第三級實體標簽識別的Top-1 精確度從38.7%提升到45.6%,而且Top-3精確度也從52.5%提升到了58.3%,實驗結(jié)果表明在影視圖文數(shù)據(jù)集中引入實體糾錯模型可以有效提升粒度較細的標簽的分類效果。

表2 在各類標簽上模型分類性能對比Table 2 Comparison of model classification performance on various types of labels 單位:%
針對多任務(wù)框架中分類任務(wù)和相似性任務(wù)權(quán)重系數(shù)λ,本文執(zhí)行了參數(shù)敏感性分析的多重對比實驗以確定其最優(yōu)取值。λ的取值范圍是[0,1.0],λ越小時,多目標學(xué)習(xí)網(wǎng)絡(luò)模型更關(guān)注分類損失的優(yōu)化;反之,λ越大時,模型更關(guān)注度量損失的優(yōu)化。通過將λ從0 變化到1.0,可以探究分類任務(wù)和相似性任務(wù)對特征學(xué)習(xí)的作用。在實驗過程中,從模型中分別提取分類網(wǎng)絡(luò)和相似性網(wǎng)絡(luò)的倒數(shù)第二層特征,將分類特征和相似性網(wǎng)絡(luò)特征拼接起來,通過相應(yīng)的平均特征方差進行歸一化后得到每個樣本的128 維特征。根據(jù)第三級實體標簽的預(yù)測結(jié)果,計算所有樣本輸出特征在特征空間下的類內(nèi)距離和類間距離值。
基于參數(shù)λ的多重對比實驗結(jié)果,如圖7 所示。在λ=0時,相似性任務(wù)不起作用,此時只有分類任務(wù)生效,不同類別間樣本之間距離達到最大,可以較好區(qū)分不同的影視劇集;但是這時類內(nèi)的距離也較大,表明同類樣本之間存在較大的差異,各個樣本的特征在特征空間分布較分散。隨著λ增加,相似性任務(wù)逐漸主導(dǎo)多任務(wù)網(wǎng)絡(luò)的訓(xùn)練過程。從圖7 中可以看到,不同類別樣本之間距離稍有下降,但變動不大;類內(nèi)的距離隨著訓(xùn)練過程穩(wěn)定地逐漸減小,說明相似性任務(wù)的損失函數(shù)優(yōu)化使得同類別樣本之間逐漸減少差異。最終當λ=1.0 時,只剩下了相似性任務(wù),不同類別樣本之間的距離和同類別的樣本之間的差異都很小。這時沒有分類任務(wù)優(yōu)化的引領(lǐng),無法形成多樣化的特征,類與類之間的差異低,在特征空間里各類難以區(qū)分,分類性能顯著下降。綜合來看,在λ=0.4時,模型在第三級實體標簽的分類精度最高。

圖7 不同權(quán)重系數(shù)時類內(nèi)和類間距離Fig.7 Intra-class and inter-class distances at different weighting factors
實驗結(jié)果表明,單獨的分類任務(wù)或者單獨的相似性任務(wù)都不是學(xué)習(xí)特征的最佳方案,有效的特征來自于兩者的適當結(jié)合。分類任務(wù)沒有考慮到樣本差異化的重要性,而相似性任務(wù)則為樣本之間的特征表達學(xué)習(xí)到了差異,這也說明了本文提出的多任務(wù)框架對于細粒度標簽的識別的有效性,通過同時使用兩個任務(wù)來學(xué)習(xí)樣本特征是有效的。
本文進一步驗證多任務(wù)分類網(wǎng)絡(luò)中引入相似性任務(wù)的有效性。相似性任務(wù)也是一種監(jiān)督學(xué)習(xí),用在分類任務(wù)中研究的是如何通過基于距離度量(如歐式距離、余弦距離等)的損失函數(shù)學(xué)到更好的特征表示[26]。相似性任務(wù)對數(shù)據(jù)標注質(zhì)量要求較高,分類訓(xùn)練時將所有非標簽類別當作負樣本,在模型參數(shù)優(yōu)化過程中,同一類樣本之間的距離需要比不同類樣本之間的距離更小?;诰嚯x度量的損失函數(shù)在人臉識別、圖像檢索等領(lǐng)域被廣泛使用,代表方法除了Triplet Loss之外還有Sphereface[27]、Arcface[28]等。
通過對比相似性任務(wù)中使用不同損失函數(shù)約束模型的分類效果,本文驗證相似目標學(xué)習(xí)的有效性。在所有200 個epoch 的訓(xùn)練過程中,每一個消融實驗都是保存最優(yōu)的模型之后比較性能。其中基線是只使用了分類任務(wù)的交叉熵損失函數(shù),相當于單任務(wù)框架;其他任務(wù)框架均在λ=0.4 下進行,實驗結(jié)果如表3所示。

表3 在各類標簽上不同損失函數(shù)分類性能比較Table 3 Comparison of classification performance of different loss functions on various types of labels 單位:%
表3 呈現(xiàn)了相似性任務(wù)使用三種不同度量損失函數(shù)的各種層級標簽分類效果。從中可以看出,加入了Triplet Loss、Sphereface、Arcface 等相似性任務(wù)的度量損失函數(shù)作為優(yōu)化方向的模型,分類準確率均優(yōu)于基線。在類型標簽上Top-1 精確度分別提升了3.70%、1.79%和1.53%;在題材標簽上Top-1 精確度也分別提升了3.35%、3.99%和3.99%;關(guān)鍵是在第三級實體標簽上Top-1 精確度分別提升了16.57%、18.07%和18.98%,說明引入相似性任務(wù)的效益,也表明多任務(wù)學(xué)習(xí)網(wǎng)絡(luò)的魯棒性。更值得關(guān)注的是,添加相似性任務(wù)對于細粒度標簽的識別具有更優(yōu)的提升效果。相似性損失函數(shù)的原理是對多分類交叉熵損失函數(shù)進行修改,通過增加一個差值(Margin)提高分類模型訓(xùn)練的難度,使得所學(xué)特征更加緊密。在第一級類型標簽和第二級題材標簽中,以Triplet Loss為例,相似性任務(wù)的Top-1 精確度相比基線模型分別提升了3.70%和3.35%,相似性任務(wù)的MacroF1 值相比于基線模型分別提升了3.78%和5.52%;而三級標簽中Top-1 精確度提升了16.57%,MacroF1 提升了11.54%,提升幅度是最大的。實驗結(jié)果表明,對于識別力度越細的標簽類別,度量損失函數(shù)提升的效果越好。
融合知識圖譜的影視視頻標簽分類方法嘗試解決視頻標簽不同細粒度層級分類的問題,基于碎片化信息生成清晰、合理的層級標簽對于視頻運營網(wǎng)站十分關(guān)鍵,該類方法具有較強的現(xiàn)實應(yīng)用價值。視頻標簽分類算法在經(jīng)歷了較長時間的圖像時序和音頻的研究之后,當前的研究越來越多地將文本作為一種監(jiān)督信息融合到分類模型中?;谟耙曨惗桃曨l數(shù)據(jù),本文提出了一個融合知識圖譜的影視視頻標簽分類模型。首先,整合半結(jié)構(gòu)化數(shù)據(jù)建立影視知識圖譜,為細粒度的標簽識別提供數(shù)據(jù)支撐;其次,在大規(guī)模預(yù)訓(xùn)練模型上訓(xùn)練多個分類任務(wù)為數(shù)據(jù)集生成標簽集合;最后,利用影視知識圖譜中節(jié)點和節(jié)點關(guān)系,將分類結(jié)果修正為更合理的標簽。
本文采集豆瓣的半結(jié)構(gòu)化數(shù)據(jù)構(gòu)建了影視知識圖譜并對影視視頻標簽分類模型進行了實證研究。視頻標簽分類的實驗結(jié)果表明:首先,基于多任務(wù)網(wǎng)絡(luò)結(jié)構(gòu),在訓(xùn)練分類任務(wù)時加入相似性損失函數(shù)對模型進行共同約束優(yōu)化了特征表達,在類型、題材、實體標簽的Top-1 分類準確率分別提升了3.70%、3.35%和16.57%;其次,本文針對前置模型的困難樣本提出的全局-局部注意力機制模型,在引入了知識圖譜信息之后,實體標簽的Top-1 分類準確率從38.7%提升到了45.6%;最后,當計算多任務(wù)網(wǎng)絡(luò)的損失值時,權(quán)重系數(shù)λ設(shè)置為0.4,模型的層級標簽識別效果最優(yōu)。