計(jì)算機(jī)視覺(jué) 課件 第5、6章 圖像分類(lèi)、神經(jīng)網(wǎng)絡(luò)基礎(chǔ)_第1頁(yè)
計(jì)算機(jī)視覺(jué) 課件 第5、6章 圖像分類(lèi)、神經(jīng)網(wǎng)絡(luò)基礎(chǔ)_第2頁(yè)
計(jì)算機(jī)視覺(jué) 課件 第5、6章 圖像分類(lèi)、神經(jīng)網(wǎng)絡(luò)基礎(chǔ)_第3頁(yè)
計(jì)算機(jī)視覺(jué) 課件 第5、6章 圖像分類(lèi)、神經(jīng)網(wǎng)絡(luò)基礎(chǔ)_第4頁(yè)
計(jì)算機(jī)視覺(jué) 課件 第5、6章 圖像分類(lèi)、神經(jīng)網(wǎng)絡(luò)基礎(chǔ)_第5頁(yè)
已閱讀5頁(yè),還剩99頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第5章圖像分類(lèi)5目

錄5.1K-最近鄰分類(lèi)5.25.3樸素貝葉斯分類(lèi)SVM分類(lèi)5.4計(jì)算機(jī)視覺(jué)分類(lèi)器預(yù)測(cè)結(jié)果評(píng)價(jià)圖像分類(lèi):計(jì)算機(jī)視覺(jué)的核心任務(wù)(假設(shè)給定的離散標(biāo)簽集){狗,貓,卡車(chē),飛機(jī),…}cat計(jì)算機(jī)視覺(jué)問(wèn)題:語(yǔ)義間隔貓的圖像寬度為248像素,高度為400像素,并具有紅綠藍(lán)三個(gè)顏色

通道(通常稱(chēng)為RGB)。因此,圖

像由248×400×3個(gè)數(shù)字組成或總

共297600個(gè)數(shù)字,每個(gè)數(shù)字是一個(gè)從0(黑色)到255(白色)的整數(shù)。圖像分類(lèi)的任務(wù)是將這接近30萬(wàn)個(gè)

數(shù)字變成一個(gè)單一的標(biāo)簽,如“貓(cat)”。計(jì)算機(jī)視覺(jué)圖像識(shí)別的難點(diǎn)挑戰(zhàn):視角變化挑戰(zhàn):光照的變化計(jì)算機(jī)視覺(jué)挑戰(zhàn):變形挑戰(zhàn):遮擋計(jì)算機(jī)視覺(jué)挑戰(zhàn):背景混亂挑戰(zhàn):組內(nèi)變異計(jì)算機(jī)視覺(jué)傳統(tǒng)的圖像分類(lèi)通過(guò)特征描述來(lái)完成,比如識(shí)別一只貓,就是提取貓的輪廓,尖尖的就是兩個(gè)耳朵,長(zhǎng)的是尾巴,四肢和毛發(fā)等都有對(duì)應(yīng)的特征。但是,如果出現(xiàn)了遮擋,變形,光照等的變化,那么這些識(shí)別貓的規(guī)則可能就不起作用了。計(jì)算機(jī)視覺(jué)為了克服傳統(tǒng)方法在圖像分類(lèi)問(wèn)題上的弊端,采用數(shù)據(jù)驅(qū)動(dòng)的方法可以更好地讓計(jì)算機(jī)理解圖像的內(nèi)容。用大量貓的圖像訓(xùn)練出一個(gè)可以自動(dòng)分類(lèi)的函數(shù),給這個(gè)訓(xùn)練好的函數(shù)輸入未知的圖像,然后輸出一個(gè)標(biāo)簽(也就是圖像的分類(lèi)是什么,是貓還是狗)。使用兩個(gè)函數(shù),一個(gè)訓(xùn)練函數(shù),一個(gè)預(yù)測(cè)函數(shù)。訓(xùn)練函數(shù)接收?qǐng)D像和圖像所屬的分類(lèi)(也就是標(biāo)簽),經(jīng)過(guò)訓(xùn)練后返回一個(gè)模型;預(yù)測(cè)函數(shù)接收訓(xùn)練好的模型和待分類(lèi)的圖像,經(jīng)過(guò)運(yùn)算返回預(yù)測(cè)的分類(lèi)標(biāo)簽。圖像分類(lèi)流程如下:輸入:輸入是包含N個(gè)圖像的集合,每個(gè)圖像的標(biāo)簽是K種分類(lèi)標(biāo)簽中的一種,這個(gè)集合稱(chēng)為訓(xùn)練集。學(xué)習(xí):這一步的任務(wù)是使用訓(xùn)練集來(lái)學(xué)習(xí)每個(gè)類(lèi)的特征是什么,該步驟也稱(chēng)為訓(xùn)練分類(lèi)器或者學(xué)習(xí)一個(gè)模型。評(píng)價(jià):讓分類(lèi)器來(lái)預(yù)測(cè)它未曾見(jiàn)過(guò)的圖像的分類(lèi)標(biāo)簽,把分類(lèi)器預(yù)測(cè)的標(biāo)簽和圖像真實(shí)的分類(lèi)標(biāo)簽對(duì)比,并以此來(lái)評(píng)價(jià)分類(lèi)器的質(zhì)量。計(jì)算機(jī)視覺(jué)5.1

