




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第二章相關(guān)技術(shù)介紹2.1卷積神經(jīng)網(wǎng)絡(luò)卷積神經(jīng)網(wǎng)絡(luò)(ConvolutionalNeuralNetwork,CNN)是一種前饋神經(jīng)網(wǎng)絡(luò),它的人工神經(jīng)元可以響應(yīng)一部分覆蓋范圍內(nèi)的周圍單元,對(duì)于大型圖像處理有著出色的表現(xiàn),它有別于其他傳統(tǒng)的深度學(xué)習(xí)模型。其主要是由卷積層、池化層、全連接層等具有不同形式和功能的層次所構(gòu)成[9]。卷積神經(jīng)網(wǎng)絡(luò)在計(jì)算機(jī)視覺和自然語(yǔ)言處理等眾多領(lǐng)域有著重要的應(yīng)用,尤其是對(duì)圖像有關(guān)的研究,表現(xiàn)最為優(yōu)異。例如物體圖像識(shí)別、行為認(rèn)知等方面。此外,卷積神經(jīng)網(wǎng)絡(luò)在語(yǔ)音處理、衛(wèi)星遙感圖像特征分析等領(lǐng)域都有明顯的優(yōu)勢(shì)。本文主要通過(guò)對(duì)兩種卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行分析,研究?jī)煞N模型的網(wǎng)絡(luò)結(jié)構(gòu)及組成原理,解決犬類品種分類問(wèn)題。2.1.1發(fā)展歷程CNN屬于人工神經(jīng)網(wǎng)絡(luò),卷積操作是其核心,卷積操作的思想貫穿了整個(gè)網(wǎng)絡(luò)的始終,是提取并歸類特征的關(guān)鍵[10]。隨著CNN領(lǐng)域的發(fā)展,數(shù)字符號(hào)檢測(cè)、房?jī)r(jià)預(yù)測(cè)任務(wù)等,都開始使用卷積神經(jīng)網(wǎng)絡(luò)解決,并取得了很好的實(shí)踐效果。CNN的發(fā)展經(jīng)歷了一段較長(zhǎng)的時(shí)間,經(jīng)過(guò)許多科研人員的不斷努力,CNN已經(jīng)發(fā)生了許多里程碑式的轉(zhuǎn)變,為人類社會(huì)提供了不小的幫助。1960年左右,加拿大神經(jīng)學(xué)家DavidH.Hubel和TorstenWisesel提出了"感受野"概念,神經(jīng)網(wǎng)絡(luò)首次被人類發(fā)現(xiàn)[11]。1998年,LeNet問(wèn)世,這在當(dāng)時(shí)引起了不小的轟動(dòng),為郵政系統(tǒng)的數(shù)字識(shí)別提供了幫助,誤差率不到1%[12]。LeNet創(chuàng)造了神經(jīng)網(wǎng)絡(luò)的歷史,使得神經(jīng)網(wǎng)絡(luò)產(chǎn)生了商用能力。谷歌在2015年提出GoogLeNet時(shí),以"L"為大寫,向其前身LeNet致敬[13]。2012年,GeoffreyE.Hinton等提出了AlexNet,并使用該模型參加那年的圖像分類比賽,在比賽中表現(xiàn)十分突出并且榮獲冠軍。通過(guò)這次比賽,也奠定了CNN在人工智能領(lǐng)域的重要地位。其準(zhǔn)確率超越第二名VGG12%[14]。此后,深度卷積神經(jīng)網(wǎng)絡(luò)在計(jì)算機(jī)視覺領(lǐng)域逐漸獲得霸主地位。2013年,Lecun組提出Dropconnect,借鑒了Alexnet的思想,準(zhǔn)確率達(dá)到89%[15]。顏水成組則提出了NetworkinNetwork,認(rèn)為CNN的結(jié)構(gòu)是可變的,加入了一個(gè)1*1conv層,NIN得到了圖像監(jiān)測(cè)比賽的冠軍。2014年,Inceptiont[16]和VGG[17]把網(wǎng)絡(luò)層數(shù)加深到了20層左右,識(shí)別準(zhǔn)確率高達(dá)93.3%。2015年,卷積神經(jīng)網(wǎng)絡(luò)通過(guò)改進(jìn)激活函數(shù)使得工作效率進(jìn)一步提升,卷積神經(jīng)網(wǎng)絡(luò)的錯(cuò)誤率達(dá)到了4.94%,歷史上第一次低于了人為預(yù)測(cè)的錯(cuò)誤5.1%。近些年來(lái),卷積神經(jīng)網(wǎng)絡(luò)越來(lái)越復(fù)雜,層數(shù)也在不斷上升,甚至數(shù)千層網(wǎng)絡(luò)已被研究人員和工程從業(yè)者廣泛使用。由于CNN的結(jié)構(gòu)逐漸趨于復(fù)雜,Google提出Nasnet以搜尋最優(yōu)網(wǎng)絡(luò),可以實(shí)現(xiàn)自動(dòng)尋找最優(yōu)結(jié)構(gòu),并且通過(guò)給定參數(shù)數(shù)量或運(yùn)算量下的最好結(jié)構(gòu),以適應(yīng)移動(dòng)端的需求。2.1.2網(wǎng)絡(luò)結(jié)構(gòu)CNN雖然經(jīng)歷了多次發(fā)展與迭代,但每一代CNN網(wǎng)絡(luò)的整體構(gòu)造卻十分相近。網(wǎng)絡(luò)首先經(jīng)過(guò)的是輸入層,用于獲取數(shù)據(jù),通常都對(duì)輸入數(shù)據(jù)的尺寸有規(guī)定,輸入層后為卷積層和池化層,網(wǎng)絡(luò)的主要運(yùn)算量就來(lái)源于這里,通過(guò)多次運(yùn)算可以提取輸入圖像的各種特征,這兩層可以多次包含于隱藏層。CNN中數(shù)量最多的就是卷積和池化層,層級(jí)很深的網(wǎng)絡(luò),甚至1000層以上的網(wǎng)絡(luò),其主體部分也是多個(gè)卷積和池化層的組合,越多的層級(jí)對(duì)于特征的提取越細(xì)致,分類效果也就越準(zhǔn)確。同理,網(wǎng)絡(luò)最后需要輸出運(yùn)算的結(jié)果,在輸出前需要一些運(yùn)算對(duì)前面的特征進(jìn)行處理,即全連接層和輸出層。相對(duì)于全連接神經(jīng)網(wǎng)絡(luò),卷積神經(jīng)網(wǎng)絡(luò)中的每一層神經(jīng)元均是3D結(jié)構(gòu),可以更好地處理大規(guī)模的圖像,防止圖像的空間信息因多次訓(xùn)練而丟失,成功解決了參數(shù)量過(guò)大的訓(xùn)練問(wèn)題,同時(shí)也避免了網(wǎng)絡(luò)的過(guò)擬合。2.2深度學(xué)習(xí)網(wǎng)絡(luò)相關(guān)模型2.2.1模型介紹2015年微軟實(shí)驗(yàn)室的何愷明等人首次采用ResNet網(wǎng)絡(luò),并在ILSVRC-2015圖像分類比賽中奪冠。在ResNet網(wǎng)絡(luò)被提出引用之前,傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)都是通過(guò)一系列的卷積層和池化層堆疊來(lái)實(shí)現(xiàn)的,但隨著卷積層與池化層的不斷堆疊,卷積網(wǎng)絡(luò)的性能反而隨著堆疊層數(shù)的增多而下降。圖2.1是在CIFAR-10數(shù)據(jù)集上使用56層網(wǎng)絡(luò)與20層網(wǎng)絡(luò)訓(xùn)練誤差和測(cè)試誤差圖,由圖2.1數(shù)據(jù)可以看出,56層網(wǎng)絡(luò)的訓(xùn)練集與測(cè)試集存在更高的誤差,即隨著網(wǎng)絡(luò)層數(shù)的增加,網(wǎng)絡(luò)的性能反而不再提升,甚至下降。圖2.1CIFAR-10數(shù)據(jù)集關(guān)于20層與56層的誤差比對(duì)情況ResNet網(wǎng)絡(luò)提出使用殘差網(wǎng)絡(luò)結(jié)構(gòu)來(lái)解決隨著訓(xùn)練層數(shù)增加而訓(xùn)練準(zhǔn)確率退化的問(wèn)題,使用ResNet網(wǎng)絡(luò)在CIFAR-10數(shù)據(jù)集上的訓(xùn)練誤差與測(cè)試誤差曲線如圖2.2所示,圖中虛線表示訓(xùn)練誤差,實(shí)線表示測(cè)試誤差。由圖中的數(shù)據(jù)可以看到,隨著網(wǎng)絡(luò)深度的增加,訓(xùn)練和測(cè)試的誤差越來(lái)越低。圖2.2CIFAR-10數(shù)據(jù)集關(guān)于ResNet各層的誤差對(duì)比2.2.2ResNet18網(wǎng)絡(luò)ResNet18深度卷積神經(jīng)網(wǎng)絡(luò)模型是ResNet系列模型中的一員。ResNet由微軟研究院的何愷明等人在2015年提出,旨在解決深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練中隨著訓(xùn)練層數(shù)增加而訓(xùn)練準(zhǔn)確率退化的問(wèn)題,即隨著網(wǎng)絡(luò)層數(shù)的增加,網(wǎng)絡(luò)的性能反而不再提升,甚至下降。ResNet18包含18層網(wǎng)絡(luò)結(jié)構(gòu),其中“18”指的是網(wǎng)絡(luò)中的卷積層數(shù)量。該體系結(jié)構(gòu)的核心特點(diǎn)在于“殘差學(xué)習(xí)”概念的引入。在ResNet中,輸入信息不只是可以通過(guò)權(quán)重層傳遞,還可以通過(guò)“跳躍連接”的方法直接傳遞到后面的層。這樣就避免了對(duì)輸入與輸出之間映射的直接學(xué)習(xí),而是對(duì)輸入和輸出之間的殘差進(jìn)行網(wǎng)絡(luò)學(xué)習(xí)。這種設(shè)計(jì)允許網(wǎng)絡(luò)訓(xùn)練更深的層次結(jié)構(gòu)而不用擔(dān)心梯度消失和梯度爆炸的問(wèn)題,提高了網(wǎng)絡(luò)的學(xué)習(xí)效率。 2.2.3ResNet18算法的網(wǎng)絡(luò)結(jié)構(gòu)ResNet18算法的網(wǎng)絡(luò)結(jié)構(gòu)主要由殘差塊(ResidualBlock)組成。殘差塊由兩個(gè)卷積層、一個(gè)批量歸一化層和一個(gè)激活函數(shù)組成。圖2.3所示,在ResNet18網(wǎng)絡(luò)模型中,先對(duì)輸入的圖像進(jìn)行局部的特征提取,一旦該局部特征被提取后,它與其他特征間的位置關(guān)系也隨之確定下來(lái),然后再通過(guò)歸一化層進(jìn)行歸一化處理,最后再使用激活函數(shù)對(duì)處理好的圖像進(jìn)行非線性轉(zhuǎn)換。圖2.3ResNet18網(wǎng)絡(luò)模型2.2.3ResNet算法模型的應(yīng)用ResNet算法是一種強(qiáng)大的深層次卷積神經(jīng)網(wǎng)絡(luò),在圖像分類、物體檢測(cè)等領(lǐng)域有著廣泛的應(yīng)用。在圖像分類領(lǐng)域,ResNet在很多大型的圖像識(shí)別分類競(jìng)賽中取得了很好的成績(jī),證明了其強(qiáng)大的特征提取和分類能力。在物體檢測(cè)領(lǐng)域,使用ResNet進(jìn)行物體的特征提取與其他物體檢測(cè)算法相融合,對(duì)于提高物體檢測(cè)的準(zhǔn)確率提高有很好的幫助。
第三章數(shù)據(jù)集選取與處理3.1數(shù)據(jù)集選取犬類圖像通常姿態(tài)各異、情景復(fù)雜、且常有多個(gè)動(dòng)物闖入鏡頭,甚至?xí)兄魅巳腌R,從而影響識(shí)別的結(jié)果。因此訓(xùn)練出一個(gè)損失低、識(shí)別準(zhǔn)確率高以及能夠適應(yīng)多種情景的犬類識(shí)別模型,需要足夠規(guī)模的數(shù)據(jù)來(lái)進(jìn)行訓(xùn)練,且數(shù)據(jù)集需要情景豐富、種類數(shù)量均等及犬類全面。因此,本文選用了包含133個(gè)不同品種8351幅圖像的數(shù)據(jù)集,其中每個(gè)種類分布均勻,并且都標(biāo)注了準(zhǔn)確的類別,圖像分辨率高且環(huán)境多樣。所有的訓(xùn)練圖像都存儲(chǔ)于train文件夾內(nèi),并通過(guò)keys_list.json文件作為分類標(biāo)簽進(jìn)行標(biāo)注,分別記錄類別序號(hào)和對(duì)應(yīng)的犬類,在訓(xùn)練時(shí)會(huì)對(duì)所有圖像進(jìn)行隨機(jī)抽樣打亂。圖3.1所示,展示的是數(shù)據(jù)集中部分?jǐn)?shù)據(jù)。圖3.1展示所選數(shù)據(jù)集中的部分?jǐn)?shù)據(jù)3.2數(shù)據(jù)預(yù)處理為了提升卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別準(zhǔn)確度,一個(gè)很重要的方式就是使用足夠規(guī)模的數(shù)據(jù)集。目前,犬類現(xiàn)有的數(shù)據(jù)集數(shù)量十分有限,且部分犬類圖像類之間相似度高,圖像類里面差異性也較大,相同犬類圖片同樣會(huì)受到光線、背景、其余動(dòng)物以及人類的影響,導(dǎo)致識(shí)別難度增大。為了解決神經(jīng)網(wǎng)絡(luò)模型對(duì)輸入圖像尺寸一致性的要求,同時(shí)提升數(shù)據(jù)集的多樣性以適應(yīng)不同模型的輸入層規(guī)格,必須在訓(xùn)練前對(duì)所有圖像進(jìn)行預(yù)處理,確保它們滿足統(tǒng)一的尺寸和形狀標(biāo)準(zhǔn),并提高數(shù)據(jù)集的豐富性。圖像處理,首先需要對(duì)圖像數(shù)據(jù)集劃分為訓(xùn)練集、驗(yàn)證集和測(cè)試集,再定義圖像的轉(zhuǎn)換和增強(qiáng)方式,最后創(chuàng)建相應(yīng)的圖像數(shù)據(jù)迭代器。3.2.1圖像轉(zhuǎn)換(1)形狀轉(zhuǎn)化本文使用的神經(jīng)網(wǎng)絡(luò)要求輸入圖像寬度和高度相同,在進(jìn)行訓(xùn)練前需要將所有圖像轉(zhuǎn)換為224x224像素的正方形圖像。(2)維度轉(zhuǎn)化由于網(wǎng)絡(luò)輸入層一般都要求一個(gè)三維張量,所以除了圖像格式外,輸入數(shù)據(jù)需轉(zhuǎn)化成Tensor格式并將每一個(gè)數(shù)值都除以255,使其歸一化到[0,1]來(lái)滿足所選網(wǎng)絡(luò)的要求。(3)圖像標(biāo)準(zhǔn)化圖像標(biāo)準(zhǔn)化是指將圖像每個(gè)通道都進(jìn)行歸一化和z-score標(biāo)準(zhǔn)化,可以幫助模型訓(xùn)練快速收斂,通過(guò)transforms.Normalize()實(shí)現(xiàn)。圖像樣本是由通道、寬度、高度三個(gè)屬性描述的三維張量,歸一化即通過(guò)線性函數(shù)轉(zhuǎn)換的方式將圖像樣本每個(gè)通道上的像素都進(jìn)行歸一化處理,也就是將其數(shù)值映射為[0,1]之間的小數(shù)。在完成了形狀尺寸和維度的調(diào)整、通道歸一化與數(shù)據(jù)標(biāo)準(zhǔn)化等預(yù)處理步驟之后,數(shù)據(jù)集才可以作為神經(jīng)網(wǎng)絡(luò)的輸入進(jìn)行訓(xùn)練和測(cè)試,這是對(duì)圖像樣本的基本處理。這些處理過(guò)程不僅訓(xùn)練集要進(jìn)行,驗(yàn)證集也要同步進(jìn)行,以滿足神經(jīng)網(wǎng)絡(luò)的輸入要求。3.2.2數(shù)據(jù)增強(qiáng)一般情況下,訓(xùn)練集數(shù)據(jù)量越大,所能達(dá)到的訓(xùn)練效果越好,準(zhǔn)確率越高過(guò)擬合程度越低。但圖像標(biāo)注的成本消耗巨大,且人類對(duì)于犬類的肉眼識(shí)別也存在不小的誤差,導(dǎo)致本文只能使用已有的數(shù)據(jù)集進(jìn)行訓(xùn)練和測(cè)試。本文使用的數(shù)據(jù)集共有8351張圖像,其中80%,也就是6680張用作訓(xùn)練集,相對(duì)于133種犬來(lái)說(shuō),數(shù)據(jù)量較小。在無(wú)法通過(guò)增加圖片來(lái)擴(kuò)增數(shù)據(jù)集的前提下,可以使用數(shù)據(jù)增強(qiáng)的方式來(lái)產(chǎn)生相似的圖像樣本,這些經(jīng)過(guò)變換的圖像會(huì)被神經(jīng)網(wǎng)絡(luò)認(rèn)作不同的圖像,從而在某種程度上達(dá)到擴(kuò)增訓(xùn)練集的效果,且圖像增強(qiáng)技術(shù)可以減少模型對(duì)某些特征的依賴,提高模型的泛化能力。常用的圖像增強(qiáng)技術(shù)有旋轉(zhuǎn)、剪裁、改變明暗程度、改變對(duì)比度、增加噪聲轉(zhuǎn)為黑白圖像等。本文選用了隨機(jī)旋轉(zhuǎn)(-45度到45度之間)、隨機(jī)水平翻轉(zhuǎn)以及中心剪裁三種數(shù)據(jù)增強(qiáng)方式,如圖3.3、圖3.4,、圖3.5所示。圖3.3隨機(jī)旋轉(zhuǎn)示意圖圖3.4隨機(jī)水平翻轉(zhuǎn)示意圖圖3.5中心剪裁示意圖3.3數(shù)據(jù)集劃分本文將8351張圖像劃分為兩個(gè)部分,隨機(jī)抽樣80%作為訓(xùn)練集,剩余10%部分為驗(yàn)證集,10%部分為測(cè)試集。數(shù)據(jù)集將8351個(gè)標(biāo)簽整合在一個(gè)json文件中,通過(guò)標(biāo)簽表生成一個(gè)數(shù)據(jù)透視表,再使用sample0方法進(jìn)行標(biāo)簽劃分。整個(gè)訓(xùn)練過(guò)程通過(guò)pytorch環(huán)境完成,節(jié)省了環(huán)境配置的時(shí)間,數(shù)據(jù)集等文件存儲(chǔ)在pytorch的服務(wù)器上,通過(guò)Python的OS模塊對(duì)文件進(jìn)行操作。如表3.2所示:表3.2本文數(shù)據(jù)集劃分情況類別數(shù)量訓(xùn)練集6680張圖片驗(yàn)證集835張圖片測(cè)試集836張圖片3.4評(píng)價(jià)標(biāo)準(zhǔn)3.4.1準(zhǔn)確率準(zhǔn)確率也就是模型預(yù)測(cè)正確的比例,能夠較為直觀地反映模型效率,但并不能完全代表模型效果,如果分類樣本不均,用準(zhǔn)確率作為評(píng)價(jià)指標(biāo)就會(huì)出現(xiàn)雖然準(zhǔn)確率很高,但分類完全錯(cuò)誤的情況,所以單純依靠準(zhǔn)確率作為算法評(píng)價(jià)指標(biāo)不夠科學(xué)全面。如公式(3.1)所示:TP代表預(yù)測(cè)為正的正類樣本數(shù),F(xiàn)P表預(yù)測(cè)為正類的負(fù)類樣本數(shù)。3.4.2損失率損失率是用來(lái)計(jì)算模型誤差的指標(biāo),也就是表示模型分類的結(jié)果與標(biāo)注數(shù)據(jù)之間的差異,損失率有很多種計(jì)算方法,計(jì)算所得的損失率反映了模型的誤差水平,損失率越低,表明模型的魯棒性越強(qiáng)。魯棒性可以理解為模型對(duì)于輸入數(shù)據(jù)中的變化的不敏感性,即模型能夠?qū)挂欢ǔ潭鹊脑肼暬驍_動(dòng)而保持正確輸出的能力。損失函數(shù)衡量了模型預(yù)測(cè)結(jié)果與真實(shí)標(biāo)簽之間的偏差程度,是評(píng)價(jià)模型性能的關(guān)鍵指標(biāo)。理想情況下,越低的損失率標(biāo)示著模型具有越高的準(zhǔn)確率和優(yōu)越的性能表現(xiàn)。本文采用的是交叉熵?fù)p失函數(shù),如公式(3.2)所示。C=?1nx[yln交叉熵?fù)p失函數(shù)為凸函數(shù),可以通過(guò)求導(dǎo)得到全局最優(yōu)值。輸出層利用sigmoid或softmax函數(shù)計(jì)算出每個(gè)類別的概率分布,確保所有類別的概率總和為1。然后,使用這些預(yù)測(cè)概率與實(shí)際標(biāo)簽的onehot形式計(jì)算交叉熵?fù)p失,從而得到模型的損失值。在訓(xùn)練時(shí)為了使得模型盡快收斂,且能夠獲取到最優(yōu)解,一般會(huì)每隔一段時(shí)間對(duì)參數(shù)進(jìn)行更新,更新過(guò)程中學(xué)習(xí)率會(huì)影響模型的擬合速度。交叉熵?fù)p失函數(shù)可以使模型效果較差時(shí)能更快擬合,隨著模型效果提升,學(xué)習(xí)速度也會(huì)降低。使用交叉熵?fù)p失函數(shù)可以使得模型訓(xùn)練過(guò)程能夠更快地?cái)M合,且能夠更好地表達(dá)分類結(jié)果的損失程度,更好地進(jìn)行優(yōu)化。3.5本章小結(jié)本章節(jié)對(duì)數(shù)據(jù)集的前期準(zhǔn)備處理做出了初步的認(rèn)識(shí)。首先,強(qiáng)調(diào)了高質(zhì)量數(shù)據(jù)集的重要性,它不僅影響模型的性能,還決定了研究的有效性和可重復(fù)性。選取數(shù)據(jù)集時(shí),需考慮數(shù)據(jù)的真實(shí)性、相關(guān)性、完整性和多樣性,確保其能夠全面反映研究問(wèn)題。其次詳細(xì)了解數(shù)據(jù)處理的各個(gè)階段,包括數(shù)據(jù)清洗、轉(zhuǎn)換、歸一化和特征選擇等。數(shù)據(jù)清洗的目的是消除錯(cuò)誤和不一致的數(shù)據(jù),而轉(zhuǎn)換和歸一化則是為了將數(shù)據(jù)轉(zhuǎn)換成適合機(jī)器學(xué)習(xí)算法處理的格式。特征選擇是識(shí)別并保留對(duì)預(yù)測(cè)結(jié)果最有幫助的數(shù)據(jù)特征的過(guò)程,這有助于減少模型復(fù)雜性并提高其性能。對(duì)于數(shù)據(jù)集中數(shù)據(jù)量不足的情況,本文還采用了數(shù)據(jù)增強(qiáng)的方法,本文選用了隨機(jī)旋轉(zhuǎn),隨機(jī)水平翻轉(zhuǎn),以及中心剪裁三種數(shù)據(jù)增強(qiáng)方式對(duì)數(shù)據(jù)集進(jìn)行數(shù)據(jù)量增強(qiáng)。此外,本章節(jié)也指出了評(píng)價(jià)一個(gè)模型的標(biāo)準(zhǔn),如數(shù)據(jù)的準(zhǔn)確率和損失率。針對(duì)這些評(píng)價(jià)標(biāo)準(zhǔn),采用一些有助于深度學(xué)習(xí)的解決策略。
第四章基于ResNet18的犬類品種分類模型4.1ResNet18模型4.1.1構(gòu)建殘差網(wǎng)絡(luò)結(jié)構(gòu)殘差網(wǎng)絡(luò)結(jié)構(gòu)是ResNet的核心特征,它通過(guò)引入跳躍連接來(lái)緩解深度網(wǎng)絡(luò)訓(xùn)練中的退化現(xiàn)象,構(gòu)建更深的網(wǎng)絡(luò)并提升訓(xùn)練的準(zhǔn)確性。首先介紹殘差網(wǎng)絡(luò)結(jié)構(gòu),然后通過(guò)堆疊殘差網(wǎng)絡(luò)來(lái)組建ResNet18模型。殘差網(wǎng)絡(luò)結(jié)構(gòu)圖如圖4.4所示,殘差網(wǎng)絡(luò)由兩個(gè)分支構(gòu)成:一個(gè)主分支,一個(gè)shortcuts(圖中弧線表示)。主分支通過(guò)堆疊一系列的卷積操作得到,shotcuts(捷徑)從輸入直接到輸出,主分支設(shè)定輸入的神經(jīng)網(wǎng)絡(luò)層為x,期望的輸出為H(x),殘差塊的使用創(chuàng)造性解決了因?yàn)镠(x)難度大而引起的梯度消失問(wèn)題,即學(xué)習(xí)兩者之間的殘差F(x)=H(x)?X[18,19],輸出的特征矩陣F(x)加上shortcuts輸出的特征矩陣x得到F(x圖4.4ResNet殘差塊圖4.5ResNet18網(wǎng)絡(luò)結(jié)構(gòu)殘差網(wǎng)絡(luò)結(jié)構(gòu)主要由兩種,一種是BasicBlock,適用于較淺的ResNet網(wǎng)絡(luò),如ResNet18和ResNet34;另一種是Bottleneck,適用于層數(shù)較深的ResNet網(wǎng)絡(luò),如ResNet50、ResNet101和ResNet152。本文采用ResNet18網(wǎng)絡(luò)結(jié)構(gòu)就介紹BasicBlock,BasicBlock結(jié)構(gòu)圖如圖4.6所示,每個(gè)BasicBlock內(nèi)部的卷積層只需要學(xué)習(xí)輸入和輸出之間的殘差映射,這比學(xué)習(xí)完整的映射要簡(jiǎn)單很多。這樣的設(shè)計(jì)簡(jiǎn)化了ResNet18的學(xué)習(xí)目標(biāo),有助于網(wǎng)絡(luò)的優(yōu)化和收斂。BasicBlock為ResNet18提供了靈活的網(wǎng)絡(luò)結(jié)構(gòu),可以按照需求調(diào)整每個(gè)layer中的BasicBlock數(shù)量來(lái)使ResNet18適應(yīng)不同的應(yīng)用場(chǎng)景和數(shù)據(jù)集。該結(jié)構(gòu)的主分支有兩層卷積結(jié)構(gòu)。圖4.6BuildingBlock殘差結(jié)構(gòu)4.1.2構(gòu)建ResNet18網(wǎng)絡(luò)模型ResNet18模型由17個(gè)卷積層和1個(gè)全連接層構(gòu)成,共分為7個(gè)部分。起始部分不含殘差塊,負(fù)責(zé)對(duì)輸入圖像執(zhí)行卷積、批量歸一化和最大池化操作。而第二至第五部分則包含了殘差塊。在ResNet18的網(wǎng)絡(luò)結(jié)構(gòu)中,殘差塊都有二層卷積[20]。如表4.7所示的ResNet18網(wǎng)絡(luò)層結(jié)構(gòu),以224×224大小的彩色圖像輸入為例,首先經(jīng)過(guò)一個(gè)卷積核大小為7×7、步長(zhǎng)為2、輸出通道數(shù)為64的卷積層conv1,對(duì)輸入圖像執(zhí)行卷積、批量歸一化和最大池化操作后得到112×112大小的輸出圖像和通道數(shù)64;隨后通過(guò)一個(gè)3×3大小的最大下采樣池化層將輸出圖像采樣至56×56,通道數(shù)保持為64。之后,依次堆疊了四個(gè)殘差塊(conv2_x,conv3_x,conv4_x,和conv5_x),每個(gè)殘差塊包含兩個(gè)卷積層并通過(guò)殘差連接相互鏈接,最終輸出圖像尺寸減少到7×7,而通道數(shù)增至512。最后,通過(guò)網(wǎng)絡(luò)的平均池化層將特征圖轉(zhuǎn)化為一個(gè)特征向量,該特征向量被送入分類器計(jì)算得出最終的分類概率。表4.7ResNet18網(wǎng)絡(luò)結(jié)構(gòu)表Layer_nameOutput_size18-layerConv1112x1127x7,64,stride2Conv2_x56x563x3maxpool,stride23×3Conv3_x28x283×3Conv4_x14x143×3Conv5_x7x73×3Softmax1x1
第五章實(shí)驗(yàn)對(duì)比及結(jié)果5.1ResNet18模型與VGG19模型實(shí)驗(yàn)本文采用ResNet18作為主模型,VGG19作為對(duì)比模型。本節(jié)主要展示ResNet18模型與VGG19模型的準(zhǔn)確率損失率的對(duì)比,以及簡(jiǎn)單展示UI界面與根據(jù)ResNet18模型對(duì)選擇的圖片進(jìn)行分類后顯示的結(jié)果情況。5.1.1環(huán)境搭建通過(guò)Anaconda3安裝所需要的實(shí)驗(yàn)環(huán)境,python版本為3.9,pytorch版本為12.1。所需要安裝的相關(guān)軟件如下:Anaconda3是一個(gè)開源的Python發(fā)行版本,提供Python解釋器和常用的Python包,包含各種深度學(xué)習(xí)庫(kù)。Python3.9是深度學(xué)習(xí)常用的編程語(yǔ)言之一,可以在Anaconda3環(huán)境中進(jìn)行Python的安裝。PyTorch是一個(gè)流行的Python開源深度學(xué)習(xí)庫(kù),專為深度學(xué)習(xí)任務(wù)設(shè)計(jì),廣泛應(yīng)用于自然語(yǔ)言處理和計(jì)算機(jī)視覺領(lǐng)域。本次實(shí)驗(yàn)使用的是Windows10家庭中文版的電腦,運(yùn)行內(nèi)存為8G。電腦自帶的CPU環(huán)境為1.6GHz。如表5.1所示。表5.1實(shí)驗(yàn)環(huán)境配置表配置型號(hào)CPUIntel(R)Core(TM)i5-8265UCPU@1.60GHz內(nèi)存8G操作環(huán)境Windows10(64-bit)編程語(yǔ)言Python3.9深度學(xué)習(xí)框架PyTorchResNet18模型實(shí)驗(yàn)流程通過(guò)ResNet18算法創(chuàng)建一個(gè)預(yù)訓(xùn)練模型,指明輸入的特征大小是224x224像素,開始定義數(shù)據(jù)轉(zhuǎn)換使用data_transforms方法進(jìn)行數(shù)據(jù)增強(qiáng),隨后開始訓(xùn)練數(shù)據(jù)。訓(xùn)練過(guò)程主要通過(guò)train_model函數(shù)來(lái)實(shí)現(xiàn),該函數(shù)接受預(yù)訓(xùn)練的模型、損失函數(shù)(criterion=nn.CrossEntropyLoss())、優(yōu)化器(lr=le-2)、學(xué)習(xí)率調(diào)度器(step_size=7)以及訓(xùn)練的輪數(shù)作為參數(shù)。在函數(shù)內(nèi)部,使用了一個(gè)嵌套的循環(huán)來(lái)遍歷每個(gè)epoch和每個(gè)訓(xùn)練/驗(yàn)證階段。如果整體損失過(guò)高(定義為大于50%),則重新加載數(shù)據(jù)集、重新初始化模型和優(yōu)化器,并重新訓(xùn)練模型,然后繼續(xù)訓(xùn)練剩余的epochs。最后測(cè)試數(shù)據(jù)集,將得到分類準(zhǔn)確率結(jié)果保存。然后通過(guò)ResNet18模型進(jìn)行識(shí)別分類,為接下來(lái)的可視化提供數(shù)據(jù)支持。將訓(xùn)練結(jié)果的準(zhǔn)確率以及損失率寫入json文件,如圖5.2所示,并將模型產(chǎn)生的json文件轉(zhuǎn)化為一個(gè)csv文件。圖5.2ResNet18模型的準(zhǔn)確率文件圖5.3展示了模型在訓(xùn)練過(guò)程中的準(zhǔn)確率和損失率變化情況。這兩個(gè)指標(biāo)是評(píng)估模型性能的關(guān)鍵:準(zhǔn)確率顯示了模型預(yù)測(cè)的正確性水平,而迭代次數(shù)則表示模型已完成的訓(xùn)練輪數(shù)。如圖可以觀察到,在訓(xùn)練過(guò)程中損失率在不斷地下降,在第45次迭代后趨于平穩(wěn),但仍有特殊情況使得準(zhǔn)確率降低,例如在第140次中準(zhǔn)確率下降,但不影響模型的總體訓(xùn)練結(jié)果。模型的準(zhǔn)確率從50%開始慢慢提升,在70%左右出現(xiàn)了時(shí)高時(shí)低的情況,在第82次迭代中準(zhǔn)確率趨于平穩(wěn),并于第127次達(dá)到最高值85.6%。這些結(jié)果顯示,隨著訓(xùn)練過(guò)程的推進(jìn),模型的預(yù)測(cè)精度逐漸上升而損失逐漸降低,這反映了模型在學(xué)習(xí)能力與泛化能力方面的持續(xù)進(jìn)步。圖5.3ResNet18模型對(duì)數(shù)據(jù)集的準(zhǔn)確率與損失率折線圖5.1.2VGG19模型實(shí)驗(yàn)流程本次采用VGG19框架進(jìn)行訓(xùn)練,訓(xùn)練過(guò)程與ResNet18訓(xùn)練過(guò)程以及參數(shù)一樣。如圖5.4展示了模型在訓(xùn)練過(guò)程中的準(zhǔn)確率和損失率變化情況。這兩個(gè)指標(biāo)是評(píng)估模型性能的關(guān)鍵:準(zhǔn)確率顯示了模型預(yù)測(cè)的正確性水平,而迭代次數(shù)則表示模型已完成的訓(xùn)練輪數(shù)。如圖可以觀察到,在訓(xùn)練過(guò)程中VGG的損失率的下降和準(zhǔn)確率的上升雖比較穩(wěn)定,但最終的損失率卻高于ResNet模型,準(zhǔn)確率也不如ResNet模型。在本次模型中,損失率從5逐漸降低為20%;準(zhǔn)確率從0逐步提升到63%。這些結(jié)果顯示,隨著訓(xùn)練過(guò)程的推進(jìn),模型的預(yù)測(cè)精度逐漸上升而損失逐漸降低,這反映了模型在學(xué)習(xí)能力與泛化能力方面的持續(xù)進(jìn)步。5.2模型對(duì)比評(píng)估由圖5.5與圖5.6可知,ResNet18模型的準(zhǔn)確率在訓(xùn)練中的整體效果優(yōu)于VGG19模型,ResNet18中使用殘差塊的網(wǎng)絡(luò)結(jié)構(gòu),可以有限避免性能下降情況。并且ResNet18模型具有更高的準(zhǔn)確率與更低的損失率,這歸功于其更深的網(wǎng)絡(luò)結(jié)構(gòu)與殘差連接的引入,所以ResNet18模型更適合于學(xué)習(xí)圖像類特征。所以本文采用ResNet18模型進(jìn)行最終展示。圖5.4VGG19模型對(duì)數(shù)據(jù)集的準(zhǔn)確率與損失率折線圖圖5.5ResNet18模型與VGG19模型關(guān)于準(zhǔn)確率的對(duì)比圖圖5.6ResNet18模型與VGG19模型關(guān)于損失率的對(duì)比圖5.3可視化界面搭建為了最后的方便展示,簡(jiǎn)化模型展示流程,本文使用Python設(shè)計(jì)了一個(gè)簡(jiǎn)單的圖形界面,可直接選用照片代入模型,模型會(huì)在顯示的圖片下側(cè)直接輸出該圖片所屬的類別名。如圖5.7所示:圖5.7實(shí)驗(yàn)UI界面當(dāng)選定了目標(biāo)圖片之后,便可調(diào)用ResNet18訓(xùn)練好的模型,對(duì)選擇的圖片進(jìn)行詳細(xì)的分析與識(shí)別,自動(dòng)地將圖片內(nèi)容歸類于預(yù)定的類別,并將分類結(jié)果以清晰直觀的形式展示出,即在所選擇的圖片的下方顯示相應(yīng)分類的結(jié)果,使用戶可以一目了然地了解圖像的類別。這種方式極大地增強(qiáng)了用戶體驗(yàn)效果。如圖5.8所示:圖5.8UI界面展示分類結(jié)果
第六章總結(jié)與展望6.1總結(jié)在選擇模型結(jié)構(gòu)時(shí),我考慮了數(shù)據(jù)的特性以及問(wèn)題的復(fù)雜度,并參考了一些先進(jìn)的模型架構(gòu)最終敲定選中ResNet18模型框架。同時(shí),我還引入了dropout等正則化技術(shù),以防止模型過(guò)擬合。在模型構(gòu)建完成后開始了訓(xùn)練過(guò)程。我選擇了適當(dāng)?shù)膬?yōu)化器和學(xué)習(xí)率,第一次設(shè)置了150輪訓(xùn)練輪數(shù)(epochs)和16個(gè)批次大?。╞atchsize)。訓(xùn)練過(guò)程中,本設(shè)計(jì)不斷迭代地更新模型的權(quán)重和參數(shù),以最小化訓(xùn)練損失并提高準(zhǔn)確率。我使用了交叉驗(yàn)證的方式,將數(shù)據(jù)集劃分為訓(xùn)練集、驗(yàn)證集和測(cè)試集,以便在訓(xùn)練過(guò)程中實(shí)時(shí)評(píng)估模型的性能。然而,在訓(xùn)練初期,我遇到了一些困難。模型的訓(xùn)練損失下降緩慢,準(zhǔn)確率提升不明顯。我意識(shí)到這可能是由于模型復(fù)雜度過(guò)高或?qū)W習(xí)率設(shè)置不當(dāng)導(dǎo)致的。于是,我嘗試調(diào)整模型的參數(shù),以期改善模型的性能。經(jīng)過(guò)多次嘗試和調(diào)整,模型的訓(xùn)練損失開始快速下降,準(zhǔn)確率也有了明顯的提升。我密切關(guān)注著訓(xùn)練過(guò)程中的損失和準(zhǔn)確率變化曲線,確保模型沒有出現(xiàn)過(guò)擬合或欠擬合的情況。同時(shí),我還記錄了每次訓(xùn)練的最佳驗(yàn)證準(zhǔn)確率,以便后續(xù)分析和比較。在訓(xùn)練過(guò)程中,我不斷監(jiān)控著模型的性能,并根據(jù)實(shí)際情況進(jìn)行了多次調(diào)整和優(yōu)化。最終ResNet18模型達(dá)到了85.6%的最佳準(zhǔn)確率,雖然這個(gè)結(jié)果并不十分理想,但與訓(xùn)練初期相比已經(jīng)有了顯著的提升。6.2展望通過(guò)本次模型訓(xùn)練過(guò)程,我深刻體會(huì)到了模型訓(xùn)練的不易和復(fù)雜性。我需要不斷嘗試和調(diào)整各種參數(shù),以找到最適合當(dāng)前問(wèn)題的模型結(jié)構(gòu)和訓(xùn)練策略。同時(shí),我還需要關(guān)注數(shù)據(jù)的質(zhì)量和數(shù)量,以及特征的選擇和變換方式等因素對(duì)模型性能的影響。雖然本次訓(xùn)練結(jié)果并不完美,但我從中獲得了寶貴的經(jīng)驗(yàn)和教訓(xùn)。隨著社會(huì)的發(fā)展與科技的進(jìn)步,未來(lái)社會(huì)將培育出更多新品種的犬類,需要我們不斷地更新對(duì)犬類品種分類的研究。我相信,未來(lái)這一領(lǐng)域的實(shí)驗(yàn)研究有著廣闊的前景。例如:圖像識(shí)別技術(shù)的飛速發(fā)展使得利用AI進(jìn)行犬類品種自動(dòng)分類成為可能;隨著基因測(cè)序技術(shù)的成本降低和效率提高,未來(lái)可以預(yù)見科學(xué)家們將獲得更多犬類的遺傳信息。通過(guò)全基因組關(guān)聯(lián)研究(GWAS)和比較基因組學(xué)分析,我們將能更精確地理解不同品種間的差異以及這些差異如何影響犬只的性狀表達(dá),比如體型、毛色、行為等特征。
參考文獻(xiàn)杜曉鵬.最新世界犬業(yè)聯(lián)盟犬種分類及標(biāo)準(zhǔn)譯名(上)[J].中國(guó)工作犬業(yè),2021,(08):21-25.杜曉鵬.最新世界犬業(yè)聯(lián)盟犬種分類及標(biāo)準(zhǔn)譯名(下)[J].中國(guó)工作犬業(yè),2021,(09):16-20.ParkhiOM,VedaldiA,ZissermanA,etal.Catsanddogs[C]//ComputerVisionandPatternRecognition.IEEE,2012:3498-3505.PRASONG,P,CHAMNONGTHAI,K.Face-recognition-basedDogBreedClassificationUsingSizeandPositionofEachLoc—alPart,andPCA[C].ElectricalEngineering/Electronics,Computer,TelecommunicationsandlnformationTechnol—ogy(ECTI-CON),20129thInternationalConferenceon2012:1-3LiuJ,KanazawaA,JacobsD,etal.DogBreedClassificationUsingPartLocalization[J].2012.X.Wang,V.Ly,S.SorensenandC.Kambhamettu.Dogbreedclassificationvialandmarks[J].2014IEEEInternationalConferenceonImageProcessing(ICIP),Paris,France,2014,pp.5237-5241.于奧運(yùn).基于深度學(xué)習(xí)的犬種識(shí)別研究[J].現(xiàn)代計(jì)算機(jī)(專業(yè)版),2018,(08):106-109.田小路,張莉敏.基于卷積神經(jīng)網(wǎng)絡(luò)的寵物狗種類識(shí)別[J].信息技術(shù)與信息化,2019,(08):21-22.柯溢,盧亞玲.基于VGG16的寵物犬識(shí)別方法[J].電子制作,2020,(21):42-45.DOI:10.16589/11-3571/tn.2020.21.016.李彥冬,郝宗波,雷航
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 胎盤前置護(hù)理周立蓉50課件
- 跨境電子商務(wù)雙語(yǔ)教程 課件 第1章 跨境電商緒論
- 水稻全程機(jī)械化課件
- 水電站行業(yè)知識(shí)培訓(xùn)內(nèi)容課件
- 用藥護(hù)理47課件
- 2025版進(jìn)出口石材貿(mào)易合同
- 二零二五年度互聯(lián)網(wǎng)物流企業(yè)借款合同模板
- 二零二五年度教育科技股權(quán)投資保密及資源共享協(xié)議
- 2025版國(guó)內(nèi)貨物公路運(yùn)輸貨物保險(xiǎn)合同集錦
- 二零二五年校園純凈水設(shè)備安裝及維修服務(wù)合同
- 2025年內(nèi)河船員考試(船舶輔機(jī)與電氣2203·一類三管輪)歷年參考題庫(kù)含答案詳解(5套)
- 農(nóng)村土地確權(quán)課件
- 2024年黔西南州暢達(dá)交通建設(shè)運(yùn)輸有限責(zé)任公司招聘考試真題
- (高清版)T∕CES 243-2023 《構(gòu)網(wǎng)型儲(chǔ)能系統(tǒng)并網(wǎng)技術(shù)規(guī)范》
- 公共場(chǎng)所衛(wèi)生管理員安全教育培訓(xùn)手冊(cè)
- 2025年全國(guó)高校輔導(dǎo)員素質(zhì)能力大賽基礎(chǔ)知識(shí)測(cè)試題及答案(共3套)
- 大氣監(jiān)測(cè)培訓(xùn)課件
- 財(cái)政分局對(duì)賬管理制度
- 2025年河南省中考?xì)v史試卷真題(含答案)
- 標(biāo)準(zhǔn)預(yù)防與手衛(wèi)生
- 工程量計(jì)算培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論