Convolutional Two-Stream Network Fusion for Video Action Recognition翻譯

本文轉於:https://blog.csdn.net/weixin_42164269/article/details/80689653 若有侵權請聯繫刪除

摘要

近年來,卷積神經網絡(卷積神經網絡)對視頻中人類行爲識別的應用提出了不同的解決方案,用於整合外觀和運動信息。爲了更好地利用時空信息,我們研究了許多在空間和時間上融合卷積塔的方法。我們得出以下結論:(i)不是在softmax層進行融合,而是在一個卷積層上融合空間和時間網絡,即不會損失性能,而且在參數上有大量的節省;(ii)最好在最後一個卷積層而不是之前的層上(spatially)融合,而在類預測層上的融合可以提高準確性;最後(iii)將抽象的卷積特徵在時空上池化,進一步提高了性能。在這些研究的基礎上,我們提出了一種新的卷積神經網絡結構,用於視頻片段的時空融合,並對其在標準基準上的性能進行評估,該結構取得了最先進的結果。

1. 介紹

視頻中的動作識別是一項非常活躍的研究領域,而最先進的方法仍然遠離人類的表現。與計算機視覺的其他領域一樣,最近的工作主要集中在將卷積神經網絡(ConvNets)應用到這項任務上,並在許多方面取得進展:學習局部時空過濾器[11, 28, 30],結合了光流片段[22],並對更長的時間序列進行建模[6, 17]。

然而,ConvNets在行動識別領域中,還沒有像在其他領域那樣取得的顯著進展,例如,圖像分類 [12, 23, 27]、人臉識別[21]和人類姿勢估計[29]。事實上,在諸如UCF-101和HMDB51[13]這樣的標準基準測試中,當前的最先進的方法是由一種由卷積神經網絡和一個手工特徵的 Fisher Vector編碼[20](如稠密軌跡[33]的 HOF [14] )結合的方法。

這種缺乏成功的部分原因可能是當前用於訓練的數據集要麼太小,要麼太多噪音(我們在相關工作中回到這一點)。與圖像分類相比,視頻中的動作分類在運動和視點上有更多的挑戰,因此可能需要比ImageNet(每類1000個)更多的訓練例子,但是UCF-101每類只有100個例子。另一個重要的原因是,當前的“卷積神經網絡”架構不能充分利用時序信息,因此它們的性能常常被空間(外觀)識別所主導。


從圖1可以看出,一些動作可以從靜止的圖像中識別出來(在這個例子中是箭術)。然而,對於另一些來說,單獨的幀可能是模糊的,而運動線索是必要的。舉個例子,你可以考慮一下,從跑步區分走,從大笑中區分打哈欠,或者在游泳中區分蛙泳。雙流架構 [22]包含了運動信息,通過分別爲靜態圖像的外觀和堆疊的光流獨立的訓練ConvNets。事實上,這項研究表明光流信息本身就足以區分UCF101中的大部分行爲。

然而,雙流架構(或任何以前的方法)不能在視頻中利用兩個非常重要的線索來實現動作識別:(i)識別移動的位置,即註冊外觀識別(空間線索)與光流識別(時間線索);(ii)這些線索是如何隨着時間演變的。

我們的目標是通過開發一種架構來修正這一問題,這種體系結構能夠在特徵抽象的幾個層次上融合空間和時間線索,以及空間和時間的集成。特別地,Sec. 3調查了融合的三個方面:(i)在sec3.1 如何融合兩個網絡(空間和時間)考慮空間註冊?(二)在sec3.2中在哪融合兩個網絡的?最後,在sec3.3(iii)如何在時序上融合網絡?在每一項調查中,我們都選擇了最佳的結果(sec4),然後,將這些結果組合在一起,提出了一個新的架構(Sec.3.4),用於兩個流網絡的時空融合,從而達到了sec4.6的最先進的性能。

我們使用MatConvNet toolbox [31] 實現了我們的方法,並在https://github.com/feichtenhofer/twostreamfusion中公開了我們的代碼。

2. 相關工作