K-NN分類(lèi)法5.1.1最近鄰分類(lèi)法最鄰近分類(lèi)思想:將測(cè)試圖像和訓(xùn)練集中每一幅圖像做比較,然后將它認(rèn)為最相似的那個(gè)訓(xùn)練集圖像的標(biāo)簽賦給測(cè)試圖像。距離越遠(yuǎn),代表圖像之間的相似度越低;距離越近,代表兩幅圖像越相似。我們?nèi)绾伪容^圖像?距離度量是多少?計(jì)算機(jī)視覺(jué)1.L1距離也是曼哈頓(Manhattan)距離2.L2距離也叫歐式(Euclidean)距離計(jì)算出L1距離為456,L2距離為162.11。計(jì)算機(jī)視覺(jué)5.1.2

K最近鄰分類(lèi)法K-NN分類(lèi)思想:計(jì)算圖像A與訓(xùn)練集中所有圖像之間的距離,取出與該圖像距離最近的k幅圖像,然后統(tǒng)計(jì)這k幅圖像中所屬比例最大的分類(lèi),則

圖像A屬于該分類(lèi)。通俗地講,如果與圖像A距離最近的幾幅圖像都是狗,那么圖像A的類(lèi)別標(biāo)簽也是狗。K-NN圖像分類(lèi)算法流程如下:計(jì)算當(dāng)前測(cè)試圖像與訓(xùn)練集中所有圖像之間的距離;按照距離遞增次序排序;選取與當(dāng)前測(cè)試圖像距離最近的k幅圖像;統(tǒng)計(jì)前k幅圖的分類(lèi),即計(jì)算這k幅圖所在類(lèi)別的出現(xiàn)頻率;將前k幅圖像中出現(xiàn)頻率最高的類(lèi)別作為當(dāng)前測(cè)試圖像的預(yù)測(cè)分類(lèi)。計(jì)算機(jī)視覺(jué)示例數(shù)據(jù)集:CIFAR-1010個(gè)標(biāo)簽50000張訓(xùn)練圖像,每個(gè)圖像都很?。?2x3210000張測(cè)試圖像。計(jì)算機(jī)視覺(jué)將每個(gè)測(cè)試圖像(第一列),與訓(xùn)練集中每一幅圖像做比較,根據(jù)像素距離計(jì)算出最近的10張圖片(行是最近鄰的示例)。統(tǒng)計(jì)這10幅圖所在類(lèi)別的出現(xiàn)頻率,將出現(xiàn)頻率最高的類(lèi)別作為當(dāng)前測(cè)試圖像的預(yù)測(cè)分類(lèi).K-NN中如何k值?計(jì)算機(jī)視覺(jué)K值是試出來(lái)的。首先將數(shù)據(jù)分為訓(xùn)練數(shù)據(jù)與測(cè)試數(shù)據(jù):當(dāng)整個(gè)訓(xùn)練數(shù)據(jù)被我們用來(lái)訓(xùn)練并且k=1時(shí),整個(gè)訓(xùn)練數(shù)據(jù)的準(zhǔn)確率都是100%的,這樣沒(méi)辦法看出我們算法的表現(xiàn)能力,所以我們要將訓(xùn)練數(shù)據(jù)分為訓(xùn)練數(shù)據(jù)與驗(yàn)證數(shù)據(jù),并且只訓(xùn)練訓(xùn)練數(shù)據(jù),在驗(yàn)證數(shù)據(jù)上進(jìn)行驗(yàn)證,以了解我們訓(xùn)練數(shù)據(jù)的算法泛化能力(準(zhǔn)確率):計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)驗(yàn)證數(shù)據(jù)

