《機器學習與Python實踐》課件-11-卷積神經網絡_第1頁
《機器學習與Python實踐》課件-11-卷積神經網絡_第2頁
《機器學習與Python實踐》課件-11-卷積神經網絡_第3頁
《機器學習與Python實踐》課件-11-卷積神經網絡_第4頁
《機器學習與Python實踐》課件-11-卷積神經網絡_第5頁
已閱讀5頁,還剩93頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

讓機器更好的理解和服務人類1人獲得的輸入是什么?圖像信息序列信息任務:理解圖像內容方法:卷積神經網絡任務:理解語音/文字/視頻方法:循環神經網絡一個例子計算機視覺輸入圖像輸入圖像大小為32x32,輸入數據量為32x32x3=3072隱層神經元個數為100,第一層權值數量為3072x100=307200/aics一個例子實際場景中,往往需要更大的輸入圖像以及更深的網絡結構。輸入圖像大小為1024x1024,第一層隱層神經元個數為1000第一層權重數量級為10^9,過多的參數會導致過擬合卷積神經網絡可以有效減少權重數量輸入圖像/aics全連接前饋神經網絡權重矩陣的參數非常多局部不變性特征自然圖像中的物體都具有局部不變性特征,比如尺度縮放、平移、旋轉等操作不影響其語義信息。而全連接前饋網絡很難提取這些局部不變特征。卷積神經網絡(CNN)全連接卷積局部連接權重共享所有神經元之間的連接都使用不同權重。輸出層神經元共用同一組權重,進一步減少權重數量。權重數量/aicsCNN組成VGG16卷積層(conv)池化層(max

pool)全連接層(FC)Softmax/aics卷積層卷積層如何檢測特征檢測復雜邊緣將權重作為參數,在訓練中學習。7w0w1w2w3w4w5w6w7w8filter/kernel卷積神經網絡的兩個重要特征:局部連接、權重共享

可有效減少權重參數,避免過擬合,為增加卷積層數提供可能。/aics卷積神經網絡卷積神經網絡生物學上局部感受野(ReceptiveField)卷積神經網絡有兩個結構上的特性:局部連接權重共享卷積神經網絡卷積神經網絡數據表示:矩陣,張量(Tensor)卷積卷積經常用在信號處理中,用于計算信號的延遲累積。假設一個信號發生器每個時刻t產生一個信號xt,其信息的衰減率為wk,即在k?1個時間步長后,信息為原來的wk倍假設w1=1,w2=1/2,w3=1/4時刻t收到的信號yt為當前時刻產生的信息和以前時刻延遲信息的疊加濾波器(filter)或卷積核(convolutionkernel)卷積卷積經常用在信號處理中,用于計算信號的延遲累積。給定一個收入信號序列x和濾波器w卷積的輸出為:Filter:[-1,0,1]卷積擴展引入濾波器的滑動步長s和零填充p等寬卷積窄卷積兩維卷積在圖像處理中,圖像是以二維矩陣的形式輸入到神經網絡中,因此我們需要二維卷積。卷積層數學:卷積運算神經網絡:實際為計算矩陣內積(相關系數);

(“*”表示卷積)231523745231396042064712410806702163*1014-3230-1=321014-3230-1卷積層231523745231396042064712410806702163*1014-3230-1=32401014-3230-1231523745231396042064712410806702163*1014-3230-1=324037751014-3230-1卷積層離散卷積的邊緣效應卷積層離散卷積的邊緣效應Zero-Padding,edge-padding,reflect-padding二維卷積步長1,零填充0步長2,零填充0步長1,零填充1步長2,零填充1卷積神經網絡用卷積層代替全連接層卷積作為特征提取器特征映射(FeatureMap):圖像經過卷積后得到的特征。卷積核看成一個特征提取器卷積層卷積層如何檢測特征10-110-110-1101010000101010000101010000101010000101010000101010000030300030300030300030300*=11010-10-1-110101010100101010100010101000010100

0001000000

0000000

1030301030301030

30100301000*=檢測垂直邊緣檢測對角線邊緣卷積層基本操作單元:卷積層卷積層基本操作單元:卷積層卷積層多輸入特征圖單輸出特征圖卷積運算*inputfilter=output6x6x33x3x34x4卷積層*=6x6x33x3x34x40000110020000020120000220121-1-1-1-10-1111-1-1-10-1-101-111-11-11-11C=0C=1C=2*=2-2-1+2+0-2+0+2+(-1)+0+0+2=2卷積層卷積層基本操作單元:卷積層卷積層基本操作單元:卷積層size=3c_in=3c_out=2stride=1padding=0卷積層的映射關系步長2

filter個數33*3填充卷積層典型的卷積層為3維結構卷積層33總結:卷積層參數*inputfilter1=output

filter2output+bias

