愛奇藝提BC-GNN:時序動作提名生成任務融合邊界內容的圖神經網絡

機器之心pro 發佈 2020-08-06T22:34:11+00:00

在構建圖的過程中,視頻的每個處理單元 snippet 對應的時刻可以看作是 proposal 的起始點和結束點,從而可以得到起始點集合 N_s 和結束點集合 N_e,N_s 和 N_e 作為邊界內容圖的兩個互相獨立的頂點集。

機器之心專欄

機構:愛奇藝

近日,計算機視覺頂會 ECCV 2020 已正式公布論文接收結果。本文介紹的是來自愛奇藝團隊一篇論文,研究者提出了 Boundary Content Graph Neural Network (BC-GNN),通過圖神經網絡對邊界和內容預測之間的關係進行建模,生成更精確的時序邊界和可靠的內容置信度分數。

時序動作提名生成 (Temporal action proposal generation) 任務需要從未處理的長視頻中精確定位包含高質量動作內容的片段,該任務在視頻理解中起著重要的作用。現有的方法多為先生成起止邊界,再將起止邊界組合成候選動作提名,然後再生成候選時序片段的內容置信度,這種處理方式忽略了邊界預測與內容預測之間的聯繫。

為了解決這個問題,愛奇藝提出了 Boundary Content Graph Neural Network (BC-GNN),通過圖神經網絡對邊界和內容預測之間的關係進行建模,通過利用兩者之間的內在聯繫生成更精確的時序邊界和可靠的內容置信度分數。

在 BC-GNN 中,將候選時序片段的內容(content)作為圖的邊(edge),將候選時序片段的邊界(boundary,開始點和結束點)作為圖的節點(node),然後設計了一種更新邊和節點特徵的推理方法,將更新之後的特徵用來預測起始點機率和內容的置信度,最終生成高質量的 proposal。該方法最終在 ActivityNet-1.3 和 THUMOS14 這兩個公開數據集的時序動作提名生成任務以及時序行為檢測任務上均達到了領先水平。

論文連結:https://arxiv.org/abs/2008.01432

研究方法

上圖是 BC-GNN 的整體框架圖,主要包括五個流程,分別為:

1)特徵提取(Feature Encoding)

2)基礎模塊(Base Module)

3)圖構建模塊(Graph Construction Module, GCM)

4)圖推理模塊(Graph Reasoning Module, GRM)

5)輸出模塊 (Output Module)

特徵提取模塊

研究者使用在視頻行為識別中取得良好效果的 two-stream 網絡將視頻編碼成特徵。Two-stream 由 spatial 和 temporal 兩個分支網絡構成,spatial 分支網絡的輸入是單張 rgb 圖像,用來提取空間特徵,temporal 分支網絡的輸入是多張光流圖像,用來提取運動特徵。對於一個未處理的長視頻,將對應的視頻幀切分為 T 個可處理單元(snippet),每個可處理單元經 two-stream 之後被編碼成為 D 維的特徵向量,其中 D 維特徵向量由 spatial 和 temporal 分支網絡的最後一層輸出拼接而成,從而視頻被編碼成一個 TxD 的特徵矩陣,T 是特徵序列的長度,D 表示特徵的維度。

BC-GNN 主要包括四個模塊:基礎模塊、圖構建模塊、圖推理模塊和輸出模塊。

基礎模塊

基礎模塊由兩層 1D 卷積組成,主要用來擴大感受野並作為整個網絡的基礎。

圖構建模塊

圖構建模塊用來構建一個邊界內容圖,構建圖的過程如上圖所示。研究者構建的邊界內容圖是一個二分圖,二分圖是一類特殊的圖,它的頂點由兩個獨立集 U 和 V 組成,並且所有的邊都是連結一個 U 中的點和一個 V 中的點。在構建圖的過程中,視頻的每個處理單元 snippet 對應的時刻可以看作是 proposal 的起始點和結束點,從而可以得到起始點集合 N_s 和結束點集合 N_e,N_s 和 N_e 作為邊界內容圖的兩個互相獨立的頂點集。用 t_s,i、t_e,j 分別表示 Ns 中的任意起始點 n_s,i 和 N_e 中的任意結束點 n_e,j 對應的時刻,其中 i,j=1,2,…,T,當滿足 t_e,j > t_s,i 時 n_s,i 和 n_e,j 之間有邊連接,用 d_i,j 表示。