用于調(diào)整超參數(shù)注意:在超參數(shù)調(diào)優(yōu)的過(guò)程中決不能使用測(cè)試集來(lái)進(jìn)行調(diào)優(yōu),因?yàn)檫@樣會(huì)使模型對(duì)測(cè)試集過(guò)擬合,降低模型的泛化能力。所以測(cè)試數(shù)據(jù)集只能再進(jìn)一步,我們可以將訓(xùn)練數(shù)據(jù)分為x份,使每一份數(shù)據(jù)都做一次驗(yàn)證數(shù)據(jù),這樣我們就得到了x個(gè)準(zhǔn)確率,取其中的平均值,就得到了當(dāng)k取任意值時(shí)的準(zhǔn)確率如何,這樣再選擇準(zhǔn)確率最高時(shí)的k值,就得到了一個(gè)表現(xiàn)最為良好的算法:使用一次,即在訓(xùn)練完成后評(píng)價(jià)最終模型時(shí)使用。圖是使用5-fold

cross-validation,取不同的k值時(shí),得到的accuracy曲線(因?yàn)槭?-foldcross-validation,所以在每個(gè)k值上有5個(gè)取值,通常取其均值作為此時(shí)的準(zhǔn)確度)(似乎k~=7最適合此數(shù)據(jù))計(jì)算機(jī)視覺(jué)5.2貝葉斯分類(lèi)器計(jì)算機(jī)視覺(jué)樸素貝葉斯分類(lèi)(Naive

Bayes

Classifier)發(fā)源于古典數(shù)學(xué)理論,利用Bayes定理來(lái)預(yù)測(cè)一個(gè)未知類(lèi)別的樣本屬于各個(gè)類(lèi)別的可能性,選擇其中可能性最大的一個(gè)類(lèi)別作為該樣本的最終類(lèi)別。在樸素貝葉斯分類(lèi)模型中,它將為每一個(gè)類(lèi)別的特征向量建立服從正態(tài)分布的函數(shù),給定訓(xùn)練數(shù)據(jù),算法將會(huì)估計(jì)每一個(gè)類(lèi)別的向量均值和方差矩陣,然后根據(jù)這些進(jìn)行預(yù)測(cè)計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)5.2.4樸素貝葉斯分類(lèi)分類(lèi)模型定義如下:該算法的特點(diǎn)為:如果沒(méi)有很多數(shù)據(jù),該模型會(huì)比很多復(fù)雜的模型獲得更好的性能,因?yàn)閺?fù)雜的模型用了太多假設(shè),以致產(chǎn)生欠擬合計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)5.2.5樸素貝葉斯分類(lèi)實(shí)例:檢測(cè)SNS社區(qū)中不真實(shí)賬號(hào)下面討論一個(gè)使用樸素貝葉斯分類(lèi)解決實(shí)際問(wèn)題的例子,為了簡(jiǎn)單起見(jiàn),對(duì)例子中的數(shù)據(jù)做了適當(dāng)?shù)暮?jiǎn)化。問(wèn)題是這樣的,對(duì)于SNS社區(qū)來(lái)說(shuō),不真實(shí)賬號(hào)(使用虛假身份或用戶(hù)的小號(hào))是一個(gè)普遍存在的問(wèn)題,作為SNS社區(qū)的運(yùn)營(yíng)商,希望可以檢測(cè)出這些不真實(shí)賬號(hào),從而在一些運(yùn)營(yíng)分析報(bào)告中避免這些賬號(hào)的干擾,亦可以加強(qiáng)對(duì)SNS社區(qū)的了解與監(jiān)管。如果通過(guò)純?nèi)斯z測(cè),需要耗費(fèi)大量的人力,效率也十分低下,如能引入自動(dòng)檢測(cè)機(jī)制,必將大大提升工作效率。這個(gè)問(wèn)題說(shuō)白了,就是要將社區(qū)中所有賬號(hào)在真實(shí)賬號(hào)和不真實(shí)賬號(hào)兩個(gè)類(lèi)別上進(jìn)行分類(lèi),下面我們一步一步實(shí)現(xiàn)這個(gè)過(guò)程。計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)5.3