最近的幾項關於在時間序列中使用卷積神經網絡的研究已經研究瞭如何超越簡單地使用幀的外觀信息,以及利用時間信息的問題。一個自然的擴展是堆疊連續的視頻幀,並將2D的卷積神經擴展到時間 [10],這樣第一層就可以學習時空特徵。[11]研究幾種時間採樣的方法,包括早期的融合(讓第一層過濾器在幀中進行操作,如[10]),慢速融合(隨着層的增加而連續增加時間的接收域)和後期融合(在時間較遠的幀上運行合併兩個獨立網絡的全連接層)。他們的架構對時間模型並不是特別敏感,他們通過純粹的空間網絡達到了類似的性能水平,這表明他們的模型並沒有從時間信息中獲得很多。

最近提出的C3D方法[30]在有限的時間支持下,在16個連續的幀上學習3D的卷積神經網絡,所有的過濾器的核都是3x3x3。通過讓所有的過濾器在空間和時間上運行,它們的性能比[11]更好。然而,他們的網絡比[10,11]的網絡要深得多,其結構類似於[23]中非常深的網絡。另一種學習時空關係的方法是在[26]中提出的,作者將三維卷積分解成二維空間和一維時間卷積。具體地說,它們的時間卷積是一個隨時間而來的二維卷積,特徵通道上也是,並且只在網絡的較高層次上執行。

[17]比較了幾個時序特徵的池化架構,以便在更長的時間週期內組合信息。他們得出的結論是,卷積層的時間池比slow, local, or late pooling,以及時間的卷積更好。他們還研究了有序的序列建模方法,將卷積神經網絡的特徵輸入到一個具有長短期記憶(LSTM)單元的循環網絡中。然而,使用LSTMs並沒有對卷積特徵的時間池進行改進。

與我們最密切相關的工作,也是我們在這裏擴展的,是[22]中提出的 two-stream ConvNet架構。該方法首先利用RGB和光流幀將視頻分解成空間和時間分量。這些組件被輸入到不同的深度卷積神經網絡結構中,以學習在場景中關於外表和運動的空間以及時間信息。每流都是自己進行視頻識別和最終的分類,softmax得分在後期融合中結合。作者比較了幾種使光流幀對齊的技術,並得出結論:L=10水平和垂直光流場的簡單疊加效果最好。他們還在UCF101和HMDB51上使用多任務學習,以增加培訓數據的數量,並提高兩者的性能。到目前爲止,這種方法是將深度學習應用於動作識別的最有效方法,特別是在有限的訓練數據方面。這種雙流方法最近被應用於幾個動作識別方法,[4, 6, 7, 17, 25, 32, 35]。

與我們的工作相關的是雙線性方法 [15],它通過在圖像的每個位置外積來關聯兩個卷積層的輸出。產生的雙線性特徵在所有位置被池化,形成一個無序的描述符。請注意,這與手工製作的SIFT特徵的二階池 [2]密切相關。

在數據集方面,[11]引入了具有大量視頻(≈1M)和類(487)。然而,這些視頻是自動收集的,因此並不是沒有標籤的噪音。另一個大型數據集是THUMOS數據集 [8],由超過4500萬幀的圖斯。然而,其中只有一小部分實際上包含了被標記的動作並且對於監督特性學習是很有用的。由於標籤的噪聲,學習時空的卷積神經網絡在很大程度上依賴於更小的,但時序一致的數據集,例如UCF101[24]或HMDB51 [13],其中包含了簡短的動作視頻。這有助於學習,但也有可能嚴重過擬合訓練數據。

3. 方法

我們建立在[22]的雙流架構上建立了基礎。這個架構有兩個主要缺點:(i)是不能在空間和時間特徵之間學習像素級的對應關係(因爲融合只是分類的分數上),和(ii)有限時間規模,因爲空間卷積操作只在單幀上和時序卷積操作只在堆疊的L個時序相鄰的光流幀上(例如L=10)。在視頻中,[22]的實現通過在規則的空間採樣上使用時間池在一定程度上解決了後一個問題,但這並不允許對行爲的時間演變進行建模。

3.1.空間融合

在本節中,我們考慮了用於融合兩個流網絡的不同架構。然而,當空間融合任何兩個網絡時,也會出現同樣的問題,因此不與這個特定的應用程序綁定。

