「影像分類」 實戰影像分類網路的視覺化

AIBigbull2050發表於2019-09-04

作者 | 郭冰洋

編輯 | 郭冰洋

1 簡介

一直以來,深度學習被認為缺乏可解釋性和基礎理論支撐,往往被人們看做一個“黑匣子”。為了展現神經網路的內部特徵並構建相應的理解過程,使神經網路更加可靠,相關的網路視覺化研究越來越受人們重視。

「影像分類」 實戰影像分類網路的視覺化

現階段,網路視覺化的研究內容基本上圍繞經典的分類網路展開,是影像分類的延伸和昇華,大體上可以分為層視覺化、卷積核視覺化、類啟用圖視覺化三種,本篇文章我們就走進神經網路的內部,瞭解那些千姿百態的視覺化知識。

2 方法彙總

2.1 層視覺化

眾所周知,神經網路由若干卷積層、池化層、非線性啟用層等構成,層視覺化就是對構成網路的各層結果進行視覺化,以觀測影像在網路中的傳播過程。

層視覺化的對應操作比較簡單,我們只需要獲取網路的各層輸出結果,也就是將影像由tensor形式轉換為numpy對應的矩陣形式即可。

「影像分類」 實戰影像分類網路的視覺化

如上圖中的蜘蛛,可以輸出每層的結果如下:

「影像分類」 實戰影像分類網路的視覺化

在層數較低時,網路關注的重點在整幅圖片,隨著層數的加深,關注的重點則放在了某些輪廓邊緣區域,說明網路會隨著學習的深入關注更加細節的部分,這一過程也符合人們由整體到區域性的認知方式。

層視覺化可以很好的解釋網路學習的大致流程,呈現了網路在影像傳播過程中關注區域的變化過程。

2.2 卷積核視覺化

影像分類網路的本質是對卷積核的引數進行學習,不同的卷積核代表對應的類別特徵,是分類的核心基準。因此,如何呈現出卷積核的內容,也是評判網路學習能力的方法之一。

在進行卷積核視覺化時,我們需要對網路中各層學習到的引數進行提取,同樣需要由tensor轉化為轉換為numpy對應的矩陣形式。

仍然以蜘蛛的圖片為例,可以看到不同層的卷積核視覺化如下:

「影像分類」 實戰影像分類網路的視覺化

可以看出淺層的卷積核大多學習點、顏色等基礎特徵;隨著層數的增加開始學習到線段、邊緣等特徵。層數越深,學習到的特徵就越具體越抽象。

2.3 類啟用圖視覺化

層視覺化和卷積核視覺化所關注的重點在影像的區域性特徵,需要通過提取每層的引數才可以獲得對應的視覺化圖,並不能反應整幅影像的完整響應。

如果能得出整幅影像對其類別的整體響應值,即每個畫素在分類所做出的貢獻,我們便可以得到特徵在網路學習過程中的重要程度佔比。

在此基礎上,類啟用圖的概念被提出。

「影像分類」 實戰影像分類網路的視覺化

通過對特徵圖作全域性平均值池化可以獲得特徵圖的整體均值,並移除全連線層,以此作為基準進行分類,可以保留特徵的空間位置資訊,從而反應影像中任意位置特徵的重要程度。

「影像分類」 實戰影像分類網路的視覺化

如上圖中的花朵影像,通過類啟用圖我們可以看到網路關注的重點區域,這也是判定網路學習是否準確的一種全新思路。


總結

以上就是關於網路視覺化的內容,目前許多關於視覺化的研究仍在開展當中,這有助於我們更深入的瞭解網路各部分的作用,更有助於對網路模型進行優化,希望大家可以重視這部分內容,深入的去了解整個過程。



https://www.toutiao.com/a6732615201977270797/


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946223/viewspace-2655958/,如需轉載,請註明出處,否則將追究法律責任。

相關文章