SVM分類(lèi)器例子:假設(shè)有一堆蘋(píng)果,需要將蘋(píng)果分成兩部分,一部分又大又好看,賣(mài)的貴一點(diǎn),另一部分又小又不好看,賣(mài)的便宜點(diǎn)。實(shí)心圓表示又小又不好看的蘋(píng)果,空心圓表示又大又好看的蘋(píng)果。從圖中可以看出,兩類(lèi)蘋(píng)果中間有個(gè)明顯的分界,SVM研究的是求一個(gè)能夠?qū)⑸厦鎯刹糠滞耆_分開(kāi)的分界線計(jì)算機(jī)視覺(jué)對(duì)于人類(lèi)而言,這兩部分蘋(píng)果之間的分界是顯而易見(jiàn)的,但對(duì)于計(jì)算機(jī)而言,怎么確定這兩部分蘋(píng)果的分類(lèi)界線,或者說(shuō)計(jì)算機(jī)通過(guò)什么標(biāo)準(zhǔn)來(lái)確定劃分的直線。直觀上,可以看出分類(lèi)界線A和B將數(shù)據(jù)集完全分開(kāi)了,C分割后還存在誤分類(lèi)點(diǎn)。對(duì)于SVM來(lái)說(shuō),需要找到一個(gè)最優(yōu)的直線。SVM將誤分類(lèi)的點(diǎn)數(shù)作為評(píng)判標(biāo)準(zhǔn),誤分類(lèi)點(diǎn)越多,分類(lèi)直線性能越差,誤分類(lèi)點(diǎn)為零,就是一條好的分類(lèi)直線。A和B兩條分類(lèi)界線都沒(méi)有誤分類(lèi)點(diǎn),那么,哪一條線是最優(yōu)分類(lèi)界線呢?計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)假設(shè)有多個(gè)二維向量:每個(gè)二維向量在x1-x2平面坐標(biāo)系中表現(xiàn)為一個(gè)點(diǎn),分類(lèi)的目標(biāo)是使用一條直線把這些點(diǎn)分成兩類(lèi),從圖中可以看出,兩類(lèi)中距離最近的點(diǎn)分別為Xi和Xj,因此要尋找的分割直線在Xi和Xj的中間,即Xi和Xj到直線的距離都為d,當(dāng)d取得最大值的時(shí)候,這條直線就是要找的分類(lèi)界線。在x1-x2坐標(biāo)系中,直線的一般表達(dá)式為寫(xiě)成向量形式:根據(jù)點(diǎn)到直線的距離公式,點(diǎn)Xi和Xj到分類(lèi)直線d的距離為:由于d是最短距離,對(duì)于所有點(diǎn)均滿(mǎn)足:尋找最優(yōu)分類(lèi)直線的問(wèn)題就等效轉(zhuǎn)換為求解d的最大值計(jì)算機(jī)視覺(jué)SVM需要尋找一個(gè)最優(yōu)的決策邊界,也叫分類(lèi)超平面,使之距離兩個(gè)類(lèi)

別中最近的樣本最遠(yuǎn)。圖中有3個(gè)點(diǎn)到?jīng)Q策邊界距離相同,這3個(gè)點(diǎn)叫做支持向量(Support

Vector)。平行于決策邊界的兩條直線之間的距離(2d)稱(chēng)為margin(間隔),SVM的目的是要最大化margin。上述的分類(lèi)模型為Hard

Margin

SVM計(jì)算機(jī)視覺(jué)分類(lèi)問(wèn)題最理想的狀態(tài)是樣本在向量空間中都是線性可分的,這樣可以清晰無(wú)誤地把它們分隔成不同的類(lèi)別——采用線性可分硬間隔SVM。當(dāng)存在噪點(diǎn)的時(shí)候,可以容忍少數(shù)不能被正確劃分的樣本,只要大多數(shù)線性可分就好——采用線性軟間隔SVM樣本點(diǎn)出現(xiàn)混肴的情況計(jì)算機(jī)視覺(jué)樣本交錯(cuò)的情況分類(lèi)問(wèn)題非線性的時(shí)候,該如何劃分?基本思想是將低緯空間的數(shù)據(jù)通過(guò)映射轉(zhuǎn)換到一個(gè)新的高維空間,然后在高維空間中求解分類(lèi)超平面計(jì)算機(jī)視覺(jué)下圖將二維空間的樣本數(shù)據(jù)轉(zhuǎn)化到三維空間,這樣樣本就線性可分了。從圖中可以直觀地看到:盒子中的小球(實(shí)心球和空心球),從盒子上面看,無(wú)法用一個(gè)平面分割;但是從盒子的側(cè)面看就可以用一個(gè)平面將兩種小球分開(kāi)了。這種思想就是將特征轉(zhuǎn)換到另外一個(gè)空間(可能與原空間的維度相同或者升維),可將線性不可分問(wèn)題轉(zhuǎn)變?yōu)榫€性可分問(wèn)題。計(jì)算機(jī)視覺(jué)5.3.3多類(lèi)SVM損失計(jì)算機(jī)視覺(jué)要識(shí)別一個(gè)物體屬于哪一種類(lèi)別(假設(shè)10類(lèi)),我們需要將輸入圖片(假設(shè)圖片為32x32x3的數(shù)組,一共3072個(gè)數(shù)字),通過(guò)包含權(quán)重參數(shù)的線性變換,得到10種類(lèi)別所得到的分?jǐn)?shù),使得在它的標(biāo)簽下的類(lèi)別得到很高的分?jǐn)?shù),其他類(lèi)別表現(xiàn)很低的分?jǐn)?shù)。我們所要學(xué)習(xí)的就是這個(gè)線性變換的函數(shù),或