需要說明的是,我們的目的是將兩個網絡(在一個特定的卷積層)融合在一起,這樣在相同像素位置的通道響應就會被放在對應的位置。爲了激勵這一點,不妨考慮一下刷牙和梳頭之間的區別。如果一隻手在某個空間位置週期性地移動,那麼時間網絡就能識別這個動作,而空間網絡可以識別位置(牙齒或毛髮)和它們的組合,然後辨別動作。

當兩個網絡在融合層上有相同的空間分辨率時,就很容易實現這種空間通信,只需通過一個網絡上的重疊(疊加)層(我們在下面做這個精確的)。然而,還有一個問題是,一個網絡中的通道(或channels)對應於另一個網絡的哪個通道(或channels)。

假設在空間網絡中不同的通道負責不同的面部區域(嘴、毛髮等),而時序網絡中的一個通道負責這類的週期性運動場。然後,在通道被堆起來之後,後續層中的過濾器必須學習這些合適的通道之間的對應關係(例如,在卷積過濾器中加權),以便最好地區分這些操作。

爲了使這個更具體,我們現在討論了在兩個網絡之間融合層的許多方法,並且每個網絡都描述了在通信之後的後果。

一個融合函數在時間t融合兩個特徵圖來產生一個輸出圖,這裏 W,H,D分別是特徵圖寬,高和通道數。

當應用於前饋的卷積神經網絡結構時,它由卷積、全連通、池和非線性層組成,可以應用於網絡的不同節點,例如早期融合、後期融合或多層融合。可以使用各種不同的融合函數。我們在本文中研究了下面的內容,爲了簡單起見,我們假設H=H'=H'',W=W'=W'',D=D'=D'',並刪除t下標。

Sum fusion。y sum=f sum(x a,x b)計算兩個特徵圖的和,在相同的空間位置i,j和特徵通道d:


由於通道的編號是任意的,sum fusion簡單地定義了網絡之間的任意通信。當然,隨後的學習可以利用這種任意的通信來達到最佳效果,優化每個網絡的過濾器,使這種通信變得有用。

Max fusion. y max = f max (x a ,x b ) 類似的採用兩個特徵圖的最大值:


這裏所有的變量定義如 (1). 和sum fusion類似,網絡通道上的對應是任意的。

Concatenation fusion. y cat = f cat (x a ,x b ) 堆疊兩個特徵圖,在通道d上在相同的空間位置 i,j:


連接並沒有定義通信,但是將其留給後續的層來定義(通過學習適當的過濾器來對層進行加權),正如我們接下來要說明的那樣。

Conv fusion. y conv = f conv (x a ,x b ) 首先在通道d的相同的空間位置i,j堆疊兩個特徵圖如上面的(3),隨後將堆疊的數據與一組過濾器進行卷積f ∈ R^1×1×2D×D and biases b ∈ R^D


輸出通道的數量是D,而過濾器的尺寸是1x1x2D。在這裏,過濾器f用於將維度減少2倍,並且能夠在相同的空間(像素)位置上對兩個特徵圖x_a、x_b進行加權組合。當在網絡中作爲可訓練的過濾器內核時,f能夠學習兩個特徵映射的對應關係,從而最小化一個關聯的損失函數。例如,如果f被學習爲兩個permuted identity矩陣1' ∈ R^1×1×D×D的連接,那麼一個網絡的第i個通道只與另一個通道的第i通道(通過求和)結合在一起。
請注意,如果在連接後沒有維度減少卷積層,那麼即將到來的層的輸入通道的數量是2D的。

Bilinear fusion. y bil = f bil (x a ,x b ) 計算兩個特徵圖在每個像素位置的矩陣外積,然後求和:


由此產生的特徵y bil ∈ R D2捕獲了相應空間位置的乘法交互。這個特性的主要缺點是它的高維度。爲了使雙線性特性在實踐中可用,它通常應用於ReLU5,全連接的層被移除[15] ,而power- and L2-normalisation應用於線性SVMs的有效分類。

雙線性融合的優點是一個網絡的每個通道都與其他網絡的每個通道相結合(作爲一個產品)。然而,缺點是所有的空間信息在這一點被邊緣化了。