當連接起始點和結束點之間的邊沒有方向時可以得到(a)所示的無向圖。由於起始點代表 proposal 的開始時間,結束點代表 proposal 的結束時間,連接起始點和結束點的邊應該帶有方向性,並且從起始點到結束點的邊代表的信息與從結束點到起始點的邊代表的信息是不同的,因此研究者將(a)所示的無向圖轉換為圖(b)所示的有向圖。具體的轉換過程為,將無向圖中的無向邊分成兩個有相同節點和相反方向的有向邊。

在進行圖推理操作之前,研究者為構建的邊界內容圖中的每個節點和邊賦予其特徵。為了得到節點和邊的特徵,研究者在基礎模塊後面連接三個並行的 1D 卷積,從而得到三個特徵矩陣,分別為起始點特徵矩陣 F_s、結束點特徵矩陣 F_e 和內容特徵矩陣 F_c,這三個特徵矩陣的時間維度和特徵維度均相同,大小為 TxD。對於任意起始節點 n_s,i,對應的時間為 t_s,i,則該節點的特徵為 F_s 特徵矩陣第 i-1 行對應的特徵向量。同理,對於任意的結束節點 n_e,j,其特徵為 Fe 特徵矩陣第 j-1 行對應的特徵向量。若 n_s,i 和 n_e,j 之間有邊連接,邊 d_i,j 對應的特徵獲取過程為:1)首先對 F_c 特徵矩陣第 i-1 行到 j-1 對應的特徵矩陣在時序方向上進行線性插值,得到固定大小的特徵矩陣 NxD』(N 為人為設置的常數);2)然後將 NxD』轉化為(N·D』)x1;3)在 (N·D』)x1 特徵後連接一個全連接層,得到維度為 D』的特徵向量即為邊 d_i,j 對應的特徵。在有向圖中,節點和邊的特徵更新之前,連接兩個節點方向不同的兩條邊共享同一個特徵向量。

圖推理模塊

為了實現節點和邊緣之間的信息交換,研究者提出了一種新的圖推理方法,該推理方法可分為邊特徵更新和節點特徵更新兩個步驟。邊特徵更新步驟旨在匯總有邊連接的兩個節點的屬性,更新過程如下所示:

其中σ表示激活函數 ReLU,θs2e 和θe2s 代表不同的可訓練的參數,× 代表矩陣相乘,∗ 代表 element-wise 相乘。

節點特徵更新步驟旨在聚合邊及其相鄰節點的屬性,更新過程如下所示:

其中 e_(h,t)表示從頭結點 h 指向尾節點 t 的邊對應的特徵,K 表示以 h 為頭節點的邊的總數。為了避免輸出特徵數值規模的增加,研究者在更新節點特徵前先對對應的邊的特徵進行歸一化,之後再把更新後的邊的特徵作為相應頭結點特徵的權重。σ表示激活函數 ReLU,θ_node 代表可訓練的參數。

輸出模塊

如 BC-GNN 的整體框架圖所示,候選 proposal 由一對節點與連接它的邊產生,並且其起始點、結束點和內容的置信度分別基於更新後的節點特徵和邊特徵生成,具體過程如下所示:

實驗

研究者在 ActivityNet-1.3 和 THUMOS-14 這兩個公開數據集上分別進行時序動作提名生成實驗和時序行為檢測實驗。

時序動作提名生成實驗

從上面兩個表中可以看出,研究者在兩個通用的數據集上的效果均達到領先水平。

時序行為檢測實驗

採用對 proposal 進行分類的方式得到時序行為檢測結果,從上面兩個圖中可以看出,在兩個數據上研究者提出的方法均取得領先的結果。

消融實驗

在 BC-GNN 算法中,相比於直接使用傳統的 GCN,將無向圖轉變成有向圖,並且增加了邊特徵更新步驟,為了驗證這兩個策略的有效性,在 ActivityNet-1.3 數據集的時序動作提名生成任務上進行了消融實驗。從下圖的表格和結果曲線上可以看出,這兩種策略均有利於結果的提升。

相比於目前通用的將邊界預測與內容預測劃分為兩個步驟的算法,本文提出的方法使用圖神經網絡,對邊界預測與內容預測的關係進行建模,將邊界預測和內容預測的過程聯繫起來。高質量的動作內容有利於邊界的調整,同時精確的邊界定位會幫助內容置信度的預測。此外,研究者還提出一種新的圖推理方法,融合邊界信息和內容信息去更新對應的節點和邊的信息。本文提出的對有關聯的兩個步驟進行建模的方法可以應用於其他相似任務中。

包括本文在內,目前學術界在時序行為檢測任務上取得不錯效果的方法大多採用先提取動作提名再對動作提名進行分類的方法,這種兩階段的方式增加了整個流程的複雜度和運算量,未來將針對這類問題將有更多的設計與探索。

關鍵字: