深度學習之卷積神經網絡 ZF Net

ZFNet出自論文《 Visualizing and Understanding Convolutional Networks》,作者Matthew D. Zeiler和Rob Fergus——顯然ZFNet是以兩位作者名字的首字母命名的。ZFNet通常被認為是ILSVRC 2013的冠軍方法,但實際上ZFNet排在第3名,前兩名分別是Clarifai和NUS,不過Clarifai和ZFNet都出自Matthew D. Zeiler之手,見ILSVRC2013 results。
在這里插入圖片描述

ZFNet的網絡架構是在AlexNet基礎上修改而來,與AlexNet相比,差異不大:

  • 第1個卷積層,kernel size從11減小為7,將stride從4減小為2(這將導致feature map增大1倍)
  • 為了讓后續feature map的尺寸保持一致,第2個卷積層的stride從1變為2

僅這2項修改,就獲得了幾個點的性能提升。所以,重要的是為什么這樣修改?這樣修改的動機是什么?文中這樣敘述:
在這里插入圖片描述
通過對AlexNet的特征進行可視化,文章作者發現第2層出現了aliasing。在數字信號處理中,aliasing是指在采樣頻率過低時出現的不同信號混淆的現象,作者認為這是第1個卷積層stride過大引起的,為了解決這個問題,可以提高采樣頻率,所以將stride從4調整為2,與之相應的將kernel size也縮小(可以認為stride變小了,kernel沒有必要看那么大范圍了),這樣修改前后,特征的變化情況如下圖所示,第1層呈現了更多更具區分力的特征,第二2層的特征也更加清晰,沒有aliasing現象。
在這里插入圖片描述
這就引出了另外一個問題,如何將特征可視化?正如論文標題Visualizing and Understanding Convolutional Networks所顯示的那樣,與提出一個性能更好的網絡結構相比,這篇論文更大的貢獻在于提出一種將卷積神經網絡深層特征可視化的方法。

可視化操作,針對的是已經訓練好的網絡,或者訓練過程中的網絡快照,可視化操作不會改變網絡的權重,只是用于分析和理解在給定輸入圖像時網絡觀察到了什么樣的特征,以及訓練過程中特征發生了什么變化。

給定1張輸入圖像,先前向傳播,得到每一層的feature map,如果想可視化第i層學到的特征,保留該層feature map的最大值,將其他位置和其他feature map置0,將其反向映射回原始輸入所在的像素空間。對于一般的卷積神經網絡,前向傳播時不斷經歷 input image→conv → rectification → pooling →……,可視化時,則從某一層的feature map開始,依次反向經歷 unpooling → rectification → deconv → …… → input space,如下圖所示,上方對應更深層,下方對應更淺層,前向傳播過程在右半側從下至上,特征可視化過程在左半側從上至下:

在這里插入圖片描述

可視化時每一層的操作如下:

  • Unpooling:在前向傳播時,記錄相應max pooling層每個最大值來自的位置,在unpooling時,根據來自上層的map直接填在相應位置上,如上圖所示,Max Locations “Switches”是一個與pooling層輸入等大小的二值map,標記了每個局部極值的位置。
  • Rectification:因為使用的ReLU激活函數,前向傳播時只將正值原封不動輸出,負值置0,“反激活”過程與激活過程沒什么分別,直接將來自上層的map通過ReLU。
  • Deconvolution:可能稱為transposed convolution更合適,卷積操作output map的尺寸一般小于等于input map的尺寸,transposed convolution可以將尺寸恢復到與輸入相同,相當于上采樣過程,該操作的做法是,與convolution共享同樣的卷積核,但需要將其左右上下翻轉(即中心對稱),然后作用在來自上層的feature map進行卷積,結果繼續向下傳遞。

不斷經歷上述過程,將特征映射回輸入所在的像素空間,就可以呈現出人眼可以理解的特征。給定不同的輸入圖像,看看每一層關注到最顯著的特征是什么,如下圖所示:

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/453788.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/453788.shtml
英文地址,請注明出處:http://en.pswp.cn/news/453788.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

SIP與RTP綜合應用5-RTP解包過程

RTP接收部分比較簡單(不用考慮jitterbuffer等),先從這里入手。 其實主要就3步: 1 創建一個udp,監聽一個端口,比如5200。 2 收到RTP包,送到解包程序,繼續收第 二個。 3 收齊一幀后,或保存文件&am…

JavaScript eval() 函數,計算某個字符串,并執行其中的的 JavaScript 代碼。