討論:這些操作說明了一系列可能的融合方法。其他的可以考慮,例如:採用通道的像素級的乘法(而不是它們的和或最大),或者(分解的)外積,而不需要在位置之間進行池化 [18]。


注入融合層可以對雙流網絡中的參數和層數產生重大影響,特別是如果只保留了被融合的網絡,而且其他網絡塔被截斷,如圖2所示(左)。表1顯示了兩種VGG-M-2048(在[22]中使用)模型其中包含5個卷積層,然後是三個完全連接的層,的不同融合方法對層數和參數的影響。在ReLU5之後(在最後的卷積層之後)的最大-,Sum和Conv-fusion,在結構中去掉了近一半的參數,因爲在融合之後只使用了一個全連接的層。Conv融合有更多的參數(97.58 M),與sum和max fusion(97.31 M)相比,由於額外的過濾器用於通道的融合和維度的減少。連接融合中涉及到更多的參數,在融合後不涉及維數的減少,因此在第一個全連接的層中,參數的數量會增加一倍。相比之下,在softmax層的sum-fusion需要兩個塔的參數的所有層(16)和所有參數(181.4M)。
在實驗部分(sec4.2.2)中,我們對每種可能的融合方法的性能進行了評估和比較,並對它們的分類精度進行了比較。

3.2. Where to fuse the networks

如上所述,融合可以應用於這兩個網絡中的任何一點,唯一的約束條件是兩個輸入映射在t時刻具有相同的空間維度;也就是H=H', W=W'。這可以通過使用“向上卷積”層來實現36],或者如果維度是相似的,可以通過在較小的映射上填充0來實現向上採樣。


表2比較了兩個網絡中不同層的融合參數的數量,使用VGG-M模型。在不同的卷積層層之後進行融合,對參數的數量產生了大致相同的影響,因爲大多數這些參數都存儲在全連接的層中。兩個網絡也可以在兩層融合,如圖2所示(右)。這就實現了從每個網絡(在卷積5)中對通道進行像素級註冊的最初目標,但不會導致參數數量的減少(例如,如果只在conv5層進行融合,參數則會減少一半)。在實驗部分(sec4.3)中,我們對不同級別的融合性能進行評估和比較,並同時在多個層進行融合。

3.3. 時序融合


現在,我們考慮將在時間t上結合特徵圖x_t,生成輸出映射y_t的技術。處理時間輸入的一種方法是通過對網絡預測的在時間上平均(在22中使用)。在這種情況下,架構只在2D(xy)中池化;參見圖3(a)。

3D Pooling:將max-poolin應用於一個大小爲W'*H'* T'的3D池中。這是對時間域的2D池的直接擴展,如圖3(b)所示。例如,如果將三個時間樣本集中在一起,那麼可以在三個堆疊的相應通道中使用3x3x3 max池。注意,在不同的通道上沒有池。


3DConv+Pooling:首先用D'個濾波器對四維輸入x進行卷積 f ∈ R^W'' ×H'' ×T'' ×D×D' and biases b ∈ R^D 


在[30]中,將會有上面描述的3D池。圖3(c)說明了該方法。過濾器f能夠在一個局部的時空社區中使用大小爲W''× H '' × T'' × D的內核來對特徵的加權組合進行建模,通常這個社區是3x3 x3(空間x時間)。

Discussion.[17]的作者們評估了幾個額外的方法,以便在一段時間內結合兩流網絡。他們發現在最後的卷積層進行最大池化效果不錯。我們將最大池推廣到3D池,它提供了特徵位置隨時間小的變化的不變性。此外,3D conv可以讓時空過濾器被學習 [28, 30]。例如,過濾器可以學習如何將重心放在中心時間樣本上,或者在時間或空間上進行區分。

3.4. 提出的結構

我們現在把前幾節的想法結合在一起,提出一個新的時空融合架構,並根據我們在第4節中的實驗評估來激發我們的選擇。空間融合方法、層和時間融合的選擇分別基於第4.2、4.3和4.5節的實驗。