者準(zhǔn)確說(shuō)學(xué)習(xí)w的權(quán)重值,一般我們要在學(xué)習(xí)中加入一個(gè)偏置參數(shù)b,以讓圖片在分類(lèi)時(shí)對(duì)它屬于的標(biāo)簽有更大的偏置:計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)例子:假設(shè)輸入的灰度圖僅有4個(gè)像素,待分類(lèi)別有3個(gè)(Cat、Ship,Car),那么分類(lèi)器就有三個(gè)分類(lèi)模型。因?yàn)樨埖玫降姆謹(jǐn)?shù)不是很高,所以這并不是一個(gè)很好的分類(lèi)器,需要重新設(shè)置w與b如何判斷分類(lèi)模型性能的優(yōu)劣呢,這里需要引入損失函數(shù)Loss來(lái)定量評(píng)估,并且根據(jù)Loss的大小來(lái)調(diào)整權(quán)重值。損失函數(shù)用來(lái)度量給定分類(lèi)器的預(yù)測(cè)值與真實(shí)值的不一致程度,預(yù)測(cè)值與真實(shí)標(biāo)簽之間的差異越大,損失函數(shù)值就越大,反之則越小。損失函數(shù)的輸出可以作為反饋信息對(duì)分類(lèi)器參數(shù)進(jìn)行調(diào)整,進(jìn)而優(yōu)化模型,提升分類(lèi)器的分類(lèi)效果。損失函數(shù)定義:xi表示樣本中第i張圖像,N為樣本個(gè)數(shù),f(xi,W)為分類(lèi)器對(duì)xi的類(lèi)別預(yù)測(cè)值,yi為樣本xi的真實(shí)類(lèi)別標(biāo)簽,

,Li為xi的損失,L為數(shù)據(jù)集損失。第i個(gè)樣本的折頁(yè)損失(Hinge

loss)定義如下:Sij表示第i個(gè)樣本xi在第j類(lèi)別的預(yù)測(cè)分?jǐn)?shù);表示第i個(gè)樣本的真實(shí)類(lèi)別預(yù)測(cè)分?jǐn)?shù)計(jì)算機(jī)視覺(jué)表示SVM在正確分類(lèi)上的得分始終比不正確分類(lèi)上的得分高出一個(gè)邊界值通常

意思是如正確類(lèi)別的得分比不正確類(lèi)別的得分高出1分,就沒(méi)有損失,否則,就會(huì)產(chǎn)生損失。計(jì)算機(jī)視覺(jué)3個(gè)類(lèi)別各有一個(gè)訓(xùn)練樣本,采用如下:多類(lèi)分類(lèi)器對(duì)3個(gè)樣本的打分支持向量機(jī)對(duì)于數(shù)據(jù)集的損失為:計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)假設(shè)找到了一個(gè)W,使得L=0。這個(gè)W是獨(dú)一無(wú)二的嗎??jī)蓚€(gè)線分類(lèi)器如果W

能夠正確分類(lèi)所有樣本,那么會(huì)有很多相似的W,比如都能正確分類(lèi)樣本,因此W不是唯一的。為了減輕模型的復(fù)雜度,引入正則化懲罰項(xiàng)目的是通過(guò)向特定的權(quán)重添加偏好,對(duì)其他的不添加,以此來(lái)消除模糊性,還可以防止過(guò)擬合。常用的正則化懲罰項(xiàng)有L1和L2范數(shù)。L1范數(shù)L2范數(shù)帶有正則化項(xiàng)的損失函數(shù)如下:展開(kāi)式:為超參數(shù),來(lái)控制正則化的強(qiáng)度損失函數(shù)就由兩部分組成:數(shù)據(jù)損失(data

loss),即所有樣例的的平均損失Li,以及正則化損失(regularizationloss)。正則化是為了權(quán)衡訓(xùn)練損失和用于測(cè)試集的泛化損失計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)5.3.4

