袁小平,石 慧
(中國(guó)礦業(yè)大學(xué),江蘇 徐州 221000)
近年來(lái)由于海洋環(huán)境的污染,珊瑚礁及部分稀有魚(yú)類(lèi)的滅絕,引起許多人關(guān)注水下環(huán)境,探索水下資源。魚(yú)品種的識(shí)別是本著環(huán)境保護(hù)的理念和動(dòng)機(jī),能夠高效地識(shí)別不同種類(lèi)的魚(yú)類(lèi),之后為特定稀有魚(yú)類(lèi)的保護(hù)提供可靠的圖像數(shù)據(jù)基礎(chǔ)[1]。由于水下環(huán)境會(huì)給識(shí)別任務(wù)帶來(lái)許多困難和挑戰(zhàn),包括水下圖像能見(jiàn)度有限,對(duì)比度較低,有些魚(yú)類(lèi)與水下環(huán)境背景較為相似,導(dǎo)致識(shí)別困難[2-3]。另一方面,可以用于水下魚(yú)類(lèi)識(shí)別的數(shù)據(jù)集太小,這些都給魚(yú)類(lèi)識(shí)別帶來(lái)了困難。因此,這項(xiàng)任務(wù)較其他識(shí)別任務(wù)更為復(fù)雜,仍然是一個(gè)急需解決的問(wèn)題。
根據(jù)學(xué)者們的研究,可將魚(yú)類(lèi)識(shí)別的方法分為兩大類(lèi),一類(lèi)是手動(dòng)特征提取,根據(jù)形狀、顏色、背景、具體地標(biāo)或紋理選擇特征,還有使用更復(fù)雜的特征,例如SIFT或方向梯度直方圖特征[4]。另一類(lèi)是基于深度學(xué)習(xí)進(jìn)行訓(xùn)練,自動(dòng)提取特征再進(jìn)行分類(lèi)。Li等人[5]將快速R-CNN(具有卷積神經(jīng)網(wǎng)絡(luò)的區(qū)域)應(yīng)用于水下圖像,以檢測(cè)和識(shí)別魚(yú)類(lèi)物種,在LifeCLEF 2014數(shù)據(jù)集上獲得了81.4%的準(zhǔn)確率。Choi[6]參與了LifeCLEF 2015探測(cè)和識(shí)別水下視頻中魚(yú)類(lèi)的任務(wù),在這項(xiàng)任務(wù)中取得了81%的最佳表現(xiàn),他通過(guò)使用背景減法和選擇性搜索策略來(lái)檢測(cè)魚(yú)類(lèi)。Qin等人[7]在魚(yú)類(lèi)識(shí)別的Ground-Truth數(shù)據(jù)集上使用卷積神經(jīng)網(wǎng)絡(luò),該數(shù)據(jù)集由23個(gè)物種的總共27 370個(gè)魚(yú)類(lèi)圖像組成,它們的準(zhǔn)確度達(dá)到98.57%。Qin等人[8]對(duì)兩個(gè)卷積層使用主成分分析,通過(guò)降維方法提取圖像的特征。利用空間金字塔池提取對(duì)大姿態(tài)不變的信息,再采用SVM(Support Vector Machine,支持向量機(jī))進(jìn)行分類(lèi),準(zhǔn)確率提高了0.07%。Salman等人[9]創(chuàng)建了一個(gè)由三個(gè)卷積層組成的深層結(jié)構(gòu)來(lái)提取特征,然后將來(lái)自網(wǎng)絡(luò)多層的特征組合起來(lái),他們?cè)? 500張魚(yú)類(lèi)圖像的測(cè)試集上獲得了96.75%的準(zhǔn)確率。但是這些從頭開(kāi)始學(xué)習(xí)深層架構(gòu)的方法需要大量數(shù)據(jù)集,需要訓(xùn)練大量權(quán)重并且耗時(shí)較長(zhǎng)。在實(shí)際中由于計(jì)算機(jī)資源的配置以及可用的水下數(shù)據(jù)集較小,很難提升識(shí)別的準(zhǔn)確率。為了克服此問(wèn)題,采用遷移學(xué)習(xí)框架,在大型數(shù)據(jù)集上進(jìn)行預(yù)訓(xùn)練,采用已經(jīng)訓(xùn)練好的權(quán)重來(lái)訓(xùn)練自己所需要的網(wǎng)絡(luò)模型。文中采用AlexNet模型進(jìn)行遷移學(xué)習(xí),保留網(wǎng)絡(luò)模型的低層的權(quán)重,在魚(yú)類(lèi)目標(biāo)數(shù)據(jù)集上訓(xùn)練高層用于提取特征,重新訓(xùn)練分類(lèi)器,從而對(duì)魚(yú)類(lèi)進(jìn)行識(shí)別。
采用Fish4Knowledge(F4K)數(shù)據(jù)集中的魚(yú)類(lèi)圖像作為實(shí)驗(yàn)數(shù)據(jù),數(shù)據(jù)集如圖1所示,選用F4K中的五種魚(yú)類(lèi)數(shù)據(jù)作為本課題研究的數(shù)據(jù)集,種類(lèi)和數(shù)量如表1所示。
圖1 F4K數(shù)據(jù)集
表1 魚(yú)種類(lèi)與數(shù)量
為了能夠快速精確地識(shí)別圖片中的魚(yú)的品種,避免其他背景信息的干擾,先對(duì)圖像進(jìn)行前景提取(見(jiàn)圖2(a)),消除背景令網(wǎng)絡(luò)只關(guān)注魚(yú)類(lèi)目標(biāo)主體[10]。將圖片的大小統(tǒng)一調(diào)整為130*180像素,RGB格式之后,采用數(shù)據(jù)增強(qiáng)的方法,因?yàn)榫矸e神經(jīng)網(wǎng)絡(luò)在有更多數(shù)據(jù)的情況下可以防止過(guò)度擬合。通過(guò)隨機(jī)抖動(dòng)、裁剪、旋轉(zhuǎn)、反射、縮放等方式從訓(xùn)練數(shù)據(jù)中產(chǎn)生更多圖像,同時(shí)保持標(biāo)簽完整(見(jiàn)圖2(b))。隨機(jī)將處理后的前景魚(yú)圖像的80%作為訓(xùn)練集輸入網(wǎng)絡(luò),20%作為測(cè)試集。
(a)提取前景魚(yú)類(lèi)圖像
遷移學(xué)習(xí)指的是使用在大數(shù)據(jù)集上預(yù)先訓(xùn)練的網(wǎng)絡(luò)的權(quán)重的過(guò)程。預(yù)先訓(xùn)練的網(wǎng)絡(luò)已經(jīng)學(xué)會(huì)了如何利用卷積層識(shí)別較低層的特征,例如邊緣、線(xiàn)、曲線(xiàn)等,因?yàn)榫矸e層通常是過(guò)程中計(jì)算最耗時(shí)的部分,使用這些權(quán)重比從頭訓(xùn)練網(wǎng)絡(luò)能更快地收斂到好的分?jǐn)?shù)[11]。
AlexNet網(wǎng)絡(luò)模型有五個(gè)卷積層,卷積層中有較多的過(guò)濾器,彩色濾波器用于提取低頻特征,灰度濾波器提取高頻特征,有著更多種類(lèi)的選擇性過(guò)濾器的AlexNet模型在不同的尺度和不同的方向能提取更多的特征[12-13]。AlexNet已經(jīng)從ImageNet數(shù)據(jù)集訓(xùn)練了120多萬(wàn)張圖像。
由于本訓(xùn)練中使用的魚(yú)類(lèi)圖像數(shù)據(jù)集與ImageNet完全不同,所以該文采用微調(diào)的方法。在較低層捕獲的邊緣,線(xiàn)條特征與該文的魚(yú)類(lèi)圖像識(shí)別是通用的,即保留原模型的低層權(quán)重,將其用于該文的訓(xùn)練模型中。再將高層網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)進(jìn)行相應(yīng)的調(diào)整,使其學(xué)習(xí)魚(yú)類(lèi)圖像的特征,將提取到的特征向量用于訓(xùn)練SVM分類(lèi)器,判斷魚(yú)的種類(lèi)。因?yàn)閷?duì)于樣本較少的數(shù)據(jù)集,采用SVM分類(lèi)器的效果會(huì)比Softmax分類(lèi)器更好。選用徑向基核函數(shù)作為SVM的核函數(shù),最后模型輸出參數(shù)是魚(yú)圖像的種類(lèi)數(shù)。流程如圖3所示。
圖3 基于預(yù)訓(xùn)練AlexNet網(wǎng)絡(luò)和遷移學(xué)習(xí)技術(shù)的魚(yú)類(lèi)識(shí)別方法流程
激活函數(shù)的選擇,是提高模型整體質(zhì)量的重要因素。通過(guò)將魚(yú)類(lèi)圖像輸入訓(xùn)練模型中,采用控制變量的原則,應(yīng)用不同的激活函數(shù),得到魚(yú)類(lèi)識(shí)別的準(zhǔn)確率如表2所示。
表2 不同激活函數(shù)的測(cè)試準(zhǔn)確率
結(jié)果表明采用Tanh作為激活函數(shù),最終識(shí)別測(cè)試的準(zhǔn)確率是優(yōu)于其他激活函數(shù)的。雖然Tanh應(yīng)用在特征相差較大的情況下得到的識(shí)別率會(huì)高,但是Sigmoid和Tanh都會(huì)存在梯度消失的問(wèn)題。使用ReLU激活函數(shù),收斂速度較快,但是當(dāng)學(xué)習(xí)率大時(shí),其在訓(xùn)練時(shí)會(huì)很脆弱,網(wǎng)絡(luò)中的神經(jīng)元將不會(huì)起到作用。為解決上述函數(shù)存在的問(wèn)題,該文采用Leaky ReLU作為激活函數(shù),原來(lái)所有的負(fù)值都為0,現(xiàn)在給負(fù)值一個(gè)確定的非0的斜率,讓負(fù)數(shù)區(qū)域不再飽和。在該實(shí)驗(yàn)中,αi取值為100,應(yīng)用此激活函數(shù),魚(yú)類(lèi)識(shí)別的準(zhǔn)確率達(dá)到75.29%。
其中,αi是(1,+∞)區(qū)間內(nèi)的固定參數(shù)。
該文進(jìn)行的魚(yú)類(lèi)識(shí)別的研究,因?yàn)樗聰?shù)據(jù)集相對(duì)于ImageNet來(lái)說(shuō)較小,而AlexNet神經(jīng)網(wǎng)絡(luò)模型又具有很強(qiáng)大的能力,所以為了防止模型的過(guò)擬合,即在訓(xùn)練集上表現(xiàn)得很好,但在測(cè)試集上效果較差的情況下,需要對(duì)網(wǎng)絡(luò)模型結(jié)構(gòu)進(jìn)行調(diào)整優(yōu)化[14]。在激活層后面加入batch normalization批標(biāo)準(zhǔn)化層和dropout層。批標(biāo)準(zhǔn)化層保證了激活層的規(guī)范輸出,使得梯度消失的問(wèn)題得到解決,從而使網(wǎng)絡(luò)的訓(xùn)練速度大大提高,收斂加快,同時(shí)還具有較好的表達(dá)處理能力。dropout層通過(guò)隨機(jī)丟棄50%激活層神經(jīng)元的值來(lái)減輕模型的過(guò)擬合,使得網(wǎng)絡(luò)不學(xué)習(xí)冗余信息,提高模型的訓(xùn)練速度。
AlexNet卷積神經(jīng)網(wǎng)絡(luò)的特征提取過(guò)程是自動(dòng)學(xué)習(xí)到的,相當(dāng)于在訓(xùn)練一個(gè)個(gè)過(guò)濾器,是無(wú)監(jiān)督的特征學(xué)習(xí)過(guò)程[15-16]。淺層網(wǎng)絡(luò)提取紋理細(xì)節(jié)特征,包含較多關(guān)鍵特征,深層網(wǎng)絡(luò)提取輪廓,形狀,包含最強(qiáng)特征。圖4為神經(jīng)網(wǎng)絡(luò)卷積層提取到的特征以及將特征圖融合后得到的整體特征圖。
圖4 特征圖可視化
采用特征遷移的方法,即AlexNet模型不經(jīng)過(guò)任何微調(diào),只是通過(guò)移除全連接層fc8替換成分類(lèi)器,將特征向量輸入SVM分類(lèi)器中進(jìn)行分類(lèi)訓(xùn)練,將此方法簡(jiǎn)稱(chēng)為AlexNet-SVM。對(duì)比此方法與該文采用的微調(diào)后的AlexNet模型,評(píng)估微調(diào)對(duì)系統(tǒng)性能的影響。
識(shí)別準(zhǔn)確度的對(duì)比如表3所示,所提出的對(duì)預(yù)訓(xùn)練模型進(jìn)行微調(diào)是有效的,并且給出了較好的結(jié)果,模型經(jīng)過(guò)微調(diào)相比沒(méi)有采用微調(diào)的方案更好。驗(yàn)證了AlexNet網(wǎng)絡(luò)的高層對(duì)目標(biāo)對(duì)象的細(xì)節(jié)識(shí)別起到重要作用,在經(jīng)過(guò)微調(diào)后,這些高層對(duì)魚(yú)類(lèi)品種的分類(lèi)變得更加精確,達(dá)到了98.34%最佳精度。魚(yú)類(lèi)Scolopsis bilineata的樣本很少,但是在經(jīng)過(guò)微調(diào)后的模型訓(xùn)練測(cè)試,識(shí)別的精確度達(dá)到100%,因此得出結(jié)論是微調(diào)提高了系統(tǒng)的性能。
表3 AlexNet-SVM與文中模型的識(shí)別準(zhǔn)確度對(duì)比
(a)準(zhǔn)確率曲線(xiàn)
在魚(yú)類(lèi)數(shù)據(jù)集上分別做了基于微調(diào)的模型和沒(méi)有經(jīng)過(guò)微調(diào)的模型的性能對(duì)比實(shí)驗(yàn),采用相同的批大小50,其他參數(shù)也保持相同,迭代200次,記錄訓(xùn)練所用的時(shí)間,如表4所示。驗(yàn)證了該文提出的基于遷移學(xué)習(xí)的微調(diào)模型能夠在擁有較少樣本的數(shù)據(jù)集中學(xué)習(xí)到較多的特征,并且識(shí)別效果相比傳統(tǒng)方法更好。從圖5中可以看出,文中模型相比AlexNet-SVM模型能夠較快的收斂,在50次迭代后趨于收斂,而AlexNet-SVM模型在100次迭代后才開(kāi)始趨于收斂,同時(shí)文中模型的訓(xùn)練耗時(shí)較少。
表4 兩種模型的實(shí)驗(yàn)對(duì)比
該文提出了一種基于預(yù)訓(xùn)練AlexNet模型和遷移學(xué)習(xí)技術(shù)的魚(yú)類(lèi)識(shí)別方法,對(duì)高層網(wǎng)絡(luò)模型參數(shù)進(jìn)行不斷實(shí)驗(yàn)調(diào)整優(yōu)化,學(xué)習(xí)魚(yú)類(lèi)圖像的特征,將提取的特征用于訓(xùn)練SVM分類(lèi)器從而判斷魚(yú)的種類(lèi)。通過(guò)此方法解決了實(shí)際中收集數(shù)據(jù)集困難的問(wèn)題,用較少的樣本訓(xùn)練了一個(gè)較好的網(wǎng)絡(luò)模型。實(shí)驗(yàn)對(duì)比驗(yàn)證了該方法取得了較好的識(shí)別效果,對(duì)海洋生物的研究起到了促進(jìn)作用。下一步的研究不僅僅是基于圖片的識(shí)別,將在視頻的基礎(chǔ)上進(jìn)行魚(yú)類(lèi)目標(biāo)的跟蹤識(shí)別。