我們提出的架構(如圖4所示)可以看作是圖2(左)架構的擴展。在最後一個卷積層(在ReLU之後)我們將這兩個網絡融合進入空間流,通過使用3D Conv融合和3D池(見圖4,左)將其轉換爲時空流。此外,我們不會截斷時間流,並在時間網絡中執行3D池化(見圖4,右)。這兩種流的損失都用於訓練,在測試期間,我們對這兩種流的預測進行平均。在我們的經驗評估(sec4.6.6)中,我們發現保持這兩個流的性能比在融合後截斷時間流略勝一籌。

在討論瞭如何隨時間融合網絡時,我們在這裏討論了採樣時間序列的頻率。時間融合層接收的T時間的chunks,他們是 τ幀分開的;也就是說,兩個流塔在 t,t+τ,...t+Tτ的輸入視頻中被應用到輸入視頻中。如圖4所示,這使我們能夠捕捉短尺度(t±L2)時間特徵的輸入時間網絡(如箭的畫),並把它們放在上下文較長時間(t + Tτ)在更高一層的網絡(如箭,弓彎,和射擊一個箭頭)。

由於光流有一個時間接受的L=10幀,所以這個結構的作用是在一個TxL的時間接受域上。注意, τ < L導致時間流的重疊輸入,而τ ≥ L產生時序上的非重疊特性。

在融合之後,我們讓3D池在T空間特性地圖上運行,這些地圖是分開的。隨着時間的推移,特性可能會改變它們的空間位置,將空間和時間池結合到3D池是有意義的。例如,一個VGG-M網絡在卷積神經網絡的輸出有16個像素的輸入,並從139x139像素的接收域捕捉高水平的特徵。因此,在時間上遙遠的空間上的卷積圖可以捕捉到同一物體的特徵,即使它們稍微移動。

3.5. Implementation details

Two-Stream architecture。我們採用了兩種預先訓練的ImageNet模型。首先,爲了比較原始的雙流方法 [22],VGG-M-2048模型[3]。第二,非常深的VGG-16模型 [23]。我們首先分別對這兩種流進行單獨的訓練,如[22]所描述的那樣,但是有一些細微的差別:我們不使用RGB顏色的jittering;我們不是按照固定的時間表來降低學習速率,而是在驗證錯誤飽和之後降低它;爲了訓練空間網絡,我們使用對前兩個全連接層的使用0.85 dropout ratios。甚至更低的dropout ratios(高達0.5)並沒有顯著降低其表現。

對於時間網,我們使用L=10幀疊加光流[22]。我們還用一個在ImageNet上預先訓練的模型來初始化時間網,因爲這通常會促進訓練速度,而不像我們從頭訓練的模型那樣降低性能。網絡輸入預先進行了重新調整,因此幀的最小的邊等於256。我們還在訓練前預先計算光流 [1],並將光流場存儲爲JPEG圖像(帶有大於20像素的位移矢量的剪輯)。我們不使用批量歸一化[9]。

Two-Stream ConvNet fusion。對於融合來說,這些網絡微調的批大小爲96個,學習速率從10-3開始,當驗證精度飽和時,它的學習速率將降低10倍。我們只會反向傳播到注入的融合層,因爲完全的反向傳播並沒有導致改進。在我們的實驗中,我們只在具有相同輸出分辨率的層之間進行融合;除了在VGG-16模型的ReLU5層與VGG-M的ReLU5層融合,我們將VGG-M(13 13,比14 14)稍微小一些的輸出,並有一行和一列0。對於Conv fusion,我們發現注入的融合層(如(4))的仔細初始化是非常重要的。我們比較了幾種方法,發現通過 identity matrices (對兩個網絡求和)的初始化和隨機初始化一樣。

Spatiotemporal architecture。爲我們最終的架構描述在Sec. 3.4。3D Conv融合核f維度3×3×3×1024×512,T = 5,即時空過濾器尺寸H'' ×W '' ×T '' = 3×3×3,D = 1024結果來自時空流ReLU5連接,和D' = 512匹配FC6層輸入通道的數量。