Softmax分類(lèi)器Softmax函數(shù)定義如下:xi屬于某個(gè)類(lèi)別k的概率,Softmax分類(lèi)器又被稱(chēng)為邏輯回歸分類(lèi)器(Logistic

Regression),與SVM分類(lèi)器相比,Softmax的輸出(歸一化的分類(lèi)概率)更加直觀,可以解釋為樣本屬于某個(gè)類(lèi)別的概率。例:輸入圖像貓的多類(lèi)支持向量得分為[3.2,5.1,-1.7]T樣本xi的交叉熵?fù)p失如下:圖像貓的交叉熵?fù)p失為將損失函數(shù)作為優(yōu)化目標(biāo),使訓(xùn)練樣本集的損失函數(shù)最小,此時(shí)的W

即為所求的權(quán)重值。計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)第6章神經(jīng)網(wǎng)絡(luò)基礎(chǔ)6目

錄6.1神經(jīng)網(wǎng)絡(luò)基本概念6.26.3激活函數(shù)神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)6.5梯度下降6.6神經(jīng)網(wǎng)絡(luò)反向傳播6.4計(jì)算機(jī)視覺(jué)損失函數(shù)6.1神經(jīng)網(wǎng)絡(luò)基本概念一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)包括輸入層、隱藏層和輸出層。實(shí)際上只有兩層神經(jīng)元(輸入層和隱藏層)具有權(quán)重。以實(shí)際具有權(quán)重的層數(shù)來(lái)表示神經(jīng)網(wǎng)絡(luò)的名稱(chēng),上圖為2層神經(jīng)網(wǎng)絡(luò)。計(jì)算機(jī)視覺(jué)神經(jīng)網(wǎng)絡(luò)中信號(hào)的傳遞用下圖表示神經(jīng)元的輸入信號(hào)為和的傳遞,輸出為,可用公式來(lái)表示信號(hào)神經(jīng)元

只有在輸入信的總和超過(guò)某個(gè)界限值時(shí)才被激活,輸出為1;否則不被激活,輸出為0。這個(gè)界限值稱(chēng)為閾值,用

表示。

用于將輸入信號(hào)的總和轉(zhuǎn)換為輸出信號(hào),稱(chēng)為激活函數(shù)計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)6.2激活函數(shù)激活函數(shù)(activation

function)的目的在于如何激活輸入信號(hào)的總和,這里介紹階躍函數(shù)、Sigmoid函數(shù)或ReLU函數(shù)等作為激活函數(shù)。階躍函數(shù)

Sigmoid函數(shù)激活函數(shù)以閾值為界,一旦輸入信號(hào)的總和超過(guò)閾值就切換輸出。函數(shù)值在x=0處躍變sigmoid函數(shù)是一條平滑的曲線,輸出隨著輸入發(fā)生連續(xù)性的變換二者的平滑性有差別,但其總體形狀具有相似性,也就是其變化趨勢(shì)大致相同。當(dāng)輸入信號(hào)較小時(shí),其輸出值較小,當(dāng)輸入信號(hào)增大時(shí),其輸出值也隨之增大,且二者輸出均在0和1之間階躍函數(shù)和sigmoid函數(shù)的另一共同點(diǎn)是均為非線性函數(shù)。神經(jīng)網(wǎng)絡(luò)的激活

函數(shù)必須是非線性函數(shù),這是因?yàn)槿绻褂镁€性函數(shù)作為激活函數(shù),無(wú)論設(shè)置多少層隱藏層,其最終效果都是線性函數(shù)的疊加,加深神經(jīng)網(wǎng)絡(luò)的層數(shù)沒(méi)有任何意義。例子,線性函數(shù)構(gòu)建3層神經(jīng)網(wǎng)絡(luò)相當(dāng)于可以用來(lái)替代計(jì)算機(jī)視覺(jué)采用線性函數(shù)作為激活函數(shù)的神經(jīng)網(wǎng)絡(luò)無(wú)論疊加多少層都只能解決線性問(wèn)題,無(wú)法解決非線性問(wèn)題,不能發(fā)揮多層網(wǎng)絡(luò)帶來(lái)的優(yōu)勢(shì)。6.2.3

ReLU函數(shù)ReLU函數(shù)同樣屬于非線性函數(shù),其在輸入大于0時(shí),直接輸出該值;在輸入小于0時(shí),輸出0,可用公式表示為:計(jì)算機(jī)視覺(jué)6.3神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)下面以圖所示的三層神經(jīng)網(wǎng)絡(luò)為例,分析輸入到輸出的前向傳播過(guò)程。我們將輸入層稱(chēng)為第0層,第一個(gè)隱藏層為第1層,第二個(gè)隱藏層為第2層,輸出層為第3層。計(jì)算機(jī)視覺(jué)從第1層到第2層的前向傳播與以上過(guò)程相同,接下來(lái)重點(diǎn)分析從第2層到輸出層的設(shè)計(jì)。輸出層的設(shè)計(jì)與之前各層傳播的最大不同在于激活函數(shù),在輸出層一般采用恒等函數(shù)(對(duì)輸入信號(hào)不加改動(dòng)地輸出)或softmax函數(shù),具體采用什么激活函數(shù)取決于不同的任務(wù)。一般而言,分類(lèi)問(wèn)題,如手寫(xiě)字體識(shí)別、人臉識(shí)別等,采用softmax激活函數(shù),而回歸問(wèn)題,如

