4.7 CNN 特徵可視化-深度學習第四課《卷積神經網絡》-Stanford吳恩達教授

CNN 特徵可視化 (What are deep ConvNets learning?)

深度卷積網絡到底在學什麼?在這個視頻中我將展示一些可視化的例子,可以幫助你理解卷積網絡中深度較大的層真正在做什麼,這樣有助於理解如何實現神經風格遷移。

在這裏插入圖片描述

來看一個例子,假如你訓練了一個卷積神經網絡,是一個Alexnet,輕量級網絡,你希望將看到不同層之間隱藏單元的計算結果。

在這裏插入圖片描述

你可以這樣做,從第一層的隱藏單元開始,假設你遍歷了訓練集,然後找到那些使得單元激活最大化的一些圖片,或者是圖片塊。換句話說,將你的訓練集經過神經網絡,然後弄明白哪一張圖片最大限度地激活特定的單元。注意在第一層的隱藏單元,只能看到小部分卷積神經,如果要畫出來哪些激活了激活單元,只有一小塊圖片塊是有意義的,因爲這就是特定單元所能看到的全部。你選擇一個隱藏單元,發現有9個圖片最大化了單元激活,你可能找到這樣的9個圖片塊(編號1),似乎是圖片淺層區域顯示了隱藏單元所看到的,找到了像這樣的邊緣或者線(編號2),這就是那9個最大化地激活了隱藏單元激活項的圖片塊。

在這裏插入圖片描述

然後你可以選一個另一個第一層的隱藏單元,重複剛纔的步驟,這是另一個隱藏單元,似乎第二個由這9個圖片塊(編號1)組成。看來這個隱藏單元在輸入區域,尋找這樣的線條(編號2),我們也稱之爲接受域。

在這裏插入圖片描述

對其他隱藏單元也進行處理,會發現其他隱藏單元趨向於激活類似於這樣的圖片。這個似乎對垂直明亮邊緣左邊有綠色的圖片塊(編號1)感興趣,這一個隱藏單元傾向於橘色,這是一個有趣的圖片塊(編號2),紅色和綠色混合成褐色或者棕橙色,但是神經元仍可以激活它。

在這裏插入圖片描述

以此類推,這是9個不同的代表性神經元,每一個不同的圖片塊都最大化地激活了。你可以這樣理解,第一層的隱藏單元通常會找一些簡單的特徵,比如說邊緣或者顏色陰影。

我在這個視頻中使用的所有例子來自於Matthew ZenerRob Fergus的這篇論文,題目是(Zeiler M D, Fergus R.Visualizing and Understanding Convolutional Networks[J]. 2013, 8689:818-833.)《可視化理解卷積神經網絡》,我會使用一種更簡單的方法來可視化神經網絡隱藏單元的計算內容。如果你讀過他們的論文,他們提出了一些更復雜的方式來可視化卷積神經網絡的計算。

你已經在第一層的9個隱藏單元重複了這個過程好幾遍,如果在深層的隱藏單元中進行這樣的計算呢?卷積神經網絡的深層部分學到了什麼?在深層部分,一個隱藏單元會看到一張圖片更大的部分,在極端的情況下,可以假設每一個像素都會影響到神經網絡更深層的輸出,靠後的隱藏單元可以看到更大的圖片塊,我還會畫出和這頁中的大小相同的圖片塊。

在這裏插入圖片描述

但如果我們重複這一過程,這(Layer 1所示圖片)是之前第一層得到的,這個(Layer 2所示圖片)是可視化的第2層中最大程度激活的9個隱藏單元。我想解釋一下這個可視化,這是(編號2所示)使一個隱藏單元最大激活的9個圖片塊,每一個組合,這是另一組(編號2),使得一個隱藏單元被激活的9個圖片塊,這個可視化展示了第二層的9個隱藏單元,每一個又有9個圖片塊使得隱藏單元有較大的輸出或是較大的激活。

在這裏插入圖片描述

在更深的層上,你可以重複這個過程。

在這裏插入圖片描述

在這頁裏很難看清楚,這些微小的淺層圖片塊,讓我們放大一些,這是第一層,這是第一個被高度激活的單元,你能在輸入圖片的區域看到,大概是這個角度的邊緣(編號1)放大第二層的可視化圖像。

在這裏插入圖片描述

有意思了,第二層似乎檢測到更復雜的形狀和模式,比如說這個隱藏單元(編號1),它會找到有很多垂線的垂直圖案,這個隱藏單元(編號2)似乎在左側有圓形圖案時會被高度激活,這個的特徵(編號3)是很細的垂線,以此類推,第二層檢測的特徵變得更加複雜。

在這裏插入圖片描述

看看第三層我們將其放大,放得更大一點,看得更清楚一點,這些東西激活了第三層。再放大一點,這又很有趣了,這個隱藏單元(編號1)似乎對圖像左下角的圓形很敏感,所以檢測到很多車。這一個(編號2)似乎開始檢測到人類,這個(編號3)似乎檢測特定的圖案,蜂窩形狀或者方形,類似這樣規律的圖案。有些很難看出來,需要手動弄明白檢測到什麼,但是第三層明顯,檢測到更復雜的模式。

在這裏插入圖片描述

下一層呢?這是第四層,檢測到的模式和特徵更加複雜,這個(編號1)學習成了一個狗的檢測器,但是這些狗看起來都很類似,我並不知道這些狗的種類,但是你知道這些都是狗,他們看起來也類似。第四層中的這個(編號2)隱藏單元它檢測什麼?水嗎?這個(編號3)似乎檢測到鳥的腳等等。

在這裏插入圖片描述

第五層檢測到更加複雜的事物,注意到這(編號1)也有一個神經元,似乎是一個狗檢測器,但是可以檢測到的狗似乎更加多樣性。這個(編號2)可以檢測到鍵盤,或者是鍵盤質地的物體,可能是有很多點的物體。我認爲這個神經元(編號3)可能檢測到文本,但是很難確定,這個(編號4)檢測到花。我們已經有了一些進展,從檢測簡單的事物,比如說,第一層的邊緣,第二層的質地,到深層的複雜物體。

我希望這讓你可以更直觀地瞭解卷積神經網絡的淺層和深層是如何計算的,接下來讓我們使用這些知識開始構造神經風格遷移算法。

課程板書

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

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