張麗紅, 曹劉彬
(山西大學(xué) 物理電子工程學(xué)院, 山西 太原 030006)
視頻描述與圖像描述有很大的不同, 視頻描述不僅要理解每一幀中的物體, 而且要理解物體在多幀之間的運(yùn)動. 現(xiàn)有的視頻描述方法主要有4類: ① 將視覺內(nèi)容中檢測到的單詞分配給每個句子片段, 然后利用預(yù)定義的語言模板去生成視頻描述. 這類方法非常依賴句子模板, 生成的句子的句法結(jié)構(gòu)比較固定[1]; ② 學(xué)習(xí)視覺內(nèi)容與文本句子構(gòu)成的聯(lián)合空間的概率分布, 生成的句子具有更加靈活的句法結(jié)構(gòu)[2]; ③ 利用多示例學(xué)習(xí)去訓(xùn)練屬性探測器, 然后通過一個基于屬性探測器輸出的最大熵語言模型去生成視頻描述[3]; ④ 以卷積神經(jīng)網(wǎng)絡(luò)與循環(huán)神經(jīng)網(wǎng)絡(luò)為中心, 通過一個簡單的線性遷移單元, 把從圖像與幀流中挖掘到的語義特征整合在一起, 生成視頻描述[4]. 前兩類方法在視頻描述過程中并未利用語義特征; 后兩類方法雖然在輸入端均考慮到了語義特征, 但并未將不同域中的語義特征進(jìn)行深度融合. 因此, 本文利用遷移學(xué)習(xí)中的深度域適應(yīng)方法, 更好地融合圖像與幀流兩個域中的語義特征, 進(jìn)而提高視頻描述性能.
構(gòu)建視頻描述模型, 首先要將輸入視頻表示為固定維度的向量. 為此, 本文采用VGG19模型[5]完成視頻表示的任務(wù). VGG19模型共有19層, 其中, 卷積層為16層, 全連接層為3層, 中間部分為池化層, 最后一層為softmax層. 對于視頻中的一組采樣幀, 將每一幀均輸入到VGG19中, 提取第二個全連接層(fc7層)的輸出. 然后, 在所有的采樣幀上執(zhí)行均值池化, 這樣就把一段視頻表示為一個4096維向量. 這一過程的具體模型結(jié)構(gòu)如圖 1 所示.
圖 1 視頻表示模型結(jié)構(gòu)Fig.1 The model structure of video representation
語義特征對視頻描述起著非常重要的作用, 圖像中的語義特征描述靜態(tài)目標(biāo)與場景, 幀流中的語義特征則表達(dá)了更多的時間動態(tài). 因此, 提高視頻描述準(zhǔn)確率的關(guān)鍵在于如何將這兩個域中的語義特征進(jìn)行融合, 并將之用于增強(qiáng)視頻描述. 本文將圖像與幀流中挖掘到的互補(bǔ)的語義特征進(jìn)行深度融合, 提升視頻描述模型的性能.
為了提取圖像域中的語義特征, 本文在圖像描述標(biāo)準(zhǔn)數(shù)據(jù)庫上采用多示例學(xué)習(xí)[6]去訓(xùn)練語義特征檢測模型, 具體模型結(jié)構(gòu)如圖 2 所示.
圖 2 中模型的具體工作過程為: 對于一個語義特征wa, 如果wa存在于圖像I的標(biāo)注文本描述中, 那么圖像I將被視為一個正包; 否則, 圖像I將被視為一個負(fù)包. 首先將每個包輸入到圖 2 所示的模型中, 然后根據(jù)包中所有區(qū)域(示例)的概率來計(jì)算包含語義特征wa的包bI的概率, 如式(1)所示
(1)
圖 2 圖像語義特征檢測模型Fig.2 Image semantic feature detection model
目前存在的提取幀流語義特征的方法主要有: ① 直接將幀流進(jìn)行分解, 把其中的每一幀作為訓(xùn)練樣本, 訓(xùn)練圖像語義特征檢測模型. 考慮到幀流由一系列變化很大的視頻幀構(gòu)成, 因此這樣簡單地為幀流中的采樣幀分配視頻級的描述將會導(dǎo)致語義轉(zhuǎn)換問題, 并且會在語義特征學(xué)習(xí)過程中出現(xiàn)明顯的噪聲; ② 在圖像語義特征檢測模型的基礎(chǔ)上, 并行設(shè)計(jì)一個幀流語義特征檢測模型去學(xué)習(xí)幀流中的語義特征[4]. 這種方法的缺點(diǎn)是: 對于圖像與幀流兩個域中語義特征的融合效果不理想. 因此, 本文利用遷移學(xué)習(xí)中的深度域適應(yīng)[8]方法, 將圖 2 中訓(xùn)練好的模型遷移到幀流數(shù)據(jù)集上, 提取幀流語義特征, 同時實(shí)現(xiàn)兩個域中語義特征的深度融合, 得到新的語義特征檢測模型, 具體結(jié)構(gòu)如圖 3 所示.
圖 3 改進(jìn)的語義特征檢測模型Fig.3 Improved semantic feature detection model
在此模型中, 圖像樣本構(gòu)成的域稱為源域, 幀流樣本構(gòu)成的域稱為目標(biāo)域. 該模型的最終目標(biāo)是: 對于目標(biāo)域的分布, 給定輸入x, 能夠預(yù)測語義特征y. 此外, 在訓(xùn)練過程中, 對于每個輸入x, 除了要預(yù)測語義特征外, 還需預(yù)測域標(biāo)簽d. 若d=0, 則x來自源域; 若d=1, 則x來自目標(biāo)域. 圖 3 中的模型可以分解為3個部分, 具體工作過程為: 首先, 通過映射Gf將輸入x映射為一個D維特征向量f∈RD, 映射的參數(shù)向量為θf; 然后, 通過映射Gf將特征向量f映射為語義特征y, 映射的參數(shù)向量為θy; 最后, 通過映射Gd將特征向量f映射為域標(biāo)簽d, 映射的參數(shù)向量為θd.
在訓(xùn)練階段, 模型的第一個目標(biāo)是在源域上最小化特征預(yù)測損失, 確保語義特征檢測模型在源域上不失真. 然后, 在此基礎(chǔ)上使得特征f保持域不變, 即使得在源域上通過映射Gf提取的特征Sf與目標(biāo)域上提取的特征Tf相似, 進(jìn)而使得在目標(biāo)域上的語義特征預(yù)測像源域上一樣準(zhǔn)確. 解決這個問題的關(guān)鍵是度量分布Sf與Tf的相似性, 深度域適應(yīng)方法通過觀察域分類器Gd的損失來估計(jì)相似性. 具體來說, 通過尋找合適的特征映射參數(shù)θf, 獲得域不變的特征, 使得這兩個特征分布盡可能相似, 以此來最大化域分類器的損失. 同時, 尋找域分類器的參數(shù)θd, 使域分類器的損失最小化. 這里利用了對抗式網(wǎng)絡(luò)的思想[9]. 另外, 尋找合適的參數(shù)θy, 使語義特征預(yù)測器的損失最小化. 滿足要求的3個參數(shù)構(gòu)成一個點(diǎn)(θf,θy,θd), 稱為鞍點(diǎn). 整個訓(xùn)練過程可以表示為
(2)
(3)
(4)
(5)
式中:μ是學(xué)習(xí)率, 更新過程式(3)~式(5)與隨機(jī)梯度下降(Stochastic gradient descent, 簡稱SGD)的更新過程相似, 不同點(diǎn)在于式(3)中的λ因子. 引入λ因子是為了得到域不變的特征. 因此式(3)~式(5)無法像SGD那樣直接執(zhí)行, 需要將式(3)~式(5)簡化為某種形式的SGD. 本文通過引入一個梯度反向?qū)?Gradient reversal layer, 簡稱GRL)來完成這樣的簡化. 在反向傳播期間, GRL從下一層取得梯度, 將這個梯度乘以-λ, 并將其傳遞到前一層. 將GRL插入到特征提取器和域分類器之間, 構(gòu)成圖 3 所示的模型結(jié)構(gòu). 因此, 在得到的模型中運(yùn)行SGD實(shí)現(xiàn)了式(3)~式(5)的更新過程, 并且收斂到式(2)的一個鞍點(diǎn), 得到域不變的特征向量. 訓(xùn)練完成之后, 利用語義特征預(yù)測器去預(yù)測來自目標(biāo)域以及源域樣本的語義特征. 由于Sf與Tf為兩個域不變的特征向量, 因此由它們映射得到的圖像域與幀流域上的語義特征也保留了域不變的特性, 即兩個域上提取到的語義特征實(shí)現(xiàn)了深度融合. 因此, 利用改進(jìn)的語義特征檢測模型得到的語義特征可直接作為視頻描述框架的輸入, 并將該語義特征記為Aiv.
圖 4 即為本文設(shè)計(jì)的深度遷移學(xué)習(xí)視頻描述框架, 整個框架的工作流程包括:
1) 利用圖 1 所示模型得到給定視頻的向量表示, 僅在初始時刻將其輸入到遞歸神經(jīng)網(wǎng)絡(luò)(Long Short Term Mermory network, 簡稱LSTM)的第一層;
2) 在圖像數(shù)據(jù)集上訓(xùn)練圖 2 所示的模型;
3) 將給定的視頻幀拆分為單獨(dú)的圖像, 依次輸入到改進(jìn)的語義特征檢測模型中(圖3);
4) 將給定的視頻幀視為幀流, 并行輸入到改進(jìn)的語義特征檢測模型中;
5) 利用改進(jìn)的語義特征檢測模型得到融合語義特征, 如“Man”, “Person”等的向量表示, 并將其輸入到LSTM的第二層;
6) 將給定視頻的英文描述逐詞輸入到LSTM的第一層, 結(jié)合上述4個步驟中的輸入, 利用當(dāng)前時刻以及之前時刻的輸入單詞去預(yù)測下一時刻的輸出單詞, 以此來訓(xùn)練視頻描述框架.
圖 4 視頻描述框架結(jié)構(gòu)Fig.4 Video description framework structure
整個框架的參數(shù)化表示如式(6), 式(7)所示.
E(v,Aiv,S)=-logP(S|v,Aiv),
(6)
(7)
式中:v為輸入視頻;Aiv為融合語義特征;S為句子描述;E為能量損失函數(shù);wt為單詞表示;Ns為句子中單詞的數(shù)量. 最終的目標(biāo)是最小化能量損失函數(shù), 保留句子中單詞之間的上下文關(guān)系.
框架中, 僅在t=-1時刻將視頻v輸入到第一層LSTM單元中, 然后將Aiv作為額外的輸入, 在每次迭代中均輸入到第二層LSTM單元, 以此來強(qiáng)化語義信息. 如式(8)~式(10)所示,t從0到Ns-1進(jìn)行迭代.
x-1=f1(Tvv)+Aiv,
(8)
xt=f1(Tswt)+Aiv,
(9)
ht=f2(xt),
(10)
式中:Tv∈RDe×Dv與Ts∈RDe×Dw分別是視頻v的變換矩陣與wt的變換矩陣;De是LSTM輸入的維度;Dv是視頻v的維度;Dw是wt的維度.xt與ht分別是第二層LSTM單元的輸入與輸出,f1與f2分別是第一層與第二層LSTM單元內(nèi)的映射函數(shù).
為了評價本文設(shè)計(jì)的視頻描述模型, 選用YouTube上最流行的微軟視頻描述數(shù)據(jù)集(Microsoft Video Description Dataset, MSVD). MSVD包含從YouTube上收集到的1 970個視頻片段. 每個視頻約有40個可用的英語描述. 在實(shí)驗(yàn)中, 采用1 200個視頻進(jìn)行訓(xùn)練, 100個視頻進(jìn)行驗(yàn)證, 670個視頻進(jìn)行測試[10]. 此外, 還用到了圖像數(shù)據(jù)集COCO.
為了定量評價提出的視頻描述框架, 本文采用了視頻描述任務(wù)中常用的3個指標(biāo): BLEU@N(BiLingual Evaluation Understudy), METEOR以及CIDEr-D(Consensus-based Image Description Evaluation). 對于BLEU@N指標(biāo), N取3, 4. 利用由微軟Coco評價服務(wù)發(fā)布的代碼來計(jì)算所有的指標(biāo)[11]. 這3種指標(biāo)的計(jì)算結(jié)果均為百分?jǐn)?shù), 得分越高表示生成的視頻描述越接近參考描述.
本文對每個視頻均勻取樣25幀, 并且將句子中每個單詞表示為“one-hot”向量; 對于視頻表示, 在Imagenet ILSVRC12數(shù)據(jù)集上對VGG19進(jìn)行預(yù)訓(xùn)練, 然后在MSVD上對圖 1 所示的模型進(jìn)行微調(diào); 為了表示從兩個域中提取到的融合語義特征, 分別在COCO圖像數(shù)據(jù)集以及MSVD視頻數(shù)據(jù)集上挑選1 000個最常用的單詞作為兩個域的標(biāo)注語義特征[4], 即為圖 2 與圖 3 兩個模型的訓(xùn)練數(shù)據(jù)集. 首先在COCO訓(xùn)練集上對圖2模型進(jìn)行訓(xùn)練, 然后在COCO與MSVD兩個訓(xùn)練集上對圖 3 模型進(jìn)行訓(xùn)練, 產(chǎn)生最終的1000維概率向量; 在LSTM中, 輸入以及隱含層的維度均設(shè)置為1 024. 在測試階段, 采用Beam Search搜索策略[12], 利用圖 4 中訓(xùn)練好的模型生成新的視頻句子描述, 并且將beam size設(shè)置為4.
4.4.1 定量分析
表 1 展示了在MSVD測試數(shù)據(jù)集上, 本文提出的視頻描述模型與現(xiàn)有的7種模型在各個評價指標(biāo)上的得分對比情況. 不同配置的機(jī)器所得仿真結(jié)果均不相同, 表 1 中所列數(shù)據(jù)均以同一臺機(jī)器為參考.
表 1 各個模型的得分對比
表 1 中模型1-4利用了基于注意力的方法, 未引入語義特征; 模型5, 6僅利用了單一域的語義特征; 模型7利用了兩個域的語義特征, 并將其進(jìn)行了簡單的線性融合. 對比分析表 1 中數(shù)據(jù)可以看到: 在4項(xiàng)評價指標(biāo)上, 本文提出的視頻描述模型均獲得了更高的分?jǐn)?shù), 由此得出結(jié)論: ① 在視頻描述框架中, 利用高級語義特征可以增強(qiáng)視覺表示, 有利于模型學(xué)習(xí)視頻描述; ② 僅利用單一域(圖像域或幀流域)的語義特征, 對視頻的描述性能沒有明顯提高; ③ 僅對兩個域中語義特征進(jìn)行簡單線性融合, 雖然提升了視頻描述的各項(xiàng)指標(biāo), 但仍存在不足, 需要改進(jìn); ④ 利用遷移學(xué)習(xí)中的深度域適應(yīng)方法得到的融合語義特征顯著提高了視頻描述性能, 即本文方法在語義特征融合方面具有更好的效果.
4.4.2 定性分析
圖 5 展示了本文提出的視頻描述模型在測試數(shù)據(jù)集上的部分結(jié)果.
圖 5 MSVD測試數(shù)據(jù)集上的視頻描述結(jié)果Fig.5 Video description results on MSVD test data set
圖 5 中示例的樣本幀均為每個測試視頻的部分幀, 通過這些示例可以看出: 與性能較好的LSTM-TSAIV模型相比較, 本文提出的視頻描述框架能夠更加準(zhǔn)確地生成測試視頻的英文描述.
本文以現(xiàn)有的視頻描述框架為基礎(chǔ), 構(gòu)建了一個新的視頻描述模型. 此模型利用遷移學(xué)習(xí)中的深度域適應(yīng)方法, 對輸入端不同域中的語義特征進(jìn)行深度融合, 以提高生成視頻描述的準(zhǔn)確率. 在MSVD視頻數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn), 驗(yàn)證了本文方法的可行性與有效性, 并表明利用深度域適應(yīng)方法能夠更好地實(shí)現(xiàn)不同域中語義特征的融合, 進(jìn)一步提高了視頻描述的準(zhǔn)確率, 提高了網(wǎng)絡(luò)的泛化能力.