預(yù)測(cè)學(xué)生成績(jī)、股票走勢(shì)等,采用恒等函數(shù)。在計(jì)算機(jī)視覺(jué)任務(wù)中,多數(shù)是分類(lèi)問(wèn)題。因此,我們會(huì)發(fā)現(xiàn)在神經(jīng)網(wǎng)絡(luò)的輸出層中多使用softmax激活函數(shù)。SoftMax函數(shù)如下所示:計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)6.4損失函數(shù)損失函數(shù)可用來(lái)衡量預(yù)測(cè)值與目標(biāo)值之間的差距,通過(guò)最小化損失函數(shù)來(lái)優(yōu)化權(quán)重設(shè)置。損失函數(shù)有多種,在神經(jīng)網(wǎng)絡(luò)中常用的是均方誤差(MeanSquared

Error)和交叉熵誤差(Cross

Entropy

Error)。6.4.1均方誤差預(yù)測(cè)值y=(0.02,0,0,0.86,0,0,0,0,0.11,0)y’=(0,0,0,0.36,0,0,0,0,0.6,0.04)真實(shí)值g=(0,0,0,1,0,0,0,0,0,0)表示類(lèi)別數(shù)量表示神經(jīng)網(wǎng)絡(luò)輸出的第樣本的預(yù)測(cè)值表示第

樣本的真實(shí)測(cè)值和

的MSE分別為3.2100e-03和0.077120,可見(jiàn)y的損失值更小,更接近真實(shí)值。計(jì)算機(jī)視覺(jué)6.4.2交叉熵誤差預(yù)測(cè)值y=(0.02,0,0,0.86,0,0,0,0,0.11,0)y’=(0,0,0,0.36,0,0,0,0,0.6,0.04)真實(shí)值g=(0,0,0,1,0,0,0,0,0,0)對(duì)應(yīng)的交叉熵誤差分別為0.1508和1.0217。使用梯度下降法求出損失函數(shù)

L(a,b)的最小值。梯度下降的思想

是,隨機(jī)選擇一個(gè)參數(shù)的組合(a,b),計(jì)算其對(duì)應(yīng)的損失函數(shù),如圖(b)中等高線最外層紅點(diǎn)位置,然后尋找一個(gè)能讓損失函數(shù)下降最多的參數(shù)組合,持續(xù)更新a,b

的值,直到損失函數(shù)收斂于最優(yōu)點(diǎn),即圖(b)中等高線的最里層計(jì)算機(jī)視覺(jué)6.5梯度下降6.5.1梯度下降的基本思想通過(guò)最小化損失函數(shù)求解神經(jīng)網(wǎng)絡(luò)的參數(shù)值,由于參數(shù)數(shù)量較大,很難獲得解析解。一般采用梯度下降法迭代求解,得到最小化的損失函數(shù)值和最優(yōu)的模型參數(shù)值。損失函數(shù)可表示為:學(xué)習(xí)的目標(biāo)是通過(guò)更新a和b的值最小化損失函數(shù)L(a,b)L(a,b)函數(shù)圖L(a,b)函數(shù)俯視圖問(wèn)題:如何才能獲得L(a,b)的最小值呢?在復(fù)雜的情況下,損失函數(shù)可能存在多個(gè)局部最優(yōu)解,如圖想象你站在山的頂點(diǎn)上,在梯度下降法中,我們

要做的是旋轉(zhuǎn)360度,看看周?chē)谀膫€(gè)方向上下山最快,我們知道下降最快的方向?yàn)閷?dǎo)數(shù)方向,可

將梯度定義為損失函數(shù)L(a,b)對(duì)參數(shù)a,b的偏導(dǎo)數(shù),因此沿導(dǎo)數(shù)方向前進(jìn)一小步;然后再一次想想,

應(yīng)該從什么方向下山,再邁出一小步;重復(fù)上面

的步驟,直到接近局部最優(yōu)點(diǎn)。梯度下降可描述如下:計(jì)算機(jī)視覺(jué)6.5.2神經(jīng)網(wǎng)絡(luò)的梯度神經(jīng)網(wǎng)絡(luò)可記為設(shè)神經(jīng)網(wǎng)絡(luò)的權(quán)重為2×3的矩陣,其梯度可表示為表示

