CNN 卷積神經網絡介紹_第1頁
CNN 卷積神經網絡介紹_第2頁
CNN 卷積神經網絡介紹_第3頁
CNN 卷積神經網絡介紹_第4頁
CNN 卷積神經網絡介紹_第5頁
已閱讀5頁,還剩60頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

CNN卷積神經網絡介紹Niubinhan2018-6-12第一篇生物學神經網絡請用視覺表達圖中的動物是什么?圖中是同一種動物?為什么?判斷不同動物的依據是什么?人的視網膜如何工作視網膜有十層結構、其中三層被神經元占據。這十層結構在圖中上而下分別是:色素上皮層,視錐、視桿細胞層,外界膜,外顆粒層,外叢狀層,內顆粒層,內叢狀層,神經節細胞層,神經纖維層,內界膜。其中負責接受光信號(也就是網絡的輸入層)的是視錐、視桿細胞(感光細胞)層(Rodsandconeslayer)。在視覺皮層中存在的兩類細胞:簡單細胞(simplecells)和復雜細胞(complexcells).

TorstenWiesel和DavidHubel兩位好基友日以繼夜在貓和猴身上做實驗在1950s末期發現了簡單細胞又在大約十年后發現了復雜細胞。1981年的諾貝爾生理學及醫學獎。動物和人的大腦如何識別圖像第二篇Cnn卷積神經網絡經典CNN結構圖計算機看到的圖片RGB三通道二維數組CNN卷積神經網絡卷積神經網絡是計算機視覺領域最有影響力的創造之一.2012年是卷積神經網絡崛起之年。這一年,AlexKrizhevsky帶著卷積神經網絡參加了ImageNet競賽(其重要程度相當于奧運會)并一鳴驚人,將識別錯誤率從26%降到了15%,。從那開始,很多公司開始使用深度學習作為他們服務的核心。CNN卷積神經網絡識別圖像的過程卷積計算-矩陣相同位置相乘求和卷積計算-矩陣相同位置相乘求和卷積核的通道數圖像上做卷積的效果卷積核是什么?卷積核Kernel也叫濾波器filter,代表圖像的某種特征;也稱為神經元。比如垂直邊緣,水平邊緣,顏色,紋理等等,這些所有神經元加起來就好比就是整張圖像的特征提取器集合。卷積核越深越能檢測圖像更高級別,更高層次,更復雜,更抽象,更泛化的特征。卷積計算為什么能檢測圖像的特征?神經元激活放電卷積計算本質就是相似度匹配,一樣不一樣。不同的卷積核多角度檢測圖像特征每一個卷積核代表提取不同的特征,多個卷積核提取的特征然后進行組合。可視化卷積核深度卷積核檢測圖像更高層次的特征TechnologyProcedurePoliciesBenefits圖像卷積運算的結果相似則輸出一個明顯變大的值,否則輸出極小值。圖像卷積運算的結果相似則輸出一個明顯變大的值,否則輸出極小值。全連接層-輸出預測結果圖像特征圖的“分布式特征表示”映射到樣本標記空間。在整個卷積神經網絡中起到“分類器”的作用全連接層-輸出預測結果隱含層輸出的特征圖SoftMax通過Softmax函數將多個標量映射為一個概率分布,輸出分類結果的置信度。第三篇Cnn卷積神經網絡的訓練內容概述訓練什么?怎么訓練?基礎知識訓練的本質是什么?訓練什么?訓練輸入的樣本和分類對象是已定的,訓練的深度(隱藏層的層數)和卷積核(神經元)的數量、卷積核的大小,都是訓練前根據經驗設定的。如果訓練參數設置不合理會導致過擬合或者欠擬合。數據擬合科學和工程問題可以通過諸如采樣、實驗等方法獲得若干離散的數據,根據這些數據,我們往往希望得到一個連續的函數(也就是曲線)或者更加密集的離散方程與已知數據相吻合,這過程就叫做擬合(fitting).擬合(fitting)數據擬合:是指選擇適當的曲線類型來擬合觀測數據,并用擬合的曲線方程分析兩變量間的關系。是一種把現有數據透過數學方法來代入一條數式的表示方式。區分兩種不同的點歸納-找到規律演繹擬合任意連續函數萬能近似定理Universalapproximationtheorem(Horniketal.,1989;Cybenko,1989)已經在數學上證明了前饋神經網絡,只需具備單層隱含層和有限個神經單元,就能以任意精度擬合任意復雜度的連續函數.分類擬合任意連續函數非線性激活函數擬合任意連續函數對于sigmoid函數來說,w控制著的就是曲線的斜率,如果w特別大,那么就能夠近似成為一個階躍函數,而b則控制著到底在哪個位置開始進行階躍,兩個反向的階躍函數的組合就能夠組合成為一個小的沖擊,于是我們有了這個東西之后就能夠開始造世界了。從科學方法論來看,歸納的基本要求是足夠大、且覆蓋全部時間空間維度的樣本+科學的統計分析。理論上歸納法不可能“完全正確”,但它是一個正的金字塔,它永遠不會偏離事實太遠。現在主流的人工智能算法,是用計算機去對超大量數據進行復雜歸納。擬合的本質=>歸納欠擬合&過擬合通俗對比:欠擬合學得太少,分得太粗糙;過擬合學得太多太細,拿著放大鏡看世界,看到的都是差異看不到相同點。激活函數激活函數是用來加入非線性因素,解決線性模型所不能解決的問題。激活函數的意義是“讓神經網絡具備強大的擬合能力”。線性方程的復雜性有限,并且從數據中學習復雜函數映射的能力更小。一個沒有激活函數的神經網絡只不過是一個線性回歸模型。從數學上來看,非線性的Sigmoid函數對中央區的信號增益較大,對兩側區的信號增益小,在信號的特征空間映射上,有很好的效果,通過對加權的輸入進行非線性組合產生非線性決策邊界.從神經科學上來看,中央區酷似神經元的興奮態,兩側區酷似神經元的抑制態,因而在神經網絡學習方面,可以將重點特征推向中央區,將非重點特征推向兩側區.Sigmoid系(Logistic-Sigmoid、Tanh-Sigmoid)Relu函數計算簡單,導數簡單,收斂快,單側抑制,相對寬闊的興奮邊界,稀疏激活性;缺點在于在訓練的時候,網絡很脆弱,很容易出現很多神經元值為0,從而再也訓練不動。神經元模型神經元模型y=f(∑

n

i=1

w

i

x

i

?θ)

