![新編數(shù)字圖像處理技術(shù)及應(yīng)用(修訂版)課件 第10章 圖像識別_第1頁](http://file4.renrendoc.com/view12/M06/3C/07/wKhkGWbS2ouAYHYjAAFQNoLbHpc864.jpg)
![新編數(shù)字圖像處理技術(shù)及應(yīng)用(修訂版)課件 第10章 圖像識別_第2頁](http://file4.renrendoc.com/view12/M06/3C/07/wKhkGWbS2ouAYHYjAAFQNoLbHpc8642.jpg)
![新編數(shù)字圖像處理技術(shù)及應(yīng)用(修訂版)課件 第10章 圖像識別_第3頁](http://file4.renrendoc.com/view12/M06/3C/07/wKhkGWbS2ouAYHYjAAFQNoLbHpc8643.jpg)
![新編數(shù)字圖像處理技術(shù)及應(yīng)用(修訂版)課件 第10章 圖像識別_第4頁](http://file4.renrendoc.com/view12/M06/3C/07/wKhkGWbS2ouAYHYjAAFQNoLbHpc8644.jpg)
![新編數(shù)字圖像處理技術(shù)及應(yīng)用(修訂版)課件 第10章 圖像識別_第5頁](http://file4.renrendoc.com/view12/M06/3C/07/wKhkGWbS2ouAYHYjAAFQNoLbHpc8645.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第10章
圖像識別
圖像識別是人工智能技術(shù)的重要組成部分,屬于模式識別和數(shù)字圖像處理的交叉領(lǐng)域。
人工智能是指讓機器能像人一樣感知外在事物并做出有目的、有意義的響應(yīng),其中的視感知就是類似視覺一樣“成像”并對“像”進行識別;
模式識別是對圖像或各種物理對象提取有效特征,進而加以判決分類的技術(shù),其對象有兩類:一是有直接形象,如圖像、文字等;二是無直接形象的數(shù)據(jù)、波形,如心電脈沖、地震波等。
因此,圖像識別實際上就是以圖像為對象的模式識別,或者說是對圖像中的感興趣目標進行分類鑒別的過程。學(xué)習目標1.理解模式識別與圖像識別的過程。2.闡述神經(jīng)網(wǎng)絡(luò)識別圖像的原理。3.了解深度學(xué)習基本原理及其在圖像識別中的應(yīng)用。本章內(nèi)容10.1.1圖像識別過程
10.1圖像識別基礎(chǔ)
模式識別的目的是使機器能夠模仿人在觀察認識事物或現(xiàn)象時把相似但又不完全相同的事物或現(xiàn)象分成不同類別,甚至從個別事物或現(xiàn)象推斷出總體的事物或現(xiàn)象。
從信息的形態(tài)轉(zhuǎn)換上講,模式識別過程往往是先從物理空間采集對象信號/信息使之進入模式空間;再在模式空間對感興趣的對象提取特征,從而轉(zhuǎn)換至特征空間;然后綜合利用多類特征對目標進行分類識別即到達類別空間。具體如圖10.1所示。10.1.1圖像識別過程
圖10.1模式識別過程10.1.2
模式識別方法
早期的模式識別主要是基于數(shù)學(xué)統(tǒng)計方法或語言學(xué)方法,借助于計算機對信息進行處理、判別、分類。(1)基于統(tǒng)計學(xué)方法的模式識別:往往是先把大量原始信息抽取為少量代表性的特征信息,再用這些特征信息作為判據(jù)對原始信息進行分類;(2)基于語言學(xué)方法的結(jié)構(gòu)模式識別:是把原始信息看作是由若干基本元素組成的,然后通過剖析這些基本元素,如果符合既定語法就識別出結(jié)果。
近些年,基于神經(jīng)網(wǎng)絡(luò)的方法發(fā)展迅速。圖10.2模式識別算法體系10.1.2
模式識別方法
統(tǒng)計模式識別法的分類器主要包括:1)線性分類器,通過尋找線性分類決策邊界來實現(xiàn)特征空間中的類別劃分;2)貝葉斯分類器,基于不同類樣本在特征空間中的概率分布不同,以逆概率推理的貝葉斯公式來得到類別劃分的決策結(jié)果;3)最近鄰分類器,把學(xué)習過程隱藏到了分類決策過程中,通過尋找訓(xùn)練集中與待分類樣本最相似的子集來實現(xiàn)分類決策;4)統(tǒng)計聚類分析,是無監(jiān)督學(xué)習的典型代表,目前多采用統(tǒng)計學(xué)習方法。10.1.2
模式識別方法
結(jié)構(gòu)模式識別通過結(jié)構(gòu)上的相似性來完成分類任務(wù),該類方法用符號來描述圖像特征,并對結(jié)構(gòu)特征進行句法類型判定。在聚類分析中采用結(jié)構(gòu)特征上的相似性完成樣本類別劃分即為結(jié)構(gòu)聚類算法。神經(jīng)網(wǎng)絡(luò)識別的本質(zhì)是高度非線性的統(tǒng)計分類器,并且隨著計算機技術(shù)的發(fā)展從淺層網(wǎng)絡(luò)向深度學(xué)習不斷演化。10.1.2
模式識別方法
模式識別方法的選擇取決于問題的性質(zhì):1)如果被識別的對象極其復(fù)雜,而且包含豐富的結(jié)構(gòu)信息,一般采用句法模式識別方法;2)當識別對象不是很復(fù)雜或不含明顯的結(jié)構(gòu)信息,一般采用統(tǒng)計模式識別方法。3)沒有固定狀態(tài)模型的,采用神經(jīng)網(wǎng)絡(luò)的方法。10.1.2
模式識別方法
(1)統(tǒng)計方法有較完善的理論基礎(chǔ),識別模式基元能力強,抗干擾能力強,應(yīng)用范圍廣,但不能反映模式的結(jié)構(gòu)特征,所以,難從整體角度考慮識別問題。(2)結(jié)構(gòu)模式識別,能反映模式的結(jié)構(gòu)特性,識別方便,可從簡單的基元開始描述模式的性質(zhì),但單純的句法模式識別方法沒有考慮環(huán)境噪聲干擾等不穩(wěn)定因素,易判別錯誤。(3)神經(jīng)網(wǎng)絡(luò)已從傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)、Hopfield網(wǎng)絡(luò)衍生到卷積神經(jīng)網(wǎng)絡(luò)、生成對抗網(wǎng)絡(luò)等,其優(yōu)點是模型高度非線性高,更接近現(xiàn)實世界,缺點是對硬件要求高、依賴于大量有代表性的數(shù)據(jù)。不同方法的優(yōu)缺點
10.1.3
圖像識別過程
考慮到在圖像處理領(lǐng)域主要采用的是統(tǒng)計模式識別法,這里給出基于統(tǒng)計模式識別的圖像識別過程,包括圖像數(shù)據(jù)獲取、圖像預(yù)處理、圖像信息特征抽取和判決或分類四部分,如圖10.3所示。圖10.3圖像識別過程(1)圖像數(shù)據(jù)獲取通過光學(xué)設(shè)備等測量、采樣和量化,用矩陣或向量表示反映現(xiàn)實世界本質(zhì)特性的一維波形、二維圖像或物理參數(shù)和邏輯值,這些像和值都屬于獲取到的數(shù)據(jù)。
常見的由一維波形構(gòu)成的圖像有:腦電圖、心電圖、機械振動波形圖等等;二維圖像有照片、地圖、指紋、文字、超聲影像等;物理參數(shù)和邏輯值有醫(yī)學(xué)診斷中的各種數(shù)據(jù)。
其中,所有能以矩陣或向量表示的、尚未進行其他后處理的數(shù)據(jù)即為原始圖像,稱為原圖像或源圖像。10.1.3
圖像識別過程
(2)圖像預(yù)處理圖像預(yù)處理的目的是降低噪聲影響、增強有用信息、復(fù)原退化的像質(zhì),以提高后續(xù)特征提取的準確度。
其技術(shù)涉及到課程前面各章的大部分內(nèi)容,如圖像復(fù)原、圖像增強、圖像變換。10.1.3
圖像識別過程
(3)圖像特征抽取所謂特征就是屬于某一對象特有的屬性,這些屬性需要被度量才能用于機器分類識別,該度量結(jié)果稱為這一對象的特征。這些特征可能是目標的形狀、紋理、顏色等等。
由若干特征組成的特征向量就成了識別該類事物的唯一依據(jù)。10.1.3
圖像識別過程
①可區(qū)分性,即不同類別對象應(yīng)該具有明顯的差異;②可靠性,即同類對象的特征值應(yīng)該較接近;③獨立性,描述一個對象所用的各個特征應(yīng)該彼此不相關(guān);④數(shù)量少,特征值的個數(shù)就是描述該對象的特征向量的維數(shù)。通常,用來訓(xùn)練分類器的樣本數(shù)往往隨著特征向量的維數(shù)呈指數(shù)關(guān)系增長,所以我們希望特征數(shù)量不要大。圖像中特征的特點(4) 判別分類就是把某事物歸入某一類,往往需要:1)建立該事物的特征“標準”;2)提取待判別事物的相關(guān)特征;3)將新提取的特征與“標準”特征比對,如果“一致”,那待判別事物就屬于該類事物,否則,還需要與其他特征比對直至做出判斷“是”或“否”。
當然,這里的一致是相對的。具體應(yīng)用中需要用判別函數(shù)和判別規(guī)則(或叫分類規(guī)則)來判斷。這一工作一般由分類器完成。10.1.3
圖像識別過程
分類器可以視作計算判別函數(shù)的一個“機器”,其任務(wù)是對每個所遇到的對象,按照給定的判別函數(shù)計算出該對象與各類別樣本對象的相似程度,然后把相似程度最高的兩個判別為同一類事物。關(guān)于分類器想一想:你學(xué)過哪些函數(shù)?線性、非線性、……想一想:你是怎么分類的呢?切分、種子點+并入……通常的做法是:先用一組已知的樣本對象來訓(xùn)練分類器,即對這些已知樣本進行特征提取,并將特征空間劃分為不同的決策域(決策域之間要界限分明),使得訓(xùn)練樣本本身的分類準確性最高。然后,對未知樣本做判定時,根據(jù)其所處界限的哪一側(cè)來判斷它屬于哪一類。
分類器的設(shè)計主要是基于機器學(xué)習的方法,新的研究熱點是基于深度人工神經(jīng)網(wǎng)絡(luò)(即深度學(xué)習)來構(gòu)建。10.1.4
圖像識別應(yīng)用
圖像識別是模式識別用的最多的一類,包括:(1)生物特征識別:利用生物特征來識別人的身份,現(xiàn)在已經(jīng)從科幻影片中的場景變成了現(xiàn)實。如指紋圖像識別、虹膜圖像識別發(fā)展到了更加復(fù)雜的人臉識別、手印識別、步態(tài)識別等方法。(2)目標跟蹤:大的方面可以應(yīng)用到導(dǎo)彈制導(dǎo)、自動駕駛等軍事領(lǐng)域,小的方面可以應(yīng)用到智能監(jiān)控、照相機笑臉識別、眼動控制等領(lǐng)域。(3)手勢識別機器視覺中,通過識別人手的姿勢和運動來完成對計算機系統(tǒng)的非接觸控制,手勢的檢測可以依據(jù)紅外檢測、運動和姿態(tài)傳感器、可見光視頻和其它傳感器實現(xiàn),Kinect、MYO和LeapMotion都是比較受關(guān)注技術(shù)和產(chǎn)品。(4)光學(xué)字符識別光學(xué)字符識別(OpticalCharacterRecognition,OCR)是最早發(fā)展的模式識別應(yīng)用之一,它可分為聯(lián)機識別和脫機識別,又可以分為手寫識別和印刷體識別。目前聯(lián)機手寫識別(掌上設(shè)備的手寫輸入)、脫機印刷體識別(掃描文件的OCR、PDF文件的拷貝)都發(fā)展到了一定的實用水平,比較困難的是脫機手寫識別。10.1.4
圖像識別應(yīng)用
(5)圖像搜索
通過圖像的內(nèi)容來進行檢索,而不是根據(jù)關(guān)鍵字檢索,也是模式識別在圖像處理方面的典型應(yīng)用。由于圖像本身的質(zhì)量差異較大,變化的情況也比較多,目前該領(lǐng)域還處于研究起步階段。10.1.4
圖像識別應(yīng)用
想一想:關(guān)于圖像識別,還有哪些應(yīng)用?疾病診斷、作物害蟲識別、種子篩選……10.2.1感知機神經(jīng)網(wǎng)絡(luò)
10.2神經(jīng)網(wǎng)絡(luò)識別有單層感知機和多層感知機。圖10.4所示為單層感知機結(jié)構(gòu),其可實現(xiàn)線性二分類。在二維平面上有兩類點,要對這兩類點進行分類需要找到樣本點的分類線,測試數(shù)據(jù)只要與這條分類線進行對比即可得出相應(yīng)的類別。該分類線叫做分類判別線(對于高維的情況則稱為分類判別面)。圖10.4二維單層感知機神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
(10.1)感知機在學(xué)習過程中對權(quán)值進行調(diào)整實際上就是在對分類線的斜率進行調(diào)整,最終穩(wěn)定下來,把斜率固定為某個數(shù),從而完成對感知機神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。但從分類的任務(wù)角度來講,這種學(xué)習實際上是一個有監(jiān)督的學(xué)習過程.10.2.1感知神經(jīng)網(wǎng)絡(luò)
其訓(xùn)練的過程如下:(1)首先對權(quán)、閾值賦初值,w_1(0),w_2(0),θ(0)。這些值可以任意賦,但一般都先賦較小的正值;(2)輸入樣本對{x_1,x_2;R},R為希望的分類結(jié)果;(3)根據(jù)活化函數(shù),計算實際的輸出結(jié)果;(4)對比實際輸出結(jié)果和希望的結(jié)果對權(quán)值和閾值進行調(diào)整;(5)返回(2),輸入新樣本進行訓(xùn)練,直至所有的樣本都分類正確為止。10.2.1感知神經(jīng)網(wǎng)絡(luò)
單層感知機對于線性不可分的問題無法進行正確地分類,最著名的例子就是“異或”問題。對此類線性不可分問題的解決可采用多層感知機網(wǎng)絡(luò),三層感知機如圖10.5所示。圖10.5三層感知機網(wǎng)絡(luò)結(jié)構(gòu)10.2.1感知神經(jīng)網(wǎng)絡(luò)
說明:三層感知機結(jié)構(gòu)中所有“層”被劃分為三類:輸入層、輸出層以及隱含層(隱層)。輸入層和輸出層一般只有一個,隱含層的數(shù)目可以根據(jù)需要設(shè)置若干個。
圖中的圓圈代表各個神經(jīng)元。輸入層的神經(jīng)元并不是嚴格意義上的神經(jīng)元,只起信息的傳遞作用并無權(quán)閾值的連接,也沒有激活函數(shù)。隱含層、輸出層的各神經(jīng)元與單層感知機神經(jīng)元的基本結(jié)構(gòu)類似,但是其激活函數(shù)有了更多的選擇范圍,只要是非線性的函數(shù)都可以進行選擇。10.2.1感知神經(jīng)網(wǎng)絡(luò)
10.2.2BP神經(jīng)網(wǎng)絡(luò)——基本結(jié)構(gòu)(1)BP神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)BP(BackPropagation)神經(jīng)網(wǎng)絡(luò)是一種多層的神經(jīng)網(wǎng)絡(luò),信息前向傳播、誤差后向傳播構(gòu)成了BP神經(jīng)網(wǎng)絡(luò)的獨特特點。BP神經(jīng)網(wǎng)路絡(luò)是一個多層的結(jié)構(gòu),通常以三層結(jié)構(gòu)為典型形式,在每個層級可以擁有多個神經(jīng)元。各個層級的神經(jīng)元結(jié)構(gòu)基本相同,活化函數(shù)可以相同,也可以不同。
三層基本結(jié)構(gòu)如圖10.6所示。圖10.6三層BP神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)10.2.2BP神經(jīng)網(wǎng)絡(luò)——基本結(jié)構(gòu)BP神經(jīng)網(wǎng)絡(luò)的算法流程如圖10.7所示。YN開始初始化各層的權(quán)、閾值設(shè)定神經(jīng)網(wǎng)絡(luò)指標(偏差平方和最?。┌凑辗聪騻鞑蕜t修正各層權(quán)值達到要求的性能指標嗎?結(jié)束圖10.7BP神經(jīng)網(wǎng)絡(luò)的算法流程圖10.2.2BP神經(jīng)網(wǎng)絡(luò)
以三層BP神經(jīng)網(wǎng)絡(luò)為例。
設(shè)為輸入;
為隱含層(第二層)的輸出(同時也是輸出層的輸入);為輸出層的輸出,也是整個網(wǎng)絡(luò)的輸出。
為輸入層到隱含層的權(quán)向量;
為隱含層到輸出層的權(quán)向量。
對于輸出層,有(10.2)(10.3)10.2.2BP神經(jīng)網(wǎng)絡(luò)——訓(xùn)練
對于隱含層,有(10.4)(10.5)在上面的式子中,net*為各層激活函數(shù)的輸入。Sigmoid函數(shù)可以根據(jù)實際情況靈活選擇,可以是單極性的,也可以是雙極性的。
在構(gòu)建好BP神經(jīng)網(wǎng)絡(luò)的架構(gòu)和各神經(jīng)元的輸入、輸出情況明確之后,即可訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)。10.2.2BP神經(jīng)網(wǎng)絡(luò)——訓(xùn)練
10.2.2BP神經(jīng)網(wǎng)絡(luò)——訓(xùn)練
出發(fā)點是:要使BP神經(jīng)網(wǎng)絡(luò)實際輸出與期望輸出的偏差平方和最小。通常用最小二乘法思想構(gòu)建算法來實現(xiàn)。首先確定訓(xùn)練網(wǎng)絡(luò)的目標———偏差平方和最小,即(10.6)式中,為期望的輸出,
為實際的輸出,分別為神經(jīng)元的權(quán)值、閾值。
訓(xùn)練過程就是求網(wǎng)絡(luò)中每層各個神經(jīng)元的權(quán)值、閾值,使網(wǎng)絡(luò)實際的偏差平方和最小。對于隱含層向輸出層的權(quán)值調(diào)整,有(10.7)對于輸入層到隱含層的權(quán)值調(diào)整,有(10.8)同理也可以得到閾值的調(diào)整(10.9)10.2.2BP神經(jīng)網(wǎng)絡(luò)——訓(xùn)練
在訓(xùn)練網(wǎng)絡(luò)的過程中,應(yīng)該按照負梯度方向進行,同時可以添加學(xué)習速率η,即(10.10)(10.11)其中(10.12)而(10.13)10.2.2BP神經(jīng)網(wǎng)絡(luò)——訓(xùn)練
最終有(10.14)
適當調(diào)整求導(dǎo)過程中的系數(shù),并不影響最終結(jié)果,可使結(jié)果系數(shù)為1。將式(10.12)至式(10.14)代入式(10.10),可得隱含層到輸出層的權(quán)值調(diào)整公式為(10.15)式中10.2.2BP神經(jīng)網(wǎng)絡(luò)——訓(xùn)練
同理,輸入層到隱含層的權(quán)值調(diào)整公式為(10.16)同樣地,式中,
為輸入層到隱含層的總的偏差,只不過此處的學(xué)習速率η與隱含層到輸出層的學(xué)習速率不一定相同??偟膩碚f,權(quán)值修正量包含三部分:學(xué)習速率、輸出偏差及當前層的輸入,充分考慮到了信息在傳播過程中的誤差積累。另外,權(quán)值的修正通過負梯度方向保證了在整個調(diào)整過程中誤差是逐步減少的。10.2.2BP神經(jīng)網(wǎng)絡(luò)——訓(xùn)練
10.2神經(jīng)網(wǎng)絡(luò)識別BP神經(jīng)網(wǎng)絡(luò)的主要特點:①較強的非線性映射能力:實現(xiàn)了從輸入到輸出的非線性映射功能?,F(xiàn)已有證明,三層BP神經(jīng)網(wǎng)絡(luò)幾乎可以逼近任何非線性函數(shù),對于模型機制不明朗的問題有很好的解決方案。②自適應(yīng)和自學(xué)習能力:網(wǎng)絡(luò)訓(xùn)練時采用最快下降法,通過誤差的反向傳播來進行權(quán)值、閾值調(diào)整,能夠?qū)斎搿⑤敵鰯?shù)據(jù)間的規(guī)律進行優(yōu)化提取,具備自適應(yīng)和自學(xué)習能力。③較好的泛化和容錯能力:與感知機相比,BP神經(jīng)網(wǎng)絡(luò)的泛化能力有很大提高。尤其是BP神經(jīng)網(wǎng)絡(luò)在局部神經(jīng)元受到破壞后對整個神經(jīng)網(wǎng)絡(luò)工作的影響并不大,體現(xiàn)了一定的容錯能力。10.3卷積神經(jīng)網(wǎng)絡(luò)圖像識別根據(jù)Bengio的定義,深層網(wǎng)絡(luò)由多層自適應(yīng)非線性單元組成,即非線性模塊的級聯(lián),在所有層次上都包含可訓(xùn)練的參數(shù)。理論上深層網(wǎng)絡(luò)和淺層網(wǎng)絡(luò)的數(shù)學(xué)描述是相似的,都能夠通過函數(shù)逼近表達數(shù)據(jù)的內(nèi)在關(guān)系和本質(zhì)特征。圖10.8淺層網(wǎng)絡(luò)結(jié)構(gòu)示例圖10.9深層網(wǎng)絡(luò)結(jié)構(gòu)示例10.3卷積神經(jīng)網(wǎng)絡(luò)圖像識別
常用的深度學(xué)習網(wǎng)絡(luò)結(jié)構(gòu)有堆棧自動編碼器(Stackedauto-encoders,SAE)、深度信念網(wǎng)絡(luò)(Deepbeliefnetworks,DBN)、卷積神經(jīng)網(wǎng)絡(luò)(Convolutionneuralnetworks,CNN)等。
在圖像識別領(lǐng)域,尤以CNN最為常用。CNN最初是受視覺神經(jīng)機制的啟發(fā)為識別二維形狀而設(shè)計的一個多層感知器,這種網(wǎng)絡(luò)結(jié)構(gòu)對平移、比例縮放、傾斜或者其它形式的變形具有高度不變性。
10.3卷積神經(jīng)網(wǎng)絡(luò)圖像識別
CNN避免了傳統(tǒng)方法對圖像預(yù)處理,其結(jié)構(gòu)有三個亮點:
(1)局部感受野:一般的深度神經(jīng)網(wǎng)絡(luò),往往會把圖像的每個像點連接到全連接層的每個神經(jīng)元中,而CNN則是把每個隱藏節(jié)點只連接到圖像的某個局部區(qū)域,所以減少了參數(shù)訓(xùn)練的數(shù)量。例如,一張1024×720的圖像,使用9×9的感受野,則只需要81個權(quán)值參數(shù)。
(2)共享權(quán)值:在CNN的卷積層中,神經(jīng)元對應(yīng)的權(quán)值是相同的,因此可以通過共享權(quán)值減少訓(xùn)練的參數(shù)量。共享的權(quán)值和偏置也叫卷積核或濾波器。一個卷積層可以有多個不同的卷積核,而每個卷積核都對應(yīng)一個濾波后映射的新圖像(特征圖),同一特征圖中的每個像元都來自完全相同的卷積核,這就是卷積核的權(quán)值共享。通過“權(quán)值共享”又進一步減少了參數(shù)?。?)池化:待處理圖像與卷積后的圖像都比較大,沒必要所有處理都對原圖像進行,僅需獲得圖像的特征即可。因此類似圖像壓縮,對圖像卷積后,通過下采樣來調(diào)整圖像的大小。10.3.1卷積神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)
卷積神經(jīng)網(wǎng)絡(luò)包括數(shù)據(jù)輸入層、卷積計算層、ReLu激勵層、池化層與全連接層等。(1)數(shù)據(jù)輸入層:對原始圖像數(shù)據(jù)進行預(yù)處理,包括:1)去均值:把輸入數(shù)據(jù)各個維度都中心化為0,其目的就是把樣本的中心拉回到坐標系原點上。2)歸一化:幅度歸一化到同樣的范圍,即減少各維度數(shù)據(jù)取值范圍的差異而帶來的干擾,如,現(xiàn)有兩個維度的特征A和B,A范圍是0到10,而B范圍是0到10000,如果直接使用這兩個特征是有問題的,必須歸一化,即A和B的數(shù)據(jù)都變?yōu)?到1的范圍。3)PCA/白化:采用PCA降維;白化是對數(shù)據(jù)各個特征軸上的幅度歸一化。(2)卷積計算層卷積計算層是卷積神經(jīng)網(wǎng)絡(luò)最重要的一個層次。它對輸入數(shù)據(jù)進行特征提取,其內(nèi)部包含多個卷積核。卷積的過程就是讓卷積核在輸入圖像上依次滑動,滑動方向為從左到右,從上到下;每滑動一次,卷積核與其滑窗位置對應(yīng)的輸入圖像像元做一次點積計算并得到一個數(shù)值,二維卷積計算如圖10.10所示。圖10.10二維卷積計算示意圖10.3.1卷積神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)3)ReLu激勵層CNN采用的激勵函數(shù)一般為ReLU(TheRectifiedLinearUnit,修正線性單元),如圖10.11,它的特點是收斂快,求梯度簡單,但較脆弱。如果失效,可使用LeakyReLU。圖10.11ReLu激勵函數(shù)10.3.1卷積神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)4)池化層通常在卷積層之后,會有一個池化層(Pooling),也被稱作下采樣層(Subsampling),下采樣層可以太大降低特征的維度,減少計算量,同時可以避免過擬合問題。
池化一般有兩種方式:最大池化(MaxPooling)與平均池化(MeanPooling)。池化層操作不改變模型的深度,但可減少空間尺寸,最大池化層的操作過程如圖10.12所示。圖10.12最大池化層的操作過程10.3.1卷積神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)5)全連接層兩層之間所有神經(jīng)元都有權(quán)重連接,通常全連接層在卷積神經(jīng)網(wǎng)絡(luò)尾部,與跟傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)神經(jīng)元的連接方式相同。10.3.1卷積神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)10.3.2卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練
CNN本質(zhì)上是一種輸入到輸出的映射,只要用已知的模式對卷積網(wǎng)絡(luò)加以訓(xùn)練,網(wǎng)絡(luò)就會習得輸入輸出對之間的映射能力。
卷積網(wǎng)絡(luò)執(zhí)行的是有監(jiān)督訓(xùn)練,所以其樣本集是由形如:(輸入向量,理想輸出向量)的向量對構(gòu)成的。
開始訓(xùn)練前,所有的權(quán)都應(yīng)該用一些不同的小隨機數(shù)進行初始化,用來保證網(wǎng)絡(luò)不會因權(quán)值過大而進入飽和狀態(tài),從而導(dǎo)致訓(xùn)練失敗。假設(shè)輸入層、中間層和輸出層的單元數(shù)分別為N、L和M。X=(x_0,x_1,?,x_N)為加到網(wǎng)絡(luò)的輸入矢量,H=(h_0,h_1,?,h_L)為中間層輸出矢量,Y=(y_0,y_1,?,y_M)是網(wǎng)絡(luò)的實際輸出矢量,D=(d_0,d_1,?,d_M)表示訓(xùn)練組中各模式的目標輸出矢量,輸出單元i到隱含層單元j的權(quán)值是Vij,而隱單元j到輸出單元k的權(quán)值是Wjk。另θ_k和φ_j分別表示輸出單元和隱含單元的閾值。中間層各單元的輸出為:(10.17)而輸出層各單元的輸出:(10.18)其中f(.)是激勵函數(shù)。在上述條件下,網(wǎng)絡(luò)的訓(xùn)練過程如下:10.3.2卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練(1)選定訓(xùn)練組。從樣本集中分別隨機選取訓(xùn)練組。(2)將各權(quán)值Vij,Wjk與閾值θ_k和φ_j置成接近于0的隨機值,并初始化精度控制參數(shù)ε和學(xué)習率a。(3)從訓(xùn)練組中取一個輸入模式X輸入到網(wǎng)絡(luò),并給定它的目標輸出矢量D。(4)利用式(10.17)計算中間層輸出量H,再根據(jù)式(10.18)計算出網(wǎng)絡(luò)的實際輸出矢量Y。(5)將輸出矢量中的元素y_k與目標矢量中的元素d_k進行比較,計算出M個輸出誤差項如下。(10.19)對中間層的隱單元也計算出L個誤差項式,即:(10.20)10.3.2卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練(6)依次計算出各權(quán)值的調(diào)整量:(10.21)(10.22)和閾值的調(diào)整量:(10.23)(10.24)(7)
調(diào)整權(quán)值:(10.25)(10.26)
調(diào)整閾值:(10.27)(10.28)10.3.2卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練(8)當k每經(jīng)歷1至M后,判斷指標是否滿足精度要求:E≤ε,其中E是總誤差函數(shù),若不滿足,則返回(3),繼續(xù)迭代。如果滿足進入下一步。(9)訓(xùn)練結(jié)束,將權(quán)值和閾值保存在結(jié)構(gòu)參數(shù)文件中。10.3.2卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練10.3.3典型卷積神經(jīng)網(wǎng)絡(luò)模型(1)Lenet5LeNet-5是一種典型的卷積神經(jīng)網(wǎng)絡(luò),它主要用于手寫字和印刷字識別,其結(jié)構(gòu)圖如圖10.13所示。圖10.13LeNet-5網(wǎng)絡(luò)結(jié)構(gòu)圖中,INPUT表示網(wǎng)絡(luò)的輸入層,S2層為下采樣層,C3層屬于卷積層,S4是一個下采樣層,C5是最后一個卷積層,F(xiàn)6層為全連接層。(2)AlexNet網(wǎng)絡(luò)AlexNet模型-共有八層,含五個卷積層和三個全連接層。對于每個卷積層,均包含ReLU激活函數(shù)和局部響應(yīng)歸一化處理,然后是下采樣操作。其結(jié)構(gòu)如圖10.14所示。圖10.14AlexNet模型結(jié)構(gòu)
該網(wǎng)絡(luò)參數(shù)超過6000萬,雖ILSVRC比賽含有大量的訓(xùn)練數(shù)據(jù),但仍然很難完成對如此龐大參數(shù)的完全訓(xùn)練,導(dǎo)致嚴重的過擬合。為了解決過擬合問題,AlexNet網(wǎng)絡(luò)巧妙地使用圖像增強和隨機舍棄(dropout)兩種方法處理。10.3.3典型卷積神經(jīng)網(wǎng)絡(luò)模型表10.1AlexNet網(wǎng)絡(luò)結(jié)構(gòu)10.3.3典型卷積神經(jīng)網(wǎng)絡(luò)模型(3)ResNet
深度學(xué)習并不是愈深(復(fù)雜,參數(shù)多)表達能力愈強。是時尚,深度CNN達到一定深度后再一味地增加層數(shù)并不能帶來進一步地分類性能的提高,反而會導(dǎo)致網(wǎng)絡(luò)收斂變得更慢,測試集的分類準確率也變得更差。為此,ResNet通過使用多個有參層來學(xué)習輸入輸出之間的殘差表示,其基本結(jié)構(gòu)如圖10.15所示。10.3.3典型卷積神經(jīng)網(wǎng)絡(luò)模型圖10.15殘差卷積基本結(jié)構(gòu)圖10.16ResNet34與50/101/152的block在普通卷積過程中加入了一個x的恒等映射(identitymapping),稱為skipconnections或者shortcutconnections。
將輸入設(shè)為x,將某一有參網(wǎng)絡(luò)層設(shè)為H,那么以x為輸入的該層的輸出為H(x)。殘差學(xué)習單元通過跳連接在輸入、輸出之間建立了一條直接通道,從而使得有參層集中精力學(xué)習輸入、輸出之間的殘差。當輸入、輸出通道數(shù)相同時,可以直接使用X進行相加。而當它們之間的通道數(shù)目不同時,可通過使用1x1的卷積來表示W(wǎng)s映射,從而使得最終輸入與輸出的通道達到一致,如圖10.16所示。10.3.3典型卷積神經(jīng)網(wǎng)絡(luò)模型10.4.1感知機實現(xiàn)手寫字符識別10.4圖像識別應(yīng)用:手寫數(shù)字識別本例采用的數(shù)據(jù)集為MNIST數(shù)據(jù)集,下載網(wǎng)址為:/exdb/mnist/。
該數(shù)據(jù)集包括70,000個手寫數(shù)字0-9的圖像。包含訓(xùn)練樣本集和測試樣本集兩大部分,其中文件Trainingsetimages:train-images-idx3-ubyte.gz(9.9MB,解壓后47MB,包含60,000個樣本),Trainingsetlabels:train-labels-idx1-ubyte.gz(29KB,解壓后60KB,包含60,000個標簽);Testsetimages:t10k-images-idx3-ubyte.gz(1.6MB,解壓后7.8MB,包含10,000個樣本),Testsetlabels:t10k-labels-idx1-ubyte.gz(5KB,解壓后10KB,包含10,000個標簽)。10.4圖像識別應(yīng)用:手寫數(shù)字識別參考代碼如下:%感知器算法手寫字符識別Perceptron.mclearvariables;clc;%讀取數(shù)據(jù)loadmnist_double.mattest_labels=vec2ind(test_labels)-1;%轉(zhuǎn)換one-hot編碼為字符數(shù)字train_labels=vec2ind(train_labels)-1;%設(shè)定樣本數(shù)量train_num=1000;test_num=200;%臨時變量以及各個感知器參數(shù)j=1;lr=0.01;%學(xué)習率epoch=10;%設(shè)定訓(xùn)練多少輪number=[8,4];%要取的數(shù)字組合
%提取數(shù)據(jù)中標簽為任意組合的樣本,共計200個;由于數(shù)據(jù)本身打亂過,因此可以直接取200個而不考慮樣本不均衡問題fori=1:10000iftest_labels(i)==number(1)||test_labels(i)==number(2)data(:,:,j)=test_images(:,:,i);label(j)=test_labels(i);%取相應(yīng)標簽
j=j+1;ifj>train_num+test_numbreak;endendend%由于感知器輸出結(jié)果僅為0、1,因此要將標簽進行轉(zhuǎn)換;本程序中,由于matlab計算不等式相對容易,因此沒有對樣本進行規(guī)范化;由于沒有進行規(guī)范化,后面更新權(quán)值w需要借助標簽,因此標簽需要置-1和1fork=1:train_num+test_numiflabel(k)==number(1)label(k)=-1;endiflabel(k)==number(2)label(k)=1;endend10.4圖像識別應(yīng)用:手寫數(shù)字識別data_=reshape(data,784,train_num+test_num);data_=data_';test_data=[data_(train_num+1:train_num+test_num,:),ones(test_num,1)];%這里對測試數(shù)據(jù)也進行增廣變換%訓(xùn)練權(quán)值w=perceptionLearn(data_(1:train_num,:),label(1:train_num),lr,epoch);%測試(預(yù)測)fork=1:test_numiftest_data(k,:)*w'>0result(k)=1;elseresult(k)=-1;endend%輸出預(yù)測的準確率acc=0.;forsample=1:test_numifresult(sample)==label(train_num+sample)acc=acc+1;endendfprintf('精確度為:%5.2f%%\n',(acc/test_num)*100);%perceptionLearn.m%函數(shù)輸入:數(shù)據(jù)(行向量),標簽,學(xué)習率,終止輪次;輸出:訓(xùn)練得到的權(quán)值向量;訓(xùn)練方法:單樣本修正,學(xué)習率(步長)采用了固定值
function[w]=perceptionLearn(x,y,learningRate,maxEpoch)[rows,cols]=size(x);x=[x,ones(rows,1)];%增廣w=zeros(1,cols+1);%同上
forepoch=1:maxEpoch%不可分情況下整體迭代輪次
flag=true;%標志位真
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- epc建設(shè)合同范本
- 助學(xué)贈與合同范本
- 為學(xué)校安裝玻璃合同范例
- 中銀航空租賃股合同范本
- 高檔包裝紙盒及收納盒申請報告可行性研究報告
- 占用土地合同范例
- 個人鐵罐轉(zhuǎn)讓合同范例
- 助理就業(yè)合同范本
- 與公司協(xié)議合同范本
- 《合同法》合同范本
- 中國心理衛(wèi)生協(xié)會家庭教育指導(dǎo)師參考試題庫及答案
- 智能廣告投放技術(shù)方案
- 知識產(chǎn)權(quán)保護執(zhí)法
- 高質(zhì)量社區(qū)建設(shè)的路徑與探索
- 數(shù)字化時代的酒店員工培訓(xùn):技能升級
- 足球守門員撲救技巧:撲救結(jié)合守護球門安全
- 《學(xué)術(shù)規(guī)范和論文寫作》課件全套 第1-10章 知:認識研究與論文寫作 - 引文規(guī)范
- 起重機更換卷筒施工方案
- 01智慧物流信息技術(shù)概述
- 精神發(fā)育遲滯的護理查房
- 茶多糖和茶多酚的降血糖作用研究
評論
0/150
提交評論