使用更小卷積核的作用
使用更小的卷積核是當前在保證網絡精度的情況下,減少參數的趨勢之一,在VGG16中,使用了3個3*3卷積核來代替7*7卷積核,使用了2個3*3卷積核來代替5*5卷積核,這樣做的主要目的是在保證具有相同感知野的條件下,提升了網絡的深度,在一定程度上提升了神經網絡的效果。
以下簡單地說明一下小卷積(3*3)對於5×5網絡感知野相同的替代性。

關於3個3×3卷積核對於7× 7 卷積的替代性思考方式同上。
接下來說明以下減少參數的作用。
對於兩個3*3卷積核,所用的參數總量為2*(3*3)*channels, 對於5*5卷積核為5*5*channels, 因此可以顯著地減少參數的數量。
下面是7*7的用三個3*3卷積核替代的情況 
問題:7*7的卷積核,不是只需要一次加權求和就成了1*1的輸出了么。3*3的卷積核,先過濾成5*5,再用3*3卷積核就成了3*3,再一次,就成了1*1。
3*3的卷積核只有9個參數,卷積3次,也就27個參數。而7*7的卷積核是49個參數,我承認參數變少了。但在加權求和的過程中,顯然后者運算步驟更多。
參數少了,運算步驟卻多了,我的疑問就在這。
假設輸入的圖片大小為100*100*3,卷積操作不改變大小(padding=same)。先看用128個7*7*3的核進行卷積操作,需要100*100*7*7*3*128次乘法操作然后我們用3層3*3卷積代替上面的7*7卷積,每層仍取128個核,需要100*100*3*3*3*128*3次乘法操作,約掉相同部分,分別剩下7*7=49和3*3*3=27.顯然,用三層3*3代替一層7*7可以減少近一半的計算量。
