「影像分類」 實戰影像分類網路的視覺化
作者 | 郭冰洋
編輯 | 郭冰洋
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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 目標檢測和影像分類及其相關計算機視覺的影像分佈計算機視覺
- 基於影像視覺詞彙的文字分類方法(完整專案)視覺文字分類
- 演算法影像崗-影像分類與影像分割演算法
- opencv中的SVM影像分類(二)OpenCV
- opencv中的SVM影像分類(一)OpenCV
- 影像識別垃圾分類app的製作APP
- TF2.keras 實現基於卷積神經網路的影像分類模型TF2Keras卷積神經網路模型
- TF2.keras 實現基於深度可分離卷積網路的影像分類模型TF2Keras卷積模型
- 基於Tensorflow影像分類模型的微服務模型微服務
- 使用PaddleFluid和TensorFlow實現影像分類網路SE_ResNeXtUI
- TensorFlow2基礎:CNN影像分類CNN
- 基於Tensorflow + Opencv 實現CNN自定義影像分類OpenCVCNN
- 影像分類丨Inception家族進化史「GoogleNet、Inception、Xception」Go
- OCT影像分類1:相關論文統計
- 【TensorFlow】 TensorFlow-Slim影像分類模型庫模型
- 視覺化醫學影像CT視覺化
- 【火爐煉AI】機器學習051-視覺詞袋模型+極端隨機森林建立影像分類器AI機器學習視覺模型隨機森林
- OpenCV探索之路(二十八):Bag of Features(BoF)影像分類實踐OpenCV
- 基於PaddlePaddle的影像分類實戰 | 深度學習基礎任務教程系列(一)深度學習
- 網路安全事件分類事件
- 用K-means聚類演算法實現音調的分類與視覺化聚類演算法視覺化
- 決策邊界視覺化,讓你的分類合理有序視覺化
- crf(條件隨機場)用於遙感影像分類結果的優化CRF條件隨機場優化
- 輕鬆學Pytorch-使用ResNet50實現影像分類PyTorch
- 關於視覺化程式設計分類的民間智慧 – drossbucket視覺化程式設計ROS
- 神經網路實現鳶尾花分類神經網路
- 基於sklearn的分類器實戰
- 手把手教你使用LabVIEW OpenCV dnn實現影像分類(含原始碼)ViewOpenCVDNN原始碼
- 圖卷積實戰——文字分類卷積文字分類
- 計算機視覺實戰的深度學習實戰二:影像預處理計算機視覺深度學習
- 樸素貝葉斯分類-實戰篇-如何進行文字分類文字分類
- 關於網路IP地址的分類
- 基於支援向量機的影像分類系統(MATLAB GUI介面版)MatlabGUI
- 影像分類:來自13個Kaggle專案的經驗總結
- 計算機視覺經典任務分類計算機視覺
- B類網路快速 子網劃分
- 網路:IP地址分類和分段
- 訓練一個影像分類器demo in PyTorch【學習筆記】PyTorch筆記