激活函數sigmoid函數的表達式和分布圖如下所示:數據歸一化歸一化就是把數據經過處理后使之限定在一定的范圍內。比如通常限制在區間[0,1]或者[-1,1]。本質是一種線性變換。歸一化解決奇異樣本數據問題,奇異樣本數據數據指的是相對于其他輸入樣本特別大或特別小的樣本矢量。歸一化的方法:最大-最小標準化是對原始數據進行線性變換,設minA和maxA分別是屬性A的最小值和最大值,將A的一個原始值通過最大-最小標準化映射到區間[0,1]的值,公式:Z-score標準化是基于原始數據的均值和標準差進行的數據標準化。將屬性A的原始數據X通過Z-score標準化成。Z-score標準化適用于屬性A的最大值或者最小值未知的情況,或有超出取值范圍的離散數據的情況,公式:梯度下降法想像你于伸手不見五指的黑夜身處一座地形復雜的山中。你看不清山的全貌,只能根據重力感知立足之處的坡度。如果想要下山,你該怎么做?你根據此處的重力感覺,向下坡最陡的方向邁一步。然后根據新位置的坡度,再向下坡最陡的方向邁出下一步。如果來到一個位置,你感覺已經站在了平地上,再沒有下坡的方向,你也就無從邁出下一步了。此時你可能已經成功到達海拔最低的山底,但也有可能身處半山腰處一塊平地或者一個盆地底部。梯度下降法相關概念仿射函數:仿射函數是線性函數。仿射函數的圖形是空間中一個平面函數可導:若函數在某一點可導,則函數在這一點附近可用一個仿射函數很好地近似。該仿射函數的圖形(平面),就是函數在這一點的切平面。梯度:函數在某一點的梯度是一個自變量空間內的向量。自變量順著梯度方向變化時函數值上升得最快。梯度的模(長度)是函數值上升的速率。梯度朝某方向投影的長度是自變量順著該方向變化時函數值的變化率。梯度下降法人工神經網絡的訓練主要采用梯度下降法。其計算過程中采用誤差反向傳播的方式計算誤差函數對全部權值和偏置值的梯度。梯度下降法是一種基于函數一階性質的優化算法。該算法從任一點開始,沿該點梯度的反方向運動一段距離,再沿新位置的梯度反方向運行一段距離......如此迭代。一直朝下坡最陡的方向運動,目標是找到到函數的全局最小點。學習率η卷積(Conv)&協相關(Cross-correlation)BP反向傳播算法-反饋網絡誤差BP的基本思想是通過計算輸出層與期望值之間的誤差來調整網絡參數,從而使誤差變小。典型的三層神經網絡的基本構成,LayerL1是輸入層,LayerL2是隱含層,LayerL3是輸出層。BP反向傳播算法-前向計算神經元h1的輸出o1:(此處用到激活函數為sigmoid函數):同理,可計算出神經元h2的輸出o2:計算輸出層神經元o1和o2的值:計算隱含層神經元h1和h2的值:BP反向傳播算法-反向傳播總誤差:計算梯度:以權重參數w5為例,如果我們想知道w5對整體誤差產生了多少影響,可以用整體誤差對w5求偏導:(鏈式法則)BP反向傳播計算過程計算:最后三者相乘:計算:計算:這樣我們就計算出整體誤差E(total)對w5的偏導值。更新權值:其中η是學習速率,這里我們取0.5BP反向傳播計算過程迭代更新權重:誤差反向傳播法就完成了,最后我們再把更新的權值重新計算,不停地迭代,直到誤差在要求的范圍內.cnn反向傳播計算過程本示例的神經網絡結構:傳統的神經網絡是全連接形式的,如果進行反向傳播,只需要由下一層對前一層不斷的求偏導,即求鏈式偏導就可以求出每一層的誤差敏感項,然后求出權重和偏置項的梯度,即可更新權重。而卷積神經網絡有兩個特殊的層:卷積層和池化層。池化層輸出時不需要經過激活函數,是一個滑動窗口的最大值,一個常數,那么它的偏導是1。池化層相當于對上層圖片做了一個壓縮,這個反向求誤差敏感項時與傳統的反向傳播方式不同。從卷積后的feature_map反向傳播到前一層時,由于前向傳播時是通過卷積核做卷積運算得到的feature_map,所以反向傳播與傳統的也不一樣,需要更新卷積核的參數。Cnn卷積層反向傳播計算第一個卷積層神經元o11的輸入NetO11和輸出Out011:Neto11=conv(input,filter)