JavaScript eval() 函數,計算某個字符串,并執行其中的的 JavaScript 代碼。 適合用于計算器的計算,等。 例子: eval("x10;y20;document.write(x*y)") document.write(eval("22")) var x10 document.write(eva…

vb整合多個excel表格到一張_[Excel]同一工作簿中多個工作表保存成獨立的表格

一個工作簿中有多個表格,如何將其表格單獨保存成一個獨立的文檔呢?如果表格少,操作如下:選中要導出表格的標簽名--鼠標郵件--移動或復制表格--新建工作簿。當如果表格太多呢,以上方法就太羅嗦了。簡單方法用VBA,步驟如…

sqlserver字符串多行合并為一行

1 --創建測試表2 CREATE TABLE [dbo].[TestRows2Columns](3 [Id] [int] IDENTITY(1,1) NOT NULL,4 [UserName] [nvarchar](50) NULL,5 [Subject] [nvarchar](50) NULL,6 [Source] [numeric](18,0) NULL7 )8 GO9 10 --插入測試數據 11 INSERT INTO [TestRows2C…

OpenCore 的代碼結構

OpenCore的代碼結構 以開源Android 的代碼為例,Open Core 的代碼在Android 代碼的External/Opencore 目錄 中。這個目錄是OpenCore 的根目錄,其中包含的子目錄如下所示: android:這里面是一個上層的庫,它基于PVPlaye…

深度學習之卷積神經網絡 GoogleNet

GoogLeNet Incepetion V1 這是GoogLeNet的最早版本,出現在2014年的《Going deeper with convolutions》。之所以名為“GoogLeNet”而非“GoogleNet”,文章說是為了向早期的LeNet致敬。 深度學習以及神經網絡快速發展,人們不再只關注更給力的硬件、更大…

名詞解釋 算法的有限性_數據結構與算法期中考試卷(含答案)

玉林師范學院期中課程考試試卷(2010——2011學年度第一學期)命題教師:劉恒 命題教師所在系:數計系 課程名稱:數據結構與算法 考試專業:信計 考試年級:09級一、單項選擇題(每題2分,共30分,把正確…

Jzoj4348 打擊目標

又是被水題坑了。。。 一直想不出來看題解說要什么主席樹,于是開始打離線算法 結果打到一半發現要強制在線。。No!!! 發現直接AC自動機似乎可做?樹剖之后在AC自動機上跑的時候判斷一下不就好了嗎!連線段樹都不要 讓后快樂切掉,速度還可以&…

深度學習之卷積神經網絡 VGGNet

2014年,牛津大學計算機視覺組(Visual Geometry Group)和Google DeepMind公司的研究員一起研發出了新的深度卷積神經網絡:VGGNet,并取得了ILSVRC2014比賽分類項目的第二名(第一名是GoogLeNet,也是…

SpringMVC 返回json的兩種方式

前后臺數據交互使用json是一種很重要的方式.本文主要探討SpringMVC框架使用json傳輸的技術. 請注意,本文所提到的項目使用Spring 版本是4.1.7,其他版本在具體使用上可能有不一樣的情況. 一、最常見——使用RequestBody的注解返回一個實體對象; 使用方式如下: 1:引入jar包&#…

word上怎么把圖片拼接到一起_如何用Word把自己插入的兩張圖片合在一起?

例如上面效果的設置方法:1、單擊插入----圖片按鈕;2、彈出插入圖片對話框,按住Ctrl鍵,同時選擇所需要的圖片;3、選中圖片,單擊圖片工具格式----文字環繞----緊密型環繞;4、此時,用鼠…

深度學習之卷積神經網絡 ResNet

論文 Identity Mappings in Deep Residual Networks 2015年,ResNet(Residual Neural Network)由微軟研究院的Kaiming He等四名華人提出,并在ILSVRC2015比賽中取得冠軍,在top5上的錯誤率為3.57%,同時參數量…

按照RFC3984協議實現H264視頻流媒體 RTSP H264

轉自:http://topic.csdn.net/u/20100104/16/0fd992e8-b0a6-4c2b-85a4-d9513d3b1491.html 相信有不少人和我一樣,希望實現H264格式視頻的流媒體播放。但是對于一個新手來說,往往不知道從何入手。利用百度,GOOGLE等搜索資料真是沙里…

搭建SSM框架之Spring

作為一枚大四準備畢業的學生,最重要的事便是畢業設計,前些日子剛剛拿到畢設題目:“3D網絡圖:面向網絡結構數據的可視化軟件設計”,(⊙o⊙)…,怎么說哪,看到題目就是一頭霧水(前幾屆不…

audio unity 加速_淺談Unity中Android、iOS音頻延遲

在Unity上面做音游,當在移動端實機運行起來,會發現,音頻的發出會有一定的延遲,無論是長音效還是短音效,Unity內置的Audio內部使用的是FMOD,有以下手段改善通過設置稍微改善其延遲的問題Edit → Project Set…

深度學習之 hard negative mining (難例挖掘)

Hard Negative Mining Method 思想 hard是困難樣本,negative是負樣本,hard negative就是說在對負樣本分類時候,loss比較大(label與prediction相差較大)的那些樣本,也可以說是容易將負樣本看成正樣本的那些…

單列表_使用Excel中的quot;記錄單quot;功能快速錄入數據

在Excel中進行數據錄入的時候,平常都是一行一行地錄入數據,但是有時候在單元格之間,行與行,列與列之間頻繁地切換去錄入數據,費事費力還容易出錯。今天給你推薦一個既好用又有效率的Excel中的隱藏功能——“記錄單”。…

CentOS 6.9下的Setup工具(用于管理服務/防火墻/網絡配置/驗證服務)

說明:Setup工具套件好像是CentOS下特有的用于管理服務/防火墻/網絡配置等,其實就是基于命令行模式界面的GUI工具。唯一特點就是方便。 安裝: #安裝Setup命令工具 yum -y install setuptool #安裝Setup工具配套的系統服務組件 yum -y insta…

wireshark解析rtp協議,流媒體中的AMR/H263/H264包的方法

原文教程:http://hi.baidu.com/zjxiaoyu3/blog/item/22f9f18f32b45de5f11f3670.html 抓到完整的流媒體包之后,用wireshark打開,其中的包可能不會自動映射成RTP+AMR/H263/H264的包,做如下修改操作…

深度學習之非極大值抑制(Non-maximum suppression,NMS)

非極大值抑制(Non-maximum suppression,NMS)是一種去除非極大值的算法,常用于計算機視覺中的邊緣檢測、物體識別等。 算法流程 給出一張圖片和上面許多物體檢測的候選框(即每個框可能都代表某種物體)&…