【feature extractor 系列文章2】ZFnet 論文閱讀Visulaizing and Understanding Convolutional Networks

AlexNet比其他算法結果好很多,但是爲什麼會好這個問題卻並沒有回答,而本篇論文就試圖解釋這個原因。在理解了原因之後,進而提出一個新的模型去進一步提高模型的能力。

首先,這篇論文開啓了可視化的先河。使用到了兩個方法:
1)多層反捲積網絡,multi-layered deconvolutional network (deconvet)
2)對輸入圖片進行遮擋,然後看分類器對遮擋的敏感程度,進而看出哪個部分對分類的結果有重要影響,perform a sensitivity analysis of the classifier output by occluding portions of the input image, revealing which parts of the scene are important for lassification.

1)關於反捲積,我們可以認爲就是正常卷積的相反形式。這個反捲積需要滿足一個必要條件,那就是連接關係不變,可以參考之前的博客:https://blog.csdn.net/qq_27261889/article/details/86304061。
也就是說,我們可以通過反捲積把中間層的特徵圖反捲積到輸入上,換句話來說就是,卷積是建立從輸入到輸出的關係,給一個輸入就有一個輸出。而反捲積就是建立輸出和輸入的關係,給一個原始的輸出,我們可以間接得到一個輸入

關於這個方法,可以先不做了解,先了解結論或許更加重要

1)特徵的可視化
爲了明白特徵的作用,我們先了解一下filter的作用。我們知道神經網絡有三個作用,分別是分類,迴歸,和作爲filters(濾波器)。我這裏主要講作爲filter的作用。有兩個例子,第一個例子看下圖,我們說w是濾波器,對於不同的輸入,濾波器有不同的響應,比如我們輸入input 1 會得到比input 2更大的相應,因爲input 1和w更接近。
在這裏插入圖片描述
我們接着來看卷積的第一層(來自論文),我們看到第一層主要就是一些線條,這樣卷積就會對那些特殊的線條產生反應。
在這裏插入圖片描述
比如下圖,我們拿四個不同的濾波器去對字母A進行卷積,就會對A的不同地方有不同的敏感,響應也就不同。這就是卷積作爲濾波器的作用。
在這裏插入圖片描述
而隨着卷積的深度加深,不同的濾波器效果會重疊,線條可能就組成一個texture,進而組成一個object。
這樣的過程就是特徵的進化。但是我們要知道,高層特徵是比較難以學習的
,注意到這篇文章是在Batch Normalization 之前。

未完待續

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章