3D Conv過濾器也被初始化,通過將兩個identity matrices疊加起來,將1024個特徵通道映射到512。由於在最後一個卷積層上的時間卷積神經網絡的激活大約比它的外表對應的時間要低3倍,所以我們將f的時間單位矩陣初始化了3倍。f的時空部分是由3 × 3 × 3 and σ = 1的高斯函數初始化的。此外,在訓練過程中,我們不會在預測層上融合,因爲這將會導致對時間架構的損失,因爲時空結構需要更長的時間來適應融合的特性。

訓練三維卷積神經網絡比雙流的迴旋網更容易過度擬合,並且需要額外的數據增強。在finetuning期間,在每一次訓練迭代中,我們從96個視頻中的每一箇中抽取T=5幀,隨機選擇起始幀,然後隨機抽取時間跨度 (τ)∈ [1,10](因此在15到50幀之間進行操作)。我們沒有裁剪一個固定大小的224x224輸入patch,而是隨機地將其寬度和高度抖動±25%,並將其重新調整爲224x224。重新選擇的方法是隨機選擇的,可能會改變長寬比。補丁只在與圖像邊界(相對於寬度和高度)的距離上最多25%的距離。注意,在第一幀(一個多幀疊加)中隨機選擇了crop的位置(以及大小、比例、水平翻轉),然後將相同的空間crop應用於堆棧中的所有幀。

測試。除非另有說明,只有T=5幀(和它們的水平翻轉)被取樣,與[22]的25幀相比較,以促進快速的經驗評估。此外,我們還使用了全的卷積測試,在整個幀中使用(而不是空間crops)。

4. Evaluation

4.1. Datasets and experimental protocols

我們在兩個流行的動作識別數據集上評估我們的方法。首先是UCF101 [24],它包含了101個類別的13320個動作視頻。第二個數據集是HMDB51 [13],它包含了6766個視頻,這些視頻已經被註釋爲51個動作類。對於這兩個數據集,我們使用所提供的評估協議,並將三個分割的平均精度報告到培訓和測試數據中。

4.2. How to fuse the two streams spatially?

對於這些實驗,我們使用的網絡架構與[22]相同的網絡結構;也就是2個VGG-M-2048網 [3]。融合層被注入在最後的卷積層,經過修正,也就是說,它的輸入是來自兩個流的ReLU5的輸出。之所以選擇這一方法,是因爲在初步實驗中,它提供了比非修正的conv5輸出結果更好的結果。在這一點上,這些特性已經提供了大量的信息,同時還提供了粗糙的位置信息。在融合層之後,使用一個單一的處理流。

我們比較了表1中不同的融合策略,我們報告了在UCF101的第一個分割的平均精度。我們首先觀察到,我們對 softmax averaging (85.94%) 的性能與[22]的報告相比是比較好的。其次,我們看到Max和Concatenation的性能要比Sum和Conv融合要低得多。Conv融合表現最好,比雙線性融合和簡單加和融合略好。對於所報告的Conv-fusion結果,卷積的內核f是由identity matrices初始化的,它執行了這兩個特徵圖的總和。然而,與身份矩陣(85.96%)相比,通過隨機高斯噪聲的初始化結果與身份矩陣的相似度達到了85.59%,而在更長的訓練時間內。這很有趣,因爲這一點,以及Sum-fusion的高結果表明,簡單地對特徵圖進行求和已經是一種很好的融合技術,並且學習一個隨機初始化的組合不會導致顯著的不同/更好的結果。

對於表1中所示的所有融合方法,在FC層的融合與ReLU5相比,其性能較低,而方法的順序與表1相同,除了在FC層不可能的雙線性融合。在所有的FC層中,FC8的性能優於FC7和FC6,Conv fusion爲85.9%,緊隨其後的是85.1%。我們認爲ReLU5的表現稍好一些的原因是,在這一層,外觀和運動之間的空間對應是融合在一起的,這在FC層 [16]已經被瓦解了。

4.3. Where to fuse the two streams spatially?

在表2中比較了不同層的融合。使用Conv融合,融合層是由一個單位矩陣初始化的,這個單位矩陣與前一層的激活相結合。有趣的是,在ReLU5中,融合和截斷一個網絡,在UCF101的第一次分裂(85.96%vs 86.04%)上達到了相同的分類精度,作爲預測層(FC8)的額外融合,但是在總參數(97.57 M和181.68 M)的數量要少得多。圖2顯示了這兩個示例是如何實現的。

