打開神經網絡的黑箱子

卷積神經網絡

每個卷積核提取不同的特徵。每個卷積覈對輸入進行卷積,生成一個feature map,這個feature map即體現了該卷積核從輸入中提取的特徵,不同的feature map顯示了圖像中不同的特徵。

  1. 淺層卷積核提取:邊緣、顏色、斑塊等底層像素特徵;
  2. 中層卷積核提取:條紋、紋路、形狀等中層紋理特徵;
  3. 高層卷積核提取:眼睛、輪胎、文字等高層語義特徵。

最後分類輸出層輸出最抽象的分類結果。

上圖就是一個淺層卷積核提取出來的特徵,我們可以看到,有的卷積核是提取形狀的,有的是提取顏色的。它就是一種類似gabor濾波器的卷積特徵。

上圖是中層和深層卷積核提取出來的特徵,在中層卷積核提取的是較大塊的顏色,紋理;在深沉卷積核提取出來的特徵可能就有人類或者一些具象化的東西。

CAM可解釋性

上圖中,輸入的原始圖像經過層層卷積,到最後一層的時候,會有512個卷積核得到512個通道,即提取了512個深層特徵,經過GAP(全局平均池化)將每一個通道特徵算出一個平均數,再通過FC(全連接層)層會得到每一個特徵值的權重(係數)——\(W_1、W_2、W_3、...、W_n\),每一個類別都可以得到一個分數值(score),它是通過

\(score=W_1*藍色特徵值+W_2*紅色特徵值+...+W_n*綠色特徵值\)

得到的,最後通過softmax來計算一個概率值,這是一個CNN分類的過程,對於CAM熱力圖而言,主要就體現在特徵值權重\(W_1、W_2、W_3、...、W_n\)上,它表示最終的分類結果對不同特徵的關注程度

  • CAM的缺點
  1. 必須得有GAP層,否則得修改模型結構後重新訓練
  2. 只能分析最後一層卷積層輸出,無法分析中間層
  3. 僅限圖像分類任務

GradCAM

在GradCAM中可以不使用GAP層,完全可以使用FC層,通過全連接層來輸出分數(score),用\(y^c\)表示。

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