=i11×h11+i12×h12+i21×h21+i22×h22

=1×1+0×(?1)+1×1+1×(?1)=1Outo11=activators(neto11)=max(0,neto11)=1以卷積核filter1為例(stride=1):例子:輸入是一個4*4的image,經過兩個2*2的卷積核進行卷積運算后,變成兩個3*3的feature_mapCnn卷積層反向傳播同樣的方法,計算所有神經元的輸入和輸出:(此處使用Relu激活函數)Outo11=activators(neto11)=max(0,neto11)Outo12=max(0,neto12)Outo13=max(0,neto13)Outo21=max(0,neto21)Outo22=max(0,neto22)Outo23=max(0,neto23)Outo31=max(0,neto31)Outo32=max(0,neto32)Outo33=max(0,neto33)neto11=i11×h11+i12×h12+i21×h21+i22×h22neto12=i12×h11+i13×h12+i22×h21+i23×h22neto13=i13×h11+i14×h12+i23×h21+i24×h22neto21=i21×h11+i22×h12+i31×h21+i32×h22neto22=i22×h11+i23×h12+i32×h21+i33×h22neto23=i23×h11+i24×h12+i33×h21+i34×h22neto31=i31×h11+i32×h12+i41×h21+i42×h22neto32=i32×h11+i33×h12+i42×h21+i43×h22neto33=i33×h11+i34×h12+i43×h21+i44×h22示例:計算池化層的輸入和輸出:netm11=max(o11,o12,o21,o22)=1outm11=netm11=1Cnn卷積層反向傳播首先計算卷積的上一層的第一個元素i11的誤差項δ11:然后對輸入元素i(i,j)求偏導:同樣的方計算其他元素對誤差的偏導。Cnn卷積層反向傳播觀察一下上面幾個式子的規律,歸納一下,可以得到如下表達式:圖中的卷積核進行了180°翻轉,與這一層的誤差敏感項矩陣Delta(i,j),周圍補零后的矩陣做卷積運算后,就可以得到?E/?i11:Cnn卷積層反向傳播權重的梯度:偏置項的梯度:根據梯度即可修改權重。如何訓練訓練是一種有監督學習。當我們生下來的時候,我們的思想是空白的,不知道什么是鳥什么是狗。類似在CNN開始訓練之前,權重值也是隨機初始化的,過濾器不知道提取哪些特征值。當我們長大一些的時候,父母和老師給我們看不同的圖片并且告訴我們這些圖片對應的是什么。這種思想或者方法就是給圖片打標簽,就是CNN訓練的過程。大量的樣本數據:前向傳播損失函數反向傳播更新權重訓練的方法單樣本訓練(隨機梯度下降SGD):在標準BP算法中,每輸入一個樣本,都要回傳誤差并調整權值,這種對每個樣本輪訓的方法稱為單樣本訓練。單樣本訓練只針對每個樣本產生的誤差進行調整,難免顧此失彼,使訓練次數增加,導致收斂速度變慢。內存占用少,振蕩、有遺忘問題。批量訓練(批量梯度下降BGD):在所有樣本輸入后計算網絡的總誤差,再根據總誤差調整權值,這種累積誤差的批量處理方式稱為“批訓練”或“周期訓練”。易于并行訓練,樣本量大的時候內存占用多,訓練速度變慢。小批量訓練:“小批量梯度下降訓練法”是單樣本和批量訓練的折中辦法,每次用小批量樣本進行更新學習。訓練相關概念三種梯度下降法法的對比:下圖是梯度下降的變種方法以及它們朝向最小值的方向走勢,如圖所示,與小批量版本相比,SGD的方向噪聲很大。神經網絡的本質是什么?神經網絡本質是通過參數與激活函數來擬合特征與目標之間的真實函數關系。實現一個神經網絡最重要的是線性代數庫。樣本的空間分布左側是原始輸入空間下的分類圖,右側是轉換后的高維空間下的扭曲圖四.應用篇AI的應用場景和案例

溫馨提示

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

評論

0/150

提交評論