4.4. Going from deep to very deep models


由於計算複雜性的原因,以前所有的實驗都是用兩個VGG-M-2048網絡進行的(如22)。然而,使用更深層的模型,比如[23]中的非常深的網絡,可以在圖像識別任務中獲得更好的性能,比如5、15、27。在此之後,我們將在UCF101和HMDB51上訓練16層網絡,VGG-16,23。所有的模型都在ImageNet上進行了預先訓練,並分別爲目標數據集進行了訓練,除了從時間UCF101模型中初始化的臨時HMDB51網絡。我們採用了同樣的增強技術來進行三維的卷積訓練(在sec3.5.3中描述),但是從圖像的中心進行了採樣。當驗證目標飽和時,學習率被設置爲50 4,並減少10倍。表3顯示了深度和非常深的模型之間的比較。在這兩個數據集上,一個觀察到一個更深層次的空間模型可以顯著提高性能(8.11%和10.29%),而更深的時間網絡會產生更低的精度增益(3.91%和3.73%)。

4.5. How to fuse the two streams temporally?


不同的時間融合策略如表4所示。在表4的第一行中,我們觀察到conv fusion比平均的softmax輸出(cf表3)性能更好。接下來,我們發現在融合層之後,應用3D池而不是使用2D池,在兩個數據集上都增加了性能,在HMDB51上獲得了更大的收益。最後,表4的最後一行列出了應用3D過濾器進行融合的結果,這進一步提高了識別率。

4.6. Comparison with the state-of-the-art


最後,我們在表5中將最先進的方法在UCF101和HMDB51三個分割上進行比較。我們使用的方法與上面所示的方法相同,即通過3D Conv和3D池(圖4所示)進行融合。爲了測試,我們通過對輸入幀-堆棧和水平翻轉進行密集採樣,對每個網絡的20個時間預測進行平均。一個有趣的比較是原始的雙流方法[22],我們在UCF101和HMDB51上使用VGG-16空間(S)網絡和VGG-M時間(T)模型提高了3%,以及在兩流都使用VGG-16時分別提高4.5%(HMDB)和6% (HMDB)。另一個有趣的比較是,在[17]的雙流網絡中,GoogLeNet [27]架構的最後一個維度縮減層之後,使用了時序池化。UCF101上當使用120幀時報告88.2%,在使用LSTM進行池時88.6%。在這裏,我們的結果是92.5%,這清楚地強調了我們提出的方法的重要性。還要注意的是,在時間融合之後使用單個流可以達到91.8%,相比之下,保持兩個流可以達到92.5%,但是更簡單的體系結構參數要少得多。


作爲最後的實驗,我們探討了手工製作的IDT特徵 [33]與我們的表示的後期融合的好處。我們只是簡單地將FV-encoded IDT descriptors (i.e. HOG, HOF, MBH)的SVM評分與我們的卷積表示(在softmax之前)預測進行平均。結果的性能如表6所示。我們在UCF101上取得93.5%,在HMDB51上達到了69.2%。這個最先進的結果表明,手工製作的表示和我們的端到端學習的卷積方法之間仍然有一定程度的互補。


5.結論

我們爲兩個流網絡提出了一個新的時空結構,在網絡之間有一個新的卷積融合層,一個新的時間融合層(包含了三維卷積和池)。新的結構不會比以前的方法顯著增加參數的數量,但是在兩個標準的基準數據集上最先進的方法。我們的研究結果表明,在空間和時間上,學習高度抽象的卷積神經網絡特徵的對應是非常重要的。一個有趣的發現是,通過將卷積神經網絡的預測與FV-encoded IDT特徵結合起來,仍然有這樣的改進。我們懷疑,鑑於更多的訓練數據,這種差異可能會隨着時間的推移而消失,但除此之外,它肯定表明了未來的研究應該在哪裏進行。最後,我們回到了當前數據集要麼太小,要麼太多噪聲。出於這個原因,本文中的一些結論應該謹慎對待。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章