變化時(shí),損失函數(shù)L發(fā)生的變化。計(jì)算機(jī)視覺(jué)6.5.3學(xué)習(xí)算法的步驟分為以下四個(gè)步驟:Step

1:從訓(xùn)練數(shù)據(jù)中隨機(jī)選出一部分?jǐn)?shù)據(jù),這部分?jǐn)?shù)據(jù)稱(chēng)為mini-batch;Step

2:計(jì)算mini-batch的損失函數(shù),學(xué)習(xí)的目標(biāo)是最小化該損失函數(shù);Step

3:計(jì)算梯度,求出各個(gè)權(quán)重參數(shù)的梯度;Step

4:更新參數(shù),沿梯度方向更新參數(shù);Step

5:重復(fù)步驟2、3、4,直到收斂。采用mini-batch的原因在于,在整個(gè)數(shù)據(jù)集上針對(duì)全部數(shù)據(jù)樣本進(jìn)行損失函數(shù)求和是不現(xiàn)實(shí)的,因此每次迭代可從訓(xùn)練集中隨機(jī)獲取固定數(shù)量的樣本,即mini-batch,在mini-batch上進(jìn)行損失函數(shù)求和、梯度計(jì)算和參數(shù)更新。計(jì)算機(jī)視覺(jué)6.6神經(jīng)網(wǎng)絡(luò)反向傳播理論上可以求出損失函數(shù)L關(guān)于權(quán)重參數(shù)W的偏導(dǎo)數(shù)由于直接進(jìn)行導(dǎo)數(shù)運(yùn)算的計(jì)算量較大,所以,一般不直接使用解析方式求偏導(dǎo)數(shù),而采用反向傳播算法快速求解偏導(dǎo)數(shù)。6.6.1鏈?zhǔn)椒▌t和反向傳播反向傳播:一個(gè)簡(jiǎn)單的例子計(jì)算機(jī)視覺(jué)設(shè):x=-2,y=5,z=-4圖中,綠色的數(shù)字代表從前向后計(jì)算時(shí)每個(gè)參數(shù)的得數(shù)Want:計(jì)算機(jī)視覺(jué)Want:計(jì)算機(jī)視覺(jué)Want:計(jì)算機(jī)視覺(jué)Want:計(jì)算機(jī)視覺(jué)Want:計(jì)算機(jī)視覺(jué)Want:計(jì)算機(jī)視覺(jué)Want:計(jì)算機(jī)視覺(jué)Want:計(jì)算機(jī)視覺(jué)Want:鏈?zhǔn)椒▌t:上游梯度上游梯度計(jì)算機(jī)視覺(jué)計(jì)算機(jī)視覺(jué)Want:鏈?zhǔn)椒▌t:計(jì)算機(jī)視覺(jué)幾個(gè)梯度傳播的門(mén)電路加法門(mén):進(jìn)行梯度分配,每一個(gè)子門(mén)路傳播后一項(xiàng)的梯度.乘法門(mén):相當(dāng)于梯度路由.每一個(gè)子門(mén)路分配的梯度等于另一方進(jìn)行前向傳播的數(shù)與梯度的乘。最大值門(mén):相當(dāng)于梯度開(kāi)關(guān).他們之中誰(shuí)大,誰(shuí)的導(dǎo)數(shù)即為1,誰(shuí)小,誰(shuí)的導(dǎo)數(shù)即為0計(jì)算機(jī)視覺(jué)f反向傳播的直觀理解從上面公式可以看出,要想知道參數(shù)具體對(duì)結(jié)果能產(chǎn)生何種影響,那么就要一步一步從后向前推,將此式用于損失與權(quán)重的梯度變化就是反向傳播的概念。計(jì)算機(jī)視覺(jué)f“局部梯度”計(jì)算機(jī)視覺(jué)f“局部梯度”梯度計(jì)算機(jī)視覺(jué)f梯度“局部梯度”計(jì)算機(jī)視覺(jué)f梯度“局部梯度”計(jì)算機(jī)視覺(jué)f梯度“局部梯度”計(jì)算機(jī)視覺(jué)例子:計(jì)算機(jī)視覺(jué)例子:計(jì)算機(jī)視覺(jué)例子:計(jì)算機(jī)視覺(jué)例子:計(jì)算機(jī)視覺(jué)例子:計(jì)算機(jī)視覺(jué)例子:計(jì)算機(jī)視覺(jué)例子:計(jì)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論