梅旭恒,馬嘉輝,陳志軒,鄧一星,楊榮領(lǐng)
(華南理工大學(xué)廣州學(xué)院,廣東 廣州 510800)
近年來,基于卷積神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)中的強大的特征提取能力和泛化能力,在圖像識別與分類、目標(biāo)檢測、圖像文本及圖表的識別與分類、語義分割與自然語言處理、場景分類、人臉識別、音頻檢索、醫(yī)療診斷諸多領(lǐng)域等眾多領(lǐng)域都得到了廣泛地應(yīng)用。然而,由于深度卷積神經(jīng)網(wǎng)絡(luò)普遍規(guī)模龐大、計算度復(fù)雜,限制了其在實時要求高和資源受限環(huán)境下的應(yīng)用。因此,對卷積神經(jīng)網(wǎng)絡(luò)的計算過程進(jìn)行優(yōu)化,提高其計算效果有助于深度學(xué)習(xí)在更廣泛的領(lǐng)域應(yīng)用,已成為深度學(xué)習(xí)社區(qū)的一個新的研究熱點。卷積神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的優(yōu)化可以分為計算結(jié)構(gòu)的優(yōu)化、激活函數(shù)優(yōu)化和卷積核初始參數(shù)優(yōu)化等三大類型。目前大多數(shù)的優(yōu)化集中在計算結(jié)構(gòu)的優(yōu)化[1],針對卷積核初始參數(shù)優(yōu)化研究比較少。然而卷積的過程可以看成是卷積核的圖像模式與被分類圖像的圖像模式的匹配濾波的過程。對于特定的圖像識別或分類來說,如果卷積核能表征待分類圖像特有的局部幾何特性,則這些幾何特性就更容易被檢測出來。因此在CNN神經(jīng)網(wǎng)絡(luò)訓(xùn)練中,卷積核初始化是非常重要的。
卷積神經(jīng)網(wǎng)絡(luò)在圖像識別領(lǐng)域有著重要地位。卷積神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)魯棒性取決于網(wǎng)絡(luò)的層數(shù),激活函數(shù)的選擇,權(quán)重初始化等因素。在權(quán)重初始化方面,近年來人們更多的是使用正態(tài)分布初始化(μ=0,σ2= 0 .01),正態(tài)分布初始化的優(yōu)點是適用于大部分圖像場景,能夠很好地解決網(wǎng)絡(luò)參數(shù)傳播的梯度問題。正態(tài)分布初始化的方法有許多,目前,該領(lǐng)域中具有代表性的是Xavier[2]初始化和何凱明等[3]提出的針對 Relu激活函數(shù)的初始化,在實際場景中具有良好的應(yīng)用效果。正態(tài)分布初始化的好處是可以較好地適應(yīng)各類訓(xùn)練數(shù)據(jù),但容易導(dǎo)致梯度傳播的問題,如梯度消失或梯度爆炸,會降低訓(xùn)練速度。
在卷積神經(jīng)網(wǎng)絡(luò)中,權(quán)重參數(shù)與訓(xùn)練樣本的關(guān)聯(lián)程度越大,卷積運算的結(jié)果輸出就越大,該卷積核對于樣本的特征提取效果越顯著。2019年4月,朱繼洪等[4]提出從訓(xùn)練樣本中通過局部模式聚類的方法提取卷積核,該方法對通過訓(xùn)練樣本得出的卷積核進(jìn)行篩選,挑選出動態(tài)范圍和信息熵較大的卷積核作為權(quán)重初始值,加速了網(wǎng)絡(luò)訓(xùn)練初期的收斂速度,對最終網(wǎng)絡(luò)的識別精度有所提高。
在此之前,對于卷積神經(jīng)網(wǎng)絡(luò)的卷積核權(quán)重初始化一直是采用隨機值。不論是用不同的分布產(chǎn)生的隨機數(shù),還是通過自身卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練出來的權(quán)重值進(jìn)行初始化,都缺少了可解釋性,在生成的許多卷積核當(dāng)中,存在著對特征提取貢獻(xiàn)較低的無用卷積核。另一方面,卷積核的數(shù)量越多,模型計算成本就會大幅提高。若通過卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練卷積核權(quán)重值再進(jìn)行權(quán)重初始化,還需要進(jìn)行二次訓(xùn)練,從經(jīng)濟成本和時間成本的角度而言,都存在著不足之處。
由此帶來了兩個問題:(1)卷積核初始參數(shù)的優(yōu)化是否能夠提高卷積神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的效率與精度?(2)如果卷積核初始參數(shù)優(yōu)化有效,則卷積核初始參數(shù)優(yōu)化的指導(dǎo)原則是什么?針對以上兩個問題,本文以圖像表格的識別與分類作為實驗場景,基于卷積的本質(zhì)基礎(chǔ),根據(jù)大部分表格表單的共有特征,自定義設(shè)計卷積核的權(quán)值參數(shù),使得網(wǎng)絡(luò)訓(xùn)練處理能夠大概率接近收斂域,引導(dǎo)網(wǎng)絡(luò)訓(xùn)練更接近全局最優(yōu),在減少訓(xùn)練成本的情況下,分類精度仍然較高。
二維卷積公式為:
由此可見,卷積中的特征提取過程實質(zhì)上是匹配濾波的過程。因此,在CNN網(wǎng)絡(luò)訓(xùn)練中卷積核初始值矩陣與樣本特征關(guān)聯(lián)越大,輸出就越強,特征提取的效果就越好。在許多場景下,卷積神經(jīng)網(wǎng)絡(luò)用于無監(jiān)督學(xué)習(xí)過程,樣本特征本身是未知的。因此,卷積核初始值采用正態(tài)分布初始化可以適用于大部分圖像場景,并能夠很好地解決網(wǎng)絡(luò)參數(shù)傳播的梯度問題。另一方面,在某種特定場合下,其樣本特征也是可知的,例如表格識別情形。針對表格樣本本身的特征顯而易見的特點,基于卷積核初始值與訓(xùn)練樣本特征越相似,輸出就越強,特征提取的效果就越好的思想,本文提出了一種簡化的卷積核初始值的設(shè)置方法。其步驟如為:
Step.1確定特征子圖片。根據(jù)已知的樣本特征,選取能夠代表該特征的子圖片。例如,再表格情形下,可以選取如圖1所示的9張子圖片來代表表格的9個顯著特征。
Step.2劃分子圖片網(wǎng)格。根據(jù)既定的卷積核大小和網(wǎng)格的分布,將選取的子圖片按照卷積核網(wǎng)格分布劃分網(wǎng)格。
Step.3計算網(wǎng)格指標(biāo)值。指標(biāo)值是指能反映圖像特征的數(shù)值。在圖像情況下,通常選擇像素點的RGB值來表達(dá)。如果不需要考慮色彩,也可以采取像素點的灰度?;蛘咴诤诎變缮闆r下,也可以采用0代表白色,1代表黑色,例如,表格。
Step.4計算網(wǎng)格指標(biāo)值比例。指標(biāo)值比例是網(wǎng)格內(nèi)指標(biāo)值總和與卷積核內(nèi)指標(biāo)值總和之比。
Step.5計算相鄰網(wǎng)格的影響?;谙噜従W(wǎng)格的特征會對目標(biāo)網(wǎng)格有一定的擴散影響,指標(biāo)值應(yīng)該考慮相鄰網(wǎng)格的指標(biāo)值因擴散而來的影響值。根據(jù)實驗經(jīng)驗,這個影響值與距離的平方成反比。
Step.6最后在卷積核內(nèi)對所有網(wǎng)格指標(biāo)值(包括本地指標(biāo)值和擴散進(jìn)來的指標(biāo)值之和)進(jìn)行 Z值標(biāo)準(zhǔn)化處理。由此獲得的卷積核的標(biāo)準(zhǔn)指標(biāo)值就是卷積核的初始值。
為了驗證卷積核初始參數(shù)的優(yōu)化對提高卷積神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的效率與精度的效果,本文選擇了表格圖像作為研究對象。卷積神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的目的是有效地識別表格特征,進(jìn)而準(zhǔn)確地對表格圖像進(jìn)行分類。對于表格表單樣本,特征比較簡單,李海濤等[4]提出表格普遍存在的特征主要有9種類型(如圖1)。在設(shè)計卷積核時,為減少網(wǎng)絡(luò)計算量,采用9個與表格特征相對應(yīng)的卷積核進(jìn)行實驗。
圖1 表格的9種基本元素類型Fig.1 The nine basic element types of a table
根據(jù)前文的確定卷積核初始值的步驟,對圖1中的表格的9種基本元素類型,分別設(shè)計了3×3大小的卷積核參數(shù),并進(jìn)一步驗證了其提取效果,如圖2所示。
神經(jīng)網(wǎng)絡(luò)的設(shè)計如圖3,一層輸入層(input),一層卷積層(conv1),一層池化層(pooling1),全連接層 1(fc1)、全連接層 2(fc2),輸出層(output)。
在conv1層,僅采用9個3×3大小的卷積核來進(jìn)行表格特征提取,激活函數(shù)選擇了 Relu函數(shù),在式(2)中可知,Relu在對提取特征的時候可以避免提取負(fù)值,即保留相應(yīng)的特征,消極特征值不保留,在網(wǎng)絡(luò)前向傳播時可以保持網(wǎng)絡(luò)的一些輸出為0,使得網(wǎng)絡(luò)變得稀疏,更具有魯棒性。
圖2 對9種基本表格特征的卷積核權(quán)重值和提取效果Fig.2 The weight and extraction effect of convolution kernel for 9 basic table features
圖3 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 Neural network structure
在 pooling1層采用 2×2大小的 max-pooling方法來進(jìn)行最大池化采樣,網(wǎng)絡(luò)參數(shù)傳播復(fù)雜度和計算量可以成指數(shù)級減少,同時可以很大程度保留特征。在fc1層把網(wǎng)絡(luò)降到了1 024×1的維度,再用fc2層連接輸出層。
網(wǎng)絡(luò)模型的參數(shù)如表 1,為了使模型能夠更接近梯度最優(yōu)解,梯度學(xué)習(xí)率選擇了0.001,epoch只選擇了 20次,每一個 epoch的批處理大小為128張。
表1 網(wǎng)絡(luò)模型參數(shù)Tab.1 Ne twork model parameters
圖4 實驗數(shù)據(jù)樣本Fig.4 Experimental data sample
實驗通過收集各種不同類型的表單,如增值稅發(fā)票,貨運單,快遞單等,首先對圖片分別進(jìn)行橫豎線的提取,分別將同一張圖片提取的橫線圖片和豎線圖片進(jìn)行合成,形成一張僅有表格線框的表格線框圖。最后把經(jīng)過處理的數(shù)據(jù)進(jìn)行平移、縮放和對圖片加入噪聲等方式對數(shù)據(jù)集進(jìn)行數(shù)據(jù)增強,最終形成約2萬張表單線框數(shù)據(jù),其中采用1 000張數(shù)據(jù)作為驗證集。
實驗通過訓(xùn)練不同類型的表格數(shù)據(jù)樣本,對卷積神經(jīng)網(wǎng)絡(luò)中卷積層的第一層卷積核參數(shù)分別使用了Normal_init、Xavier_init和根據(jù)特征像素分布進(jìn)行初始化進(jìn)行對比實驗并統(tǒng)計平均值。
從表 2中可以知道,根據(jù)表格表單的線框特征初始化卷積核進(jìn)行訓(xùn)練,準(zhǔn)確率相對于μ=0,σ2=0.01的正態(tài)分布初始化和Xavier初始化有顯著的提升,同時計算出來的平均損失值也較小,這說明該卷積核初始化的方式對表格現(xiàn)況特征提取效果更具有針對性。由于卷積與濾波的相像,在訓(xùn)練的迭代次數(shù)中,只要根據(jù)特征關(guān)聯(lián)初始化,在前期的迭代中就會有較高的準(zhǔn)確率,而在后面的迭代中差距減小,但總體上仍具有較高的分類精度。
表2 三種初始化方法下的訓(xùn)練準(zhǔn)確率、測試準(zhǔn)確率和損失對比Tab.2 Training accuracy, test accuracy and loss comparison under three initialization methods
圖5 三種初始化方法訓(xùn)練和測試準(zhǔn)確率曲線Fig.5 The train and test accuracy curve for three initialization
圖6 三種初始化方法損失曲線Fig.6 The loss curve for three initialization
通過訓(xùn)練準(zhǔn)確率曲線可知,在訓(xùn)練開始迭代初期,DIY初始化保持較高的識別水平,在幾次迭代之后,訓(xùn)練準(zhǔn)確率略有波動,相對于 Xavier初始化和Normal初始化來說較穩(wěn)定,整體呈現(xiàn)上升趨勢。
為了驗證三種不同的初始化方法對于表格分類的能力,在測試模型當(dāng)中,把提取好表格線框的1 000張測試數(shù)據(jù)輸入模型進(jìn)行批量驗證,在初期優(yōu)勢體現(xiàn)明顯,驗證分類的正確率可達(dá)到約70%,遠(yuǎn)高于Xavier初始化(約60%)和Normal初始化(約30%)的分類精度,在分類驗證完成后,驗證分類的準(zhǔn)確率仍略高于Xavier初始化和Normal初始化約1%。
在計算損失曲線時采用了交叉熵作為損失進(jìn)行最小化,在第一步計算交叉熵的時候,計算出的損失在三者中位于最高,經(jīng)過幾次迭代后計算,損失明顯降低,在之后的整個迭代過程中的損失都小于其他兩者,說明預(yù)測值與真實值較其他兩種初始化來說更接近。
本文針對卷積核初始設(shè)計對卷積神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的優(yōu)化效果進(jìn)行了實驗研究,提出了根據(jù)圖像局部特征分布對卷積核參數(shù)進(jìn)行初始化,把各種特征對應(yīng)的卷積核進(jìn)行組合的初始參數(shù)的優(yōu)化方法,并制定了卷積核初始參數(shù)的基本原則。通過以圖像表格的識別與分類作為實驗場景的實驗驗證,認(rèn)為卷積核組成的局部特征模式的網(wǎng)絡(luò),在訓(xùn)練過程可明顯提高圖像樣本典型特征的提取質(zhì)量。實驗中,還根據(jù)設(shè)計原則指定的卷積核初始參數(shù)與傳統(tǒng)的Normal、Xavier等初始化方法進(jìn)行了比較。實驗結(jié)果表明,在同一實驗條件下,本文的方法在網(wǎng)絡(luò)訓(xùn)練初期收斂速度明顯更快,引導(dǎo)了網(wǎng)絡(luò)的優(yōu)化方向,并且分類精度也有一定程度的提高。在神經(jīng)網(wǎng)絡(luò)模型中,這一方式能夠加速模型針對表格特征的學(xué)習(xí),在迭代次數(shù)較少的情況下,準(zhǔn)確率也保持較高的水平。盡管本文的驗證實驗是針對表格圖像的處理,但是制定卷積核初始參數(shù)的基本原則及其對卷積神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的優(yōu)化提供了一種新的思路,值得在今后的圖像識別與分類研究中借鑒。