
In this work we investigate the effect of the convolutional network depth on its accuracy in the large-scale image recognition setting. Our main contribution is a thorough evaluation of networks of increasing depth using an architecture with very small (3 × 3) convolution filters, which shows that a significant improvement on the prior-art configurations can be achieved by pushing the depth to 16–19 weight layers. These findings were the basis of our ImageNet Challenge 2014 submission, where our team secured the first and the second places in the localisation and classification tracks respectively. We also show that our representations generalise well to other datasets, where they achieve state-of-the-art results. We have made our two best-performing ConvNet models publicly available to facilitate further research on the use of deep visual representations in computer vision.
在這項工作中,我們研究了卷積網絡深度在大規模的圖像識别環境下對準确性的影響。我們的主要貢獻是使用非常小的(3×3)卷積濾波器架構對網絡深度的增加進行了全面評估,這表明通過将深度推到16-19權重層可以實作對現有技術配置的顯著改進。這些發現是我們的ImageNet Challenge 2014送出的基礎,我們的團隊在定位和分類過程中分别獲得了第一名和第二名。我們還表明,我們的表示對于其他資料集泛化的很好,在其它資料集上取得了最好的結果。我們使我們的兩個性能最好的ConvNet模型可公開獲得,以便進一步研究計算機視覺中深度視覺表示的使用。
Convolutional networks (ConvNets) have recently enjoyed a great success in large-scale image and video recognition (Krizhevsky et al., 2012; Zeiler & Fergus, 2013; Sermanet et al., 2014; Simonyan & Zisserman, 2014) which has become possible due to the large public image repositories, such as ImageNet (Deng et al., 2009), and high-performance computing systems, such as GPUs or large-scale distributed clusters (Dean et al., 2012). In particular, an important role in the advance of deep visual recognition architectures has been played by the ImageNet Large-Scale Visual Recognition Challenge (ILSVRC) (Russakovsky et al., 2014), which has served as a testbed for a few generations of large-scale image classification systems, from high-dimensional shallow feature encodings (Perronnin et al., 2010) (the winner of ILSVRC-2011) to deep ConvNets (Krizhevsky et al., 2012) (the winner of ILSVRC-2012).
卷積網絡(ConvNets)近來在大規模圖像和視訊識别方面取得了巨大成功(Krizhevsky等,2012;Zeiler&Fergus,2013;Sermanet等,2014;Simonyan&Zisserman,2014)由于大的公開圖像存儲庫,例如ImageNet,以及高性能計算系統的出現,例如GPU或大規模分布式叢集(Dean等,2012),使這成為可能。特别是,在深度視覺識别架構的進步中,ImageNet大型視覺識别挑戰(ILSVRC)(Russakovsky等,2014)發揮了重要作用,它已經成為幾代大規模圖像分類系統的測試台,從高次元淺層特征編碼(Perronnin等,2010)(ILSVRC-2011的獲勝者)到深層ConvNets(Krizhevsky等,2012)(ILSVRC-2012的獲獎者)。
With ConvNets becoming more of a commodity in the computer vision field, a number of attempts have been made to improve the original architecture of Krizhevsky et al. (2012) in a bid to achieve better accuracy. For instance, the best-performing submissions to the ILSVRC-2013 (Zeiler & Fergus, 2013; Sermanet et al., 2014) utilised smaller receptive window size and smaller stride of the first convolutional layer. Another line of improvements dealt with training and testing the networks densely over the whole image and over multiple scales (Sermanet et al., 2014; Howard, 2014). In this paper, we address another important aspect of ConvNet architecture design —— its depth. To this end, we fix other parameters of the architecture, and steadily increase the depth of the network by adding more convolutional layers, which is feasible due to the use of very small (3 × 3) convolution filters in all layers.
随着ConvNets在計算機視覺領域越來越商品化,為了達到更好的準确性,已經進行了許多嘗試來改進Krizhevsky等人(2012)最初的架構。例如,ILSVRC-2013(Zeiler&Fergus,2013;Sermanet等,2014)表現最佳的送出使用了更小的感受視窗尺寸和更小的第一卷積層步長。另一條改進措施在整個圖像和多個尺度上對網絡進行密集地訓練和測試(Sermanet等,2014;Howard,2014)。在本文中,我們解決了ConvNet架構設計的另一個重要方面——其深度。為此,我們修正了架構的其它參數,并通過添加更多的卷積層來穩定地增加網絡的深度,這是可行的,因為在所有層中使用非常小的(3×3)卷積濾波器。
As a result, we come up with significantly more accurate ConvNet architectures, which not only achieve the state-of-the-art accuracy on ILSVRC classification and localisation tasks, but are also applicable to other image recognition datasets, where they achieve excellent performance even when used as a part of a relatively simple pipelines (e.g. deep features classified by a linear SVM without fine-tuning). We have released our two best-performing models to facilitate further research.
是以,我們提出了更為精确的ConvNet架構,不僅可以在ILSVRC分類和定位任務上取得的最佳的準确性,而且還适用于其它的圖像識别資料集,它們可以獲得優異的性能,即使使用相對簡單流程的一部分(例如,通過線性SVM分類深度特征而不進行微調)。我們釋出了兩款表現最好的模型1,以便進一步研究。
The rest of the paper is organised as follows. In Sect. 2, we describe our ConvNet configurations. The details of the image classification training and evaluation are then presented in Sect. 3, and the configurations are compared on the ILSVRC classification task in Sect. 4. Sect. 5 concludes the paper. For completeness, we also describe and assess our ILSVRC-2014 object localisation system in Appendix A, and discuss the generalisation of very deep features to other datasets in Appendix B. Finally, Appendix C contains the list of major paper revisions.
本文的其餘部分組織如下。在第2節,我們描述了我們的ConvNet配置。圖像分類訓練和評估的細節在第3節,并在第4節中在ILSVRC分類任務上對配置進行了比較。第5節總結了論文。為了完整起見,我們還将在附錄A中描述和評估我們的ILSVRC-2014目标定位系統,并在附錄B中讨論了非常深的特征在其它資料集上的泛化。最後,附錄C包含了主要的論文修訂清單。
To measure the improvement brought by the increased ConvNet depth in a fair setting, all our ConvNet layer configurations are designed using the same principles, inspired by Ciresan et al. (2011); Krizhevsky et al. (2012). In this section, we first describe a generic layout of our ConvNet configurations (Sect. 2.1) and then detail the specific configurations used in the evaluation (Sect. 2.2). Our design choices are then discussed and compared to the prior art in Sect. 2.3.
為了衡量ConvNet深度在公平環境中所帶來的改進,我們所有的ConvNet層配置都使用相同的規則,靈感來自Ciresan等(2011);Krizhevsky等人(2012年)。在本節中,我們首先描述我們的ConvNet配置的通用設計(第2.1節),然後詳細說明評估中使用的具體配置(第2.2節)。最後,我們的設計選擇将在2.3節進行讨論并與現有技術進行比較。
During training, the input to our ConvNets is a fixed-size 224 × 224 RGB image. The only preprocessing we do is subtracting the mean RGB value, computed on the training set, from each pixel. The image is passed through a stack of convolutional (conv.) layers, where we use filters with a very small receptive field: 3 × 3 (which is the smallest size to capture the notion of left/right, up/down, center). In one of the configurations we also utilise 1 × 1 convolution filters, which can be seen as a linear transformation of the input channels (followed by non-linearity). The convolution stride is fixed to 1 pixel; the spatial padding of conv. layer input is such that the spatial resolution is preserved after convolution, i.e. the padding is 1 pixel for 3 × 3 conv. layers. Spatial pooling is carried out by five max-pooling layers, which follow some of the conv. layers (not all the conv. layers are followed by max-pooling). Max-pooling is performed over a 2 × 2 pixel window, with stride 2.
在訓練期間,我們的ConvNet的輸入是固定大小的224×224 RGB圖像。我們唯一的預處理是從每個像素中減去在訓練集上計算的RGB均值。圖像通過一堆卷積(conv.)層,我們使用感受野很小的濾波器:3×3(這是捕獲左/右,上/下,中心概念的最小尺寸)。在其中一種配置中,我們還使用了1×1卷積濾波器,可以看作輸入通道的線性變換(後面是非線性)。卷積步長固定為1個像素;卷積層輸入的空間填充要滿足卷積之後保留白間分辨率,即3×3卷積層的填充為1個像素。空間池化由五個最大池化層進行,這些層在一些卷積層之後(不是所有的卷積層之後都是最大池化)。在2×2像素視窗上進行最大池化,步長為2。
A stack of convolutional layers (which has a different depth in different architectures) is followed by three Fully-Connected (FC) layers: the first two have 4096 channels each, the third performs 1000-way ILSVRC classification and thus contains 1000 channels (one for each class). The final layer is the soft-max layer. The configuration of the fully connected layers is the same in all networks.
一堆卷積層(在不同架構中具有不同深度)之後是三個全連接配接(FC)層:前兩個每個都有4096個通道,第三個執行1000維ILSVRC分類,是以包含1000個通道(一個通道對應一個類别)。最後一層是soft-max層。所有網絡中全連接配接層的配置是相同的。
All hidden layers are equipped with the rectification (ReLU (Krizhevsky et al., 2012)) non-linearity. We note that none of our networks (except for one) contain Local Response Normalisation (LRN) normalisation (Krizhevsky et al., 2012): as will be shown in Sect. 4, such normalisation does not improve the performance on the ILSVRC dataset, but leads to increased memory consumption and computation time. Where applicable, the parameters for the LRN layer are those of (Krizhevsky et al., 2012).
所有隐藏層都配備了修正(ReLU(Krizhevsky等,2012))非線性。我們注意到,我們的網絡(除了一個)都不包含局部響應規範化(LRN)(Krizhevsky等,2012):将在第4節看到,這種規範化并不能提高在ILSVRC資料集上的性能,但增加了記憶體消耗和計算時間。在應用的地方,LRN層的參數是(Krizhevsky等,2012)的參數。
The ConvNet configurations, evaluated in this paper, are outlined in Table 1, one per column. In the following we will refer to the nets by their names (A–E). All configurations follow the generic design presented in Sect. 2.1, and differ only in the depth: from 11 weight layers in the network A (8 conv. and 3 FC layers) to 19 weight layers in the network E (16 conv. and 3 FC layers). The width of conv. layers (the number of channels) is rather small, starting from 64 in the first layer and then increasing by a factor of 2 after each max-pooling layer, until it reaches 512.
Table 1: ConvNet configurations (shown in columns). The depth of the configurations increases from the left (A) to the right (E), as more layers are added (the added layers are shown in bold). The convolutional layer parameters are denoted as “conv⟨receptive field size⟩-⟨number of channels⟩”. The ReLU activation function is not shown for brevity.
本文中評估的ConvNet配置在表1中列出,每列一個。接下來我們将按網站名稱(A-E)來提及網絡。所有配置都遵循2.1節提出的通用設計,并且僅是深度不同:從網絡A中的11個權重層(8個卷積層和3個FC層)到網絡E中的19個權重層(16個卷積層和3個FC層)。卷積層的寬度(通道數)相當小,從第一層中的64開始,然後在每個最大池化層之後增加2倍,直到達到512。
表1:ConvNet配置(以列顯示)。随着更多的層被添加,配置的深度從左(A)增加到右(E)(添加的層以粗體顯示)。卷積層參數表示為“conv⟨感受野大小⟩-通道數⟩”。為了簡潔起見,不顯示ReLU激活功能。
In Table 2 we report the number of parameters for each configuration. In spite of a large depth, the number of weights in our nets is not greater than the number of weights in a more shallow net with larger conv. layer widths and receptive fields (144M weights in (Sermanet et al., 2014)).
Table 2: Number of parameters (in millions).
在表2中,我們報告了每個配置的參數數量。盡管深度很大,我們的網絡中權重數量并不大于具有更大卷積層寬度和感受野的較淺網絡中的權重數量(144M的權重在(Sermanet等人,2014)中)。
表2:參數數量(百萬級别)
Our ConvNet configurations are quite different from the ones used in the top-performing entries of the ILSVRC-2012 (Krizhevsky et al., 2012) and ILSVRC-2013 competitions (Zeiler & Fergus, 2013; Sermanet et al., 2014). Rather than using relatively large receptive fields in the first conv. layers (e.g. 11 × 11 with stride 4 in (Krizhevsky et al., 2012), or 7 × 7 with stride 2 in (Zeiler & Fergus, 2013; Sermanet et al., 2014)), we use very small 3 × 3 receptive fields throughout the whole net, which are convolved with the input at every pixel (with stride 1). It is easy to see that a stack of two 3 × 3 conv. layers (without spatial pooling in between) has an effective receptive field of 5 × 5; three such layers have a 7 × 7 effective receptive field. So what have we gained by using, for instance, a stack of three 3 × 3 conv. layers instead of a single 7 × 7 layer? First, we incorporate three non-linear rectification layers instead of a single one, which makes the decision function more discriminative. Second, we decrease the number of parameters: assuming that both the input and the output of a three-layer 3 × 3 convolution stack has CC channels, the stack is parametrised by 3(32C2)=27C23(3^2C^2)=27C^2 weights; at the same time, a single 7 × 7 conv. layer would require 72C2=49C27^2C^2=49C^2 parameters, i.e. 81% more. This can be seen as imposing a regularisation on the 7 × 7 conv. filters, forcing them to have a decomposition through the 3 × 3 filters (with non-linearity injected in between).
我們的ConvNet配置與ILSVRC-2012(Krizhevsky等,2012)和ILSVRC-2013比賽(Zeiler&Fergus,2013;Sermanet等,2014)表現最佳的參賽送出中使用的ConvNet配置有很大不同。不是在第一卷積層中使用相對較大的感受野(例如,在(Krizhevsky等人,2012)中的11×11,步長為4,或在(Zeiler&Fergus,2013;Sermanet等,2014)中的7×7,步長為2),我們在整個網絡使用非常小的3×3感受野,與輸入的每個像素(步長為1)進行卷積。很容易看到兩個3×3卷積層堆疊(沒有空間池化)有5×5的有效感受野;三個這樣的層具有7×7的有效感受野。那麼我們獲得了什麼?例如通過使用三個3×3卷積層的堆疊來替換單個7×7層。首先,我們結合了三個非線性修正層,而不是單一的,這使得決策函數更具判别性。其次,我們減少參數的數量:假設三層3×3卷積堆疊的輸入和輸出有CC個通道,堆疊卷積層的參數為3(32C2)=27C23(3^2C^2)=27C^2個權重;同時,單個7×7卷積層将需要72C2=49C27^2C^2=49C^2個參數,即參數多81%。這可以看作是對7×7卷積濾波器進行正則化,迫使它們通過3×3濾波器(在它們之間注入非線性)進行分解。
The incorporation of 1 × 1 conv. layers (configuration C, Table 1) is a way to increase the non-linearity of the decision function without affecting the receptive fields of the conv. layers. Even though in our case the 1 × 1 convolution is essentially a linear projection onto the space of the same dimensionality (the number of input and output channels is the same), an additional non-linearity is introduced by the rectification function. It should be noted that 1 × 1 conv. layers have recently been utilised in the “Network in Network” architecture of Lin et al. (2014).
結合1×1卷積層(配置C,表1)是增加決策函數非線性而不影響卷積層感受野的一種方式。即使在我們的案例下,1×1卷積基本上是在相同次元空間上的線性投影(輸入和輸出通道的數量相同),由修正函數引入附加的非線性。應該注意的是1×1卷積層最近在Lin等人(2014)的“Network in Network”架構中已經得到了使用。
Small-size convolution filters have been previously used by Ciresan et al. (2011), but their nets are significantly less deep than ours, and they did not evaluate on the large-scale ILSVRC dataset. Goodfellow et al. (2014) applied deep ConvNets (11 weight layers) to the task of street number recognition, and showed that the increased depth led to better performance. GoogLeNet (Szegedy et al., 2014), a top-performing entry of the ILSVRC-2014 classification task, was developed independently of our work, but is similar in that it is based on very deep ConvNets(22 weight layers) and small convolution filters (apart from 3 × 3, they also use 1 × 1 and 5 × 5 convolutions). Their network topology is, however, more complex than ours, and the spatial resolution of the feature maps is reduced more aggressively in the first layers to decrease the amount of computation. As will be shown in Sect. 4.5, our model is outperforming that of Szegedy et al. (2014) in terms of the single-network classification accuracy.
Ciresan等人(2011)以前使用小尺寸的卷積濾波器,但是他們的網絡深度遠遠低于我們的網絡,他們并沒有在大規模的ILSVRC資料集上進行評估。Goodfellow等人(2014)在街道号識别任務中采用深層ConvNets(11個權重層),顯示出增加的深度導緻了更好的性能。GooLeNet(Szegedy等,2014),ILSVRC-2014分類任務的表現最好的項目,是獨立于我們工作之外的開發的,但是類似的是它是基于非常深的ConvNets(22個權重層)和小卷積濾波器(除了3×3,它們也使用了1×1和5×5卷積)。然而,它們的網絡拓撲結構比我們的更複雜,并且在第一層中特征圖的空間分辨率被更積極地減少,以減少計算量。正如将在第4.5節顯示的那樣,我們的模型在單網絡分類精度方面勝過Szegedy等人(2014)。
In the previous section we presented the details of our network configurations. In this section, we describe the details of classification ConvNet training and evaluation.
在上一節中,我們介紹了我們的網絡配置的細節。在本節中,我們将介紹分類ConvNet訓練和評估的細節。
The ConvNet training procedure generally follows Krizhevsky et al. (2012) (except for sampling the input crops from multi-scale training images, as explained later). Namely, the training is carried out by optimising the multinomial logistic regression objective using mini-batch gradient descent (based on back-propagation (LeCun et al., 1989)) with momentum. The batch size was set to 256, momentum to 0.9. The training was regularised by weight decay (the L2 penalty multiplier set to 5·10−45·10^{−4}) and dropout regularisation for the first two fully-connected layers (dropout ratio set to 0.5). The learning rate was initially set to 10−210^{−2}, and then decreased by a factor of 10 when the validation set accuracy stopped improving. In total, the learning rate was decreased 3 times, and the learning was stopped after 370K iterations (74 epochs). We conjecture that in spite of the larger number of parameters and the greater depth of our nets compared to (Krizhevsky et al., 2012), the nets required less epochs to converge due to (a) implicit regularisation imposed by greater depth and smaller conv. filter sizes; (b) pre-initialisation of certain layers.
ConvNet訓練過程通常遵循Krizhevsky等人(2012)(除了從多尺度訓練圖像中對輸入裁剪圖像進行采樣外,如下文所述)。也就是說,通過使用具有動量的小批量梯度下降(基于反向傳播(LeCun等人,1989))優化多項式邏輯回歸目标函數來進行訓練。批量大小設為256,動量為0.9。訓練通過權重衰減(L2懲罰乘子設定為5·10−45·10^{−4})進行正則化,前兩個全連接配接層執行丢棄正則化(丢棄率設定為0.5)。學習率初始設定為10−210^{−2},然後當驗證集準确率停止改善時,減少10倍。學習率總共降低3次,學習在37萬次疊代後停止(74個epochs)。我們推測,盡管與(Krizhevsky等,2012)相比我們的網絡參數更多,網絡的深度更大,但網絡需要更小的epoch就可以收斂,這是由于(a)由更大的深度和更小的卷積濾波器尺寸引起的隐式正則化,(b)某些層的預初始化。
The initialisation of the network weights is important, since bad initialisation can stall learning due to the instability of gradient in deep nets. To circumvent this problem, we began with training the configuration A (Table 1), shallow enough to be trained with random initialisation. Then, when training deeper architectures, we initialised the first four convolutional layers and the last three fully-connected layers with the layers of net A (the intermediate layers were initialised randomly). We did not decrease the learning rate for the pre-initialised layers, allowing them to change during learning. For random initialisation (where applicable), we sampled the weights from a normal distribution with the zero mean and 10−210^{−2} variance. The biases were initialised with zero. It is worth noting that after the paper submission we found that it is possible to initialise the weights without pre-training by using the random initialisation procedure of Glorot & Bengio (2010).
網絡權重的初始化是重要的,因為由于深度網絡中梯度的不穩定,不好的初始化可能會阻礙學習。為了規避這個問題,我們開始訓練配置A(表1),足夠淺以随機初始化進行訓練。然後,當訓練更深的架構時,我們用網絡A的層初始化前四個卷積層和最後三個全連接配接層(中間層被随機初始化)。我們沒有減少預初始化層的學習率,允許他們在學習過程中改變。對于随機初始化(如果應用),我們從均值為0和方差為10−210^{−2}的正态分布中采樣權重。偏置初始化為零。值得注意的是,在送出論文之後,我們發現可以通過使用Glorot&Bengio(2010)的随機初始化程式來初始化權重而不進行預訓練。
To obtain the fixed-size 224×224 ConvNet input images, they were randomly cropped from rescaled training images (one crop per image per SGD iteration). To further augment the training set, the crops underwent random horizontal flipping and random RGB colour shift (Krizhevsky et al., 2012). Training image rescaling is explained below.
為了獲得固定大小的224×224 ConvNet輸入圖像,它們從歸一化的訓練圖像中被随機裁剪(每個圖像每次SGD疊代進行一次裁剪)。為了進一步增強訓練集,裁剪圖像經過了随機水準翻轉和随機RGB顔色偏移(Krizhevsky等,2012)。下面解釋訓練圖像歸一化。
Training image size. Let S be the smallest side of an isotropically-rescaled training image, from which the ConvNet input is cropped (we also refer to S as the training scale). While the crop size is fixed to 224 × 224, in principle S can take on any value not less than 224: for S=224S = 224 the crop will capture whole-image statistics, completely spanning the smallest side of a training image; for S≫224S ≫ 224 the crop will correspond to a small part of the image, containing a small object or an object part.
訓練圖像大小。令S是等軸歸一化的訓練圖像的最小邊,ConvNet輸入從S中裁剪(我們也将S稱為訓練尺度)。雖然裁剪尺寸固定為224×224,但原則上S可以是不小于224的任何值:對于S=224S=224,裁剪圖像将捕獲整個圖像的統計資料,完全擴充訓練圖像的最小邊;對于S»224S»224,裁剪圖像将對應于圖像的一小部分,包含小對象或對象的一部分。
We consider two approaches for setting the training scale S. The first is to fix S, which corresponds to single-scale training (note that image content within the sampled crops can still represent multi-scale image statistics). In our experiments, we evaluated models trained at two fixed scales: S=256S = 256 (which has been widely used in the prior art (Krizhevsky et al., 2012; Zeiler & Fergus, 2013; Sermanet et al., 2014)) and S=384S = 384. Given a ConvNet configuration, we first trained the network using S=256S = 256. To speed-up training of the S=384S = 384 network, it was initialised with the weights pre-trained with S = 256, and we used a smaller initial learning rate of 10−310^{−3}.
我們考慮兩種方法來設定訓練尺度S。第一種是修正對應單尺度訓練的S(注意,采樣裁剪圖像中的圖像内容仍然可以表示多尺度圖像統計)。在我們的實驗中,我們評估了以兩個固定尺度訓練的模型:S=256S = 256(已經在現有技術中廣泛使用(Krizhevsky等人,2012;Zeiler&Fergus,2013;Sermanet等,2014))和S=384S = 384。給定ConvNet配置,我們首先使用S=256S=256來訓練網絡。為了加速S=384S = 384網絡的訓練,用S=256S = 256預訓練的權重來進行初始化,我們使用較小的初始學習率10−310^{−3}。
The second approach to setting S is multi-scale training, where each training image is individually rescaled by randomly sampling S from a certain range [Smin,Smax][S_{min},S_{max}] (we used Smin=256S_{min} = 256 and Smax=512S_{max} = 512). Since objects in images can be of different size, it is beneficial to take this into account during training. This can also be seen as training set augmentation by scale jittering, where a single model is trained to recognise objects over a wide range of scales. For speed reasons, we trained multi-scale models by fine-tuning all layers of a single-scale model with the same configuration, pre-trained with fixed S=384S = 384.
設定S的第二種方法是多尺度訓練,其中每個訓練圖像通過從一定範圍[Smin,Smax][S_{min},S_{max}](我們使用Smin=256S_{min} = 256和Smax=512S_{max} = 512)随機采樣S來單獨進行歸一化。由于圖像中的目标可能具有不同的大小,是以在訓練期間考慮到這一點是有益的。這也可以看作是通過尺度抖動進行訓練集增強,其中單個模型被訓練在一定尺度範圍内識别對象。為了速度的原因,我們通過對具有相同配置的單尺度模型的所有層進行微調,訓練了多尺度模型,并用固定的S=384S = 384進行預訓練。
At test time, given a trained ConvNet and an input image, it is classified in the following way. First, it is isotropically rescaled to a pre-defined smallest image side, denoted as Q (we also refer to it as the test scale). We note that Q is not necessarily equal to the training scale S (as we will show in Sect. 4, using several values of Q for each S leads to improved performance). Then, the network is applied densely over the rescaled test image in a way similar to (Sermanet et al., 2014). Namely, the fully-connected layers are first converted to convolutional layers (the first FC layer to a 7 × 7 conv. layer, the last two FC layers to 1 × 1 conv. layers). The resulting fully-convolutional net is then applied to the whole (uncropped) image. The result is a class score map with the number of channels equal to the number of classes, and a variable spatial resolution, dependent on the input image size. Finally, to obtain a fixed-size vector of class scores for the image, the class score map is spatially averaged (sum-pooled). We also augment the test set by horizontal flipping of the images; the soft-max class posteriors of the original and flipped images are averaged to obtain the final scores for the image.
在測試時,給出訓練的ConvNet和輸入圖像,它按以下方式分類。首先,将其等軸地歸一化到預定義的最小圖像邊,表示為Q(我們也将其稱為測試尺度)。我們注意到,Q不一定等于訓練尺度S(正如我們在第4節中所示,每個S使用Q的幾個值會導緻性能改進)。然後,網絡以類似于(Sermanet等人,2014)的方式密集地應用于歸一化的測試圖像上。即,全連接配接層首先被轉換成卷積層(第一FC層轉換到7×7卷積層,最後兩個FC層轉換到1×1卷積層)。然後将所得到的全卷積網絡應用于整個(未裁剪)圖像上。結果是類得分圖的通道數等于類别的數量,以及取決于輸入圖像大小的可變空間分辨率。最後,為了獲得圖像的類别分數的固定大小的向量,類得分圖在空間上平均(和池化)。我們還通過水準翻轉圖像來增強測試集;将原始圖像和翻轉圖像的soft-max類後驗進行平均,以獲得圖像的最終分數。
Since the fully-convolutional network is applied over the whole image, there is no need to sample multiple crops at test time (Krizhevsky et al., 2012), which is less efficient as it requires network re-computation for each crop. At the same time, using a large set of crops, as done by Szegedy et al. (2014), can lead to improved accuracy, as it results in a finer sampling of the input image compared to the fully-convolutional net. Also, multi-crop evaluation is complementary to dense evaluation due to different convolution boundary conditions: when applying a ConvNet to a crop, the convolved feature maps are padded with zeros, while in the case of dense evaluation the padding for the same crop naturally comes from the neighbouring parts of an image (due to both the convolutions and spatial pooling), which substantially increases the overall network receptive field, so more context is captured. While we believe that in practice the increased computation time of multiple crops does not justify the potential gains in accuracy, for reference we also evaluate our networks using 50 crops per scale (5 × 5 regular grid with 2 flips), for a total of 150 crops over 3 scales, which is comparable to 144 crops over 4 scales used by Szegedy et al. (2014).
由于全卷積網絡被應用在整個圖像上,是以不需要在測試時對采樣多個裁剪圖像(Krizhevsky等,2012),因為它需要網絡重新計算每個裁剪圖像,這樣效率較低。同時,如Szegedy等人(2014)所做的那樣,使用大量的裁剪圖像可以提高準确度,因為與全卷積網絡相比,它使輸入圖像的采樣更精細。此外,由于不同的卷積邊界條件,多裁剪圖像評估是密集評估的補充:當将ConvNet應用于裁剪圖像時,卷積特征圖用零填充,而在密集評估的情況下,相同裁剪圖像的填充自然會來自于圖像的相鄰部分(由于卷積和空間池化),這大大增加了整個網絡的感受野,是以捕獲了更多的上下文。雖然我們認為在實踐中,多裁剪圖像的計算時間增加并不足以證明準确性的潛在收益,但作為參考,我們還在每個尺度使用50個裁剪圖像(5×5規則網格,2次翻轉)評估了我們的網絡,在3個尺度上總共150個裁剪圖像,與Szegedy等人(2014)在4個尺度上使用的144個裁剪圖像。
Our implementation is derived from the publicly available C++ Caffe toolbox (Jia, 2013) (branched out in December 2013), but contains a number of significant modifications, allowing us to perform training and evaluation on multiple GPUs installed in a single system, as well as train and evaluate on full-size (uncropped) images at multiple scales (as described above). Multi-GPU training exploits data parallelism, and is carried out by splitting each batch of training images into several GPU batches, processed in parallel on each GPU. After the GPU batch gradients are computed, they are averaged to obtain the gradient of the full batch. Gradient computation is synchronous across the GPUs, so the result is exactly the same as when training on a single GPU.
我們的實作來源于公開的C++ Caffe工具箱(Jia,2013)(2013年12月推出),但包含了一些重大的修改,使我們能夠對安裝在單個系統中的多個GPU進行訓練和評估,也能訓練和評估在多個尺度上(如上所述)的全尺寸(未裁剪)圖像。多GPU訓練利用資料并行性,通過将每批訓練圖像分成幾個GPU批次,每個GPU并行處理。在計算GPU批次梯度之後,将其平均以獲得完整批次的梯度。梯度計算在GPU之間是同步的,是以結果與在單個GPU上訓練完全一樣。
While more sophisticated methods of speeding up ConvNet training have been recently proposed (Krizhevsky, 2014), which employ model and data parallelism for different layers of the net, we have found that our conceptually much simpler scheme already provides a speedup of 3.75 times on an off-the-shelf 4-GPU system, as compared to using a single GPU. On a system equipped with four NVIDIA Titan Black GPUs, training a single net took 2–3 weeks depending on the architecture.
最近提出了更加複雜的加速ConvNet訓練的方法(Krizhevsky,2014),它們對網絡的不同層之間采用模型和資料并行,我們發現我們概念上更簡單的方案與使用單個GPU相比,在現有的4-GPU系統上已經提供了3.75倍的加速。在配備四個NVIDIA Titan Black GPU的系統上,根據架構訓練單個網絡需要2-3周時間。
Dataset. In this section, we present the image classification results achieved by the described ConvNet architectures on the ILSVRC-2012 dataset (which was used for ILSVRC 2012–2014 challenges). The dataset includes images of 1000 classes, and is split into three sets: training (1.3M images), validation (50K images), and testing (100K images with held-out class labels). The classification performance is evaluated using two measures: the top-1 and top-5 error. The former is a multi-class classification error, i.e. the proportion of incorrectly classified images; the latter is the main evaluation criterion used in ILSVRC, and is computed as the proportion of images such that the ground-truth category is outside the top-5 predicted categories.
資料集。在本節中,我們介紹了描述的ConvNet架構(用于ILSVRC 2012-2014挑戰)在ILSVRC-2012資料集上實作的圖像分類結果。資料集包括1000個類别的圖像,并分為三組:訓練(130萬張圖像),驗證(5萬張圖像)和測試(留有類标簽的10萬張圖像)。使用兩個措施評估分類性能:top-1和top-5錯誤率。前者是多類分類誤差,即不正确分類圖像的比例;後者是ILSVRC中使用的主要評估标準,并且計算為圖像真實類别在前5個預測類别之外的圖像比例。
For the majority of experiments, we used the validation set as the test set. Certain experiments were also carried out on the test set and submitted to the official ILSVRC server as a “VGG” team entry to the ILSVRC-2014 competition (Russakovsky et al., 2014).
對于大多數實驗,我們使用驗證集作為測試集。在測試集上也進行了一些實驗,并将其作為ILSVRC-2014競賽(Russakovsky等,2014)“VGG”小組的輸入送出到了官方的ILSVRC伺服器。
We begin with evaluating the performance of individual ConvNet models at a single scale with the layer configurations described in Sect. 2.2. The test image size was set as follows: Q=SQ = S for fixed S, and Q=0.5(S_min+S_max)Q = 0.5(S\_{min} + S\_{max}) for jittered S∈[S_min,S_max]S ∈ [S\_{min}, S\_{max}]. The results of are shown in Table 3.
Table 3: ConvNet performance at a single test scale.
我們首先評估單個ConvNet模型在單尺度上的性能,其層結構配置如2.2節中描述。測試圖像大小設定如下:對于固定S的Q=SQ = S,對于抖動S∈[S_min,S_max]S ∈ [S\_{min}, S\_{max}],Q=0.5(S_min+S_max)Q = 0.5(S\_{min} + S\_{max})。結果如表3所示。
表3:在單測試尺度的ConvNet性能
First, we note that using local response normalisation (A-LRN network) does not improve on the model A without any normalisation layers. We thus do not employ normalisation in the deeper architectures (B–E).
首先,我們注意到,使用局部響應歸一化(A-LRN網絡)在沒有任何歸一化層的情況下,對模型A沒有改善。是以,我們在較深的架構(B-E)中不采用歸一化。
Second, we observe that the classification error decreases with the increased ConvNet depth: from 11 layers in A to 19 layers in E. Notably, in spite of the same depth, the configuration C (which contains three 1 × 1 conv. layers), performs worse than the configuration D, which uses 3 × 3 conv. layers throughout the network. This indicates that while the additional non-linearity does help (C is better than B), it is also important to capture spatial context by using conv. filters with non-trivial receptive fields (D is better than C). The error rate of our architecture saturates when the depth reaches 19 layers, but even deeper models might be beneficial for larger datasets. We also compared the net B with a shallow net with five 5 × 5 conv. layers, which was derived from B by replacing each pair of 3 × 3 conv. layers with a single 5 × 5 conv. layer (which has the same receptive field as explained in Sect. 2.3). The top-1 error of the shallow net was measured to be 7% higher than that of B (on a center crop), which confirms that a deep net with small filters outperforms a shallow net with larger filters.
第二,我們觀察到分類誤差随着ConvNet深度的增加而減小:從A中的11層到E中的19層。值得注意的是,盡管深度相同,配置C(包含三個1×1卷積層)比在整個網絡層中使用3×3卷積的配置D更差。這表明,雖然額外的非線性确實有幫助(C優于B),但也可以通過使用具有非平凡感受野(D比C好)的卷積濾波器來捕獲空間上下文。當深度達到19層時,我們架構的錯誤率飽和,但更深的模型可能有益于較大的資料集。我們還将網絡B與具有5×5卷積層的淺層網絡進行了比較,淺層網絡可以通過用單個5×5卷積層替換B中每對3×3卷積層得到(其具有相同的感受野如第2.3節所述)。測量的淺層網絡top-1錯誤率比網絡B的top-1錯誤率(在中心裁剪圖像上)高7%,這證明了具有小濾波器的深層網絡優于具有較大濾波器的淺層網絡。
Finally, scale jittering at training time (S∈[256;512]S ∈ [256; 512]) leads to significantly better results than training on images with fixed smallest side (S=256S = 256 or S=384S = 384), even though a single scale is used at test time. This confirms that training set augmentation by scale jittering is indeed helpful for capturing multi-scale image statistics.
最後,訓練時的尺度抖動(S∈[256;512]S∈[256; 512])得到了與固定最小邊(S=256S = 256或S=384S = 384)的圖像訓練相比更好的結果,即使在測試時使用單尺度。這證明了通過尺度抖動進行的訓練集增強确實有助于捕獲多尺度圖像統計。
Having evaluated the ConvNet models at a single scale, we now assess the effect of scale jittering at test time. It consists of running a model over several rescaled versions of a test image (corresponding to different values of Q), followed by averaging the resulting class posteriors. Considering that a large discrepancy between training and testing scales leads to a drop in performance, the models trained with fixed S were evaluated over three test image sizes, close to the training one: Q=S−32,S,S+32Q = {S − 32, S, S + 32}. At the same time, scale jittering at training time allows the network to be applied to a wider range of scales at test time, so the model trained with variable S∈[S_min;S_max]S ∈ [S\_{min}; S\_{max}] was evaluated over a larger range of sizes Q = {S\_{min}, 0.5(S\_{min} + S\_{max}), S\_{max}Q = {S\_{min}, 0.5(S\_{min} + S\_{max}), S\_{max}.
在單尺度上評估ConvNet模型後,我們現在評估測試時尺度抖動的影響。它包括在一張測試圖像的幾個歸一化版本上運作模型(對應于不同的Q值),然後對所得到的類别後驗進行平均。考慮到訓練和測試尺度之間的巨大差異會導緻性能下降,用固定S訓練的模型在三個測試圖像尺度上進行了評估,接近于訓練一次:Q=S−32,S,S+32Q = {S − 32, S, S + 32}。同時,訓練時的尺度抖動允許網絡在測試時應用于更廣的尺度範圍,是以用變量S∈[S_min;S_max]S ∈ [S\_{min}; S\_{max}]訓練的模型在更大的尺寸範圍Q = {S\_{min}, 0.5(S\_{min} + S\_{max}), S\_{max}Q = {S\_{min}, 0.5(S\_{min} + S\_{max}), S\_{max}上進行評估。
The results, presented in Table 4, indicate that scale jittering at test time leads to better performance (as compared to evaluating the same model at a single scale, shown in Table 3). As before, the deepest configurations (D and E) perform the best, and scale jittering is better than training with a fixed smallest side S. Our best single-network performance on the validation set is <code>24.8%/7.5% top-1/top-5</code> error (highlighted in bold in Table 4). On the test set, the configuration E achieves 7.3% top-5 error.
Table 4: ConvNet performance at multiple test scales.
表4中給出的結果表明,測試時的尺度抖動導緻了更好的性能(與在單一尺度上相同模型的評估相比,如表3所示)。如前所述,最深的配置(D和E)執行最佳,并且尺度抖動優于使用固定最小邊S的訓練。我們在驗證集上的最佳單網絡性能為<code>24.8%/7.5% top-1/top-5</code>的錯誤率(在表4中用粗體突出顯示)。在測試集上,配置E實作了<code>7.3% top-5</code>的錯誤率。
表4:在多個測試尺度上的ConvNet性能
In Table 5 we compare dense ConvNet evaluation with mult-crop evaluation (see Sect. 3.2 for details). We also assess the complementarity of the two evaluation techniques by averaging their soft-max outputs. As can be seen, using multiple crops performs slightly better than dense evaluation, and the two approaches are indeed complementary, as their combination outperforms each of them. As noted above, we hypothesize that this is due to a different treatment of convolution boundary conditions.
Table 5: ConvNet evaluation techniques comparison. In all experiments the training scale S was sampled from [256; 512], and three test scales Q were considered: {256, 384, 512}.
在表5中,我們将稠密ConvNet評估與多裁剪圖像評估進行比較(細節參見第3.2節)。我們還通過平均其soft-max輸出來評估兩種評估技術的互補性。可以看出,使用多裁剪圖像表現比密集評估略好,而且這兩種方法确實是互補的,因為它們的組合優于其中的每一種。如上所述,我們假設這是由于卷積邊界條件的不同處理。
表5:ConvNet評估技術比較。在所有的實驗中訓練尺度S從[256;512]采樣,三個測試适度Q考慮:{256, 384, 512}。
Up until now, we evaluated the performance of individual ConvNet models. In this part of the experiments, we combine the outputs of several models by averaging their soft-max class posteriors. This improves the performance due to complementarity of the models, and was used in the top ILSVRC submissions in 2012 (Krizhevsky et al., 2012) and 2013 (Zeiler & Fergus, 2013; Sermanet et al., 2014).
到目前為止,我們評估了ConvNet模型的性能。在這部分實驗中,我們通過對soft-max類别後驗進行平均,結合了幾種模型的輸出。由于模型的互補性,這提高了性能,并且在了2012年(Krizhevsky等,2012)和2013年(Zeiler&Fergus,2013;Sermanet等,2014)ILSVRC的頂級送出中使用。
The results are shown in Table 6. By the time of ILSVRC submission we had only trained the single-scale networks, as well as a multi-scale model D (by fine-tuning only the fully-connected layers rather than all layers). The resulting ensemble of 7 networks has 7.3% ILSVRC test error. After the submission, we considered an ensemble of only two best-performing multi-scale models (configurations D and E), which reduced the test error to 7.0% using dense evaluation and 6.8% using combined dense and multi-crop evaluation. For reference, our best-performing single model achieves 7.1% error (model E, Table 5).
Table 6: Multiple ConvNet fusion results.
結果如表6所示。在ILSVRC送出的時候,我們隻訓練了單規模網絡,以及一個多尺度模型D(僅在全連接配接層進行微調而不是所有層)。由此産生的7個網絡組合具有7.3%的ILSVRC測試誤差。在送出之後,我們考慮了隻有兩個表現最好的多尺度模型(配置D和E)的組合,它使用密集評估将測試誤差降低到7.0%,使用密集評估和多裁剪圖像評估将測試誤差降低到6.8%。作為參考,我們表現最佳的單模型達到7.1%的誤差(模型E,表5)。
表6:多個卷積網絡融合結果
Finally, we compare our results with the state of the art in Table 7. In the classification task of ILSVRC-2014 challenge (Russakovsky et al., 2014), our “VGG” team secured the 2nd place with
7.3% test error using an ensemble of 7 models. After the submission, we decreased the error rate to 6.8% using an ensemble of 2 models.
Table 7: Comparison with the state of the art in ILSVRC classification. Our method is denoted as “VGG”. Only the results obtained without outside training data are reported.
最後,我們在表7中與最新技術比較我們的結果。在ILSVRC-2014挑戰的分類任務(Russakovsky等,2014)中,我們的“VGG”團隊獲得了第二名,
使用7個模型的組合取得了7.3%測試誤差。送出後,我們使用2個模型的組合将錯誤率降低到6.8%。
表7:在ILSVRC分類中與最新技術比較。我們的方法表示為“VGG”。報告的結果沒有使用外部資料。
As can be seen from Table 7, our very deep ConvNets significantly outperform the previous generation of models, which achieved the best results in the ILSVRC-2012 and ILSVRC-2013 competitions. Our result is also competitive with respect to the classification task winner (GoogLeNet with 6.7% error) and substantially outperforms the ILSVRC-2013 winning submission Clarifai, which achieved 11.2% with outside training data and 11.7% without it. This is remarkable, considering that our best result is achieved by combining just two models —— significantly less than used in most ILSVRC submissions. In terms of the single-net performance, our architecture achieves the best result (7.0% test error), outperforming a single GoogLeNet by 0.9%. Notably, we did not depart from the classical ConvNet architecture of LeCun et al. (1989), but improved it by substantially increasing the depth.
從表7可以看出,我們非常深的ConvNets顯著優于前一代模型,在ILSVRC-2012和ILSVRC-2013競賽中取得了最好的結果。我們的結果對于分類任務獲勝者(GoogLeNet具有6.7%的錯誤率)也具有競争力,并且大大優于ILSVRC-2013獲勝者Clarifai的送出,其使用外部訓練資料取得了11.2%的錯誤率,沒有外部資料則為11.7%。這是非常顯著的,考慮到我們最好的結果是僅通過組合兩個模型實作的——明顯少于大多數ILSVRC送出。在單網絡性能方面,我們的架構取得了最好節果(7.0%測試誤差),超過單個GoogLeNet 0.9%。值得注意的是,我們并沒有偏離LeCun(1989)等人經典的ConvNet架構,但通過大幅增加深度改善了它。
In this work we evaluated very deep convolutional networks (up to 19 weight layers) for large-scale image classification. It was demonstrated that the representation depth is beneficial for the classification accuracy, and that state-of-the-art performance on the ImageNet challenge dataset can be achieved using a conventional ConvNet architecture (LeCun et al., 1989; Krizhevsky et al., 2012) with substantially increased depth. In the appendix, we also show that our models generalise well to a wide range of tasks and datasets, matching or outperforming more complex recognition pipelines built around less deep image representations. Our results yet again confirm the importance of depth in visual representations.
在這項工作中,我們評估了非常深的卷積網絡(最多19個權重層)用于大規模圖像分類。已經證明,表示深度有利于分類精度,并且深度大大增加的傳統ConvNet架構(LeCun等,1989;Krizhevsky等,2012)可以實作ImageNet挑戰資料集上的最佳性能。在附錄中,我們還顯示了我們的模型很好地泛化到各種各樣的任務和資料集上,可以匹敵或超越更複雜的識别流程,其建構圍繞不深的圖像表示。我們的結果再次證明了深度在視覺表示中的重要性。
This work was supported by ERC grant VisRec no. 228180. We gratefully acknowledge the support of NVIDIA Corporation with the donation of the GPUs used for this research.
這項工作得到ERC授權的VisRec編号228180的支援.我們非常感謝NVIDIA公司捐贈GPU為此研究使用。
Bell, S., Upchurch, P., Snavely, N., and Bala, K. Material recognition in the wild with the materials in context database. CoRR, abs/1412.0623, 2014.
Chatfield, K., Simonyan, K., Vedaldi, A., and Zisserman, A. Return of the devil in the details: Delving deep into convolutional nets. In Proc. BMVC., 2014.
Cimpoi, M., Maji, S., and Vedaldi, A. Deep convolutional filter banks for texture recognition and segmentation. CoRR, abs/1411.6836, 2014.
Ciresan, D. C., Meier, U., Masci, J., Gambardella, L. M., and Schmidhuber, J. Flexible, high performance convolutional neural networks for image classification. In IJCAI, pp. 1237–1242, 2011.
Dean, J., Corrado, G., Monga, R., Chen, K., Devin, M., Mao, M., Ranzato, M., Senior, A., Tucker, P., Yang, K., Le, Q. V., and Ng, A. Y. Large scale distributed deep networks. In NIPS, pp. 1232–1240, 2012.
Deng, J., Dong, W., Socher, R., Li, L.-J., Li, K., and Fei-Fei, L. Imagenet: A large-scale hierarchical image database. In Proc. CVPR, 2009.
Donahue, J., Jia, Y., Vinyals, O., Hoffman, J., Zhang, N., Tzeng, E., and Darrell, T. Decaf: A deep convolutional activation feature for generic visual recognition. CoRR, abs/1310.1531, 2013.
Everingham, M., Eslami, S. M. A., Van Gool, L., Williams, C., Winn, J., and Zisserman, A. The Pascal visual object classes challenge: A retrospective. IJCV, 111(1):98–136, 2015.
Fei-Fei, L., Fergus, R., and Perona, P. Learning generative visual models from few training examples: An incremental bayesian approach tested on 101 object categories. In IEEE CVPR Workshop of Generative Model Based Vision, 2004.
Girshick, R. B., Donahue, J., Darrell, T., and Malik, J. Rich feature hierarchies for accurate object detection and semantic segmentation. CoRR, abs/1311.2524v5, 2014. Published in Proc. CVPR, 2014.
Gkioxari, G., Girshick, R., and Malik, J. Actions and attributes from wholes and parts. CoRR, abs/1412.2604, 2014.
Glorot, X. and Bengio, Y. Understanding the difficulty of training deep feedforward neural networks. In Proc. AISTATS, volume 9, pp. 249–256, 2010.
Goodfellow, I. J., Bulatov, Y., Ibarz, J., Arnoud, S., and Shet, V. Multi-digit number recognition from street view imagery using deep convolutional neural networks. In Proc. ICLR, 2014.
Griffin, G., Holub, A., and Perona, P. Caltech-256 object category dataset. Technical Report 7694, California Institute of Technology, 2007.
He, K., Zhang, X., Ren, S., and Sun, J. Spatial pyramid pooling in deep convolutional networks for visual recognition. CoRR, abs/1406.4729v2, 2014.
Hoai, M. Regularized max pooling for image categorization. In Proc. BMVC., 2014.
Howard, A. G. Some improvements on deep convolutional neural network based image classification. In Proc. ICLR, 2014.
Jia, Y. Caffe: An open source convolutional architecture for fast feature embedding. http://caffe.berkeleyvision.org/, 2013.
Karpathy, A. and Fei-Fei, L. Deep visual-semantic alignments for generating image descriptions. CoRR, abs/1412.2306, 2014.
Kiros, R., Salakhutdinov, R., and Zemel, R. S. Unifying visual-semantic embeddings with multimodal neural language models. CoRR, abs/1411.2539, 2014.
Krizhevsky, A. One weird trick for parallelizing convolutional neural networks. CoRR, abs/1404.5997, 2014.
Krizhevsky, A., Sutskever, I., and Hinton, G. E. ImageNet classification with deep convolutional neural networks. In NIPS, pp. 1106–1114, 2012.
LeCun, Y., Boser, B., Denker, J. S., Henderson, D., Howard, R. E., Hubbard, W., and Jackel, L. D. Backpropagation applied to handwritten zip code recognition. Neural Computation, 1(4):541–551, 1989.
Lin, M., Chen, Q., and Yan, S. Network in network. In Proc. ICLR, 2014.
Long, J., Shelhamer, E., and Darrell, T. Fully convolutional networks for semantic segmentation. CoRR, abs/1411.4038, 2014.
Oquab, M., Bottou, L., Laptev, I., and Sivic, J. Learning and Transferring Mid-Level Image Representations using Convolutional Neural Networks. In Proc. CVPR, 2014.
Perronnin, F., Sa ́nchez, J., and Mensink, T. Improving the Fisher kernel for large-scale image classification. In Proc. ECCV, 2010.
Razavian, A., Azizpour, H., Sullivan, J., and Carlsson, S. CNN Features off-the-shelf: an Astounding Baseline for Recognition. CoRR, abs/1403.6382, 2014.
Russakovsky, O., Deng, J., Su, H., Krause, J., Satheesh, S., Ma, S., Huang, Z., Karpathy, A., Khosla, A., Bernstein, M., Berg, A. C., and Fei-Fei, L. ImageNet large scale visual recognition challenge. CoRR, abs/1409.0575, 2014.
Sermanet, P., Eigen, D., Zhang, X., Mathieu, M., Fergus, R., and LeCun, Y. OverFeat: Integrated Recognition, Localization and Detection using Convolutional Networks. In Proc. ICLR, 2014.
Simonyan, K. and Zisserman, A. Two-stream convolutional networks for action recognition in videos. CoRR, abs/1406.2199, 2014. Published in Proc. NIPS, 2014.
Szegedy, C., Liu, W., Jia, Y., Sermanet, P., Reed, S., Anguelov, D., Erhan, D., Vanhoucke, V., and Rabinovich, A. Going deeper with convolutions. CoRR, abs/1409.4842, 2014.
Wei, Y., Xia, W., Huang, J., Ni, B., Dong, J., Zhao, Y., and Yan, S. CNN: Single-label to multi-label. CoRR, abs/1406.5726, 2014.
Zeiler, M. D. and Fergus, R. Visualizing and understanding convolutional networks. CoRR, abs/1311.2901, 2013. Published in Proc. ECCV, 2014.