filter:可訓練bias:可訓練,使分類器偏離激活函數原點,更靈活;activation激活層基本操作單元:激活層ReLU激活層基本操作單元:激活層激活層基本操作單元:激活層池化層基本操作單元:池化Pooling/降采樣層池化層基本操作單元:池化Pooling/降采樣層池化層池化Pooling/降采樣層池化層基本操作單元:池化Pooling/降采樣層卷積網絡CNN結構卷積網絡是由卷積層、匯聚層、全連接層交叉堆疊而成。趨向于小卷積、大深度趨向于全卷積典型結構一個卷積塊為連續M個卷積層和b個匯聚層(M通常設置為2~5,b為0或1)。一個卷積網絡中可以堆疊N個連續的卷積塊,然后在接著K個全連接層(N的取值區間比較大,比如1~100或者更大;K一般為0~2)。卷積網絡結構深度特征學習L=||y-f(x)||1L=1,ify≠f(x)L=CE(y,f(x))交叉熵深度學習深度特征學習表示學習CNN以圖像的原始像素作為輸入,基于輸出層定義的損失函數使用反向傳播算法端到端(End-to-end)學習,從而自動學習得到圖像底層到高層的層次化語義表達表示學習淺層學習局部特征,深層學習整體特征46神經網絡可視化:conv6conv9Springenberg,J.T.;Dosovitskiy,A.;Brox,T.&Riedmiller,M.Strivingforsimplicity:theallconvolutinalnetICML,2015,1-12卷積神經網絡結構47為何選擇“深”而非“廣”的網絡結構即使只有一層隱層,只要有足夠的神經元,神經網絡理論上可以擬合任意連續函數。為什么還要使用深層網絡結構?深度網絡可從局部到整體“理解圖像”學習復雜特征時(例如人臉識別),淺層的卷積層感受野小,學習到局部特征,深層的卷積層感受野大,學習到整體特征。以寬度換深度,用多個小卷積替代一個大卷積,在獲得更多樣特征的同時所需權重數量也更少。深度網絡可減少權重數量卷積網絡結構卷積網絡是由卷積層、匯聚層、全連接層交叉堆疊而成。趨向于小卷積、大深度趨向于全卷積典型結構一個卷積塊為連續M個卷積層和b個匯聚層(M通常設置為2~5,b為0或1)。一個卷積網絡中可以堆疊N個連續的卷積塊,然后在接著K個全連接層(N的取值區間比較大,比如1~100或者更大;K一般為0~2)。其它卷積種類—轉置卷積/微步卷積低維特征映射到高維特征空洞卷積如何增加輸出單元的感受野增加卷積核的大小增加層數來實現在卷積之前進行匯聚操作空洞卷積通過給卷積核插入“空洞”來變相地增加其大小。卷積神經網絡CNN模型結構變遷針對移動端的輕量型網絡MobileNetV3(2016.04)ShuffleNet(2016.06)Xception(2016.10)SqueezeNet(2016.02)LeNet(1998)AlexNet(2012)VGGNet(2014)NIN(2013)GoogLeNet(2014)ResNet(2015)DenseNet(2016)NAS(2018)LeNet-5LeNet-5是一個非常成功的神經網絡模型。基于LeNet-5的手寫數字識別系統在90年代被美國很多銀行使用,用來識別支票上面的手寫數字。LeNet-5共有7層。需要多少個卷積核?LeNet-5卷積網絡結構LeNet-5卷積網絡結構LeNet-5卷積網絡結構LeNet-5卷積網絡結構卷積網絡結構https://atcold.github.io/pytorch-Deep-Learning/zh/week03/03-2/LeNet-5卷積網絡結構https://atcold.github.io/pytorch-Deep-Learning/zh/week03/03-2/LargeScaleVisualRecognitionChallengeAlexNet2012ILSVRCwinner(top5errorof16%comparedtorunner-upwith26%error)第一個現代深度卷積網絡模型,首次使用了很多現代深度卷積網絡的一些技術方法,比如使用GPU進行并行訓練,采用了ReLU作為非線性激活函數,使用Dropout防止過擬合,使用數據增強5個卷積層、3個匯聚層和3個全連接層Inception網絡2014ILSVRCwinner(22層)參數:GoogLeNet:4MVSAlexNet:60M錯誤率:6.7%Inception網絡是由有多個inception模塊和少量的匯聚層堆疊而成。Inception模塊v1在Inception網絡中,一個卷積層包含多個不同大小的卷積操作,稱為Inception模塊。Inception模塊同時使用1×1、3×3、5×5等不同大小的卷積核,并將得到的特征映射在深度上拼接(堆疊)起來作為輸出特征映射。卷積和最大匯聚都是等寬的。Inception模塊v3用多層的小卷積核來替換大的卷積核,以減少計算量和參數量。使用兩層3x3的卷積來替換v1中的5x5的卷積使用連續的nx1和1xn來替換nxn的卷積。Inception模塊v3用多層的小卷積核來替換大的卷積核,以減少計算量和參數量。使用兩層3x3的卷積來替換v1中的5x5的卷積使用連續的nx1和1xn來替換nxn的卷積。殘差網絡殘差網絡(ResidualNetwork,ResNet)是通過給非線性的卷積層增加直連邊的方式來提高信息的傳播效率。假設在一個深度網絡中,我們期望一個非線性單元(可以為一層或多層的卷積層)f(x,θ)去逼近一個目標函數為h(x)。將目標函數拆分成兩部分:恒等函數和殘差函數ResNet2015ILSVRCwinner(152層)錯誤率:3.57%殘差單元殘差單元DenseNetStandardCNNResNetDenseNetDenseNetDenseNet常用CNN結構NAS常用CNN結構CNN可視化:濾波器AlexNet中的濾波器(96filters[11x11x3])CNN可視化:CNNExplainer解釋器CNN解釋器:https://poloclub.github.io/cnn-explainer/GitHub:/poloclub/cnn-explainer論文:/abs/2004.15004佐治亞理工ZijieWangCNN可視化:CNNExplainer解釋器單擊神經元,進入彈性解釋視圖,就可以看到卷積核滑動的過程的動畫模擬:CNN可視化:CNNExplainer解釋器單擊神經元,進入彈性解釋視圖,就可以看到卷積核滑動的過程的動畫模擬:CNN可視化:CNNExplainer解釋器單擊神經元,進入彈性解釋視圖,就可以看到卷積核滑動的過程的動畫模擬:CNN可視化:CNNExplainer解釋器理解超參:CNN可視化:CNNExplai

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論