收稿日期:2023-07-18
基金項(xiàng)目:中南林業(yè)科技大學(xué)涉外學(xué)院2021年度院級科研項(xiàng)目(SYKY202121)
DOI:10.19850/j.cnki.2096-4706.2024.04.023
摘? 要:文章對人臉識別技術(shù)進(jìn)行了調(diào)查,對比分析了傳統(tǒng)識別技術(shù)以及基于深度學(xué)習(xí)識別技術(shù)的不同,指出由于深度學(xué)習(xí)的網(wǎng)絡(luò)結(jié)構(gòu)較為復(fù)雜,在人臉識別過程中容易出現(xiàn)算法過擬合的現(xiàn)象。針對上述過擬合問題,文章對基于權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)的人臉識別算法進(jìn)行了研究,此類神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)簡單,僅有輸入、輸出兩層結(jié)構(gòu),將人臉圖片作為輸入信息,網(wǎng)絡(luò)訓(xùn)練目標(biāo)為計(jì)算三次樣條權(quán)函數(shù),仿真實(shí)驗(yàn)證明該類網(wǎng)絡(luò)具有較好的識別準(zhǔn)確度和識別效率。
關(guān)鍵詞:人臉識別;三次樣條權(quán)函數(shù);神經(jīng)網(wǎng)絡(luò)
中圖分類號:TP183;TP391.4? 文獻(xiàn)標(biāo)識碼:A? 文章編號:2096-4706(2024)04-0109-04
Research on Face Recognition Based on Cubic Spline Weight Function Neural Network
LIU Min
(Swan College, Central South University of Forestry and Technology, Changsha? 410211, China)
Abstract: This paper investigates face recognition technology, compares and analyzes the differences between traditional recognition technology and recognition technology based on Deep Learning. It is pointed out that due to the complex network structure of Deep Learning, the phenomenon of algorithm overfitting is prone to occur in the face recognition process. In response to the overfitting problem mentioned above, this paper studies the face recognition algorithm based on weight function neural network. This type of neural network has a simple structure with only two layers of input and output, and takes face images as input information. The training objective of the network is to calculate the cubic spline weight function. The simulation experiments show that this type of network has good recognition accuracy and efficiency.
Keywords: face recognition; cubic spline weight function; neural network
0? 引? 言
人臉識別技術(shù)在計(jì)算機(jī)視覺和生物識別領(lǐng)域是研究最多的課題之一,其使用的識別技術(shù)包含傳統(tǒng)的模式識別方法以及目前流行正盛的深度學(xué)習(xí)方法。傳統(tǒng)方法是通過算法來分析人臉五官的特征,將這些信息作為特征點(diǎn)與數(shù)據(jù)庫里的信息進(jìn)行比對,尋找配對的人臉信息。但這種方式容易受到拍攝角度、光線等的影響,導(dǎo)致特征匹配存在較大的誤差,從而整體識別率較低。而基于深度學(xué)習(xí)的人臉識別方法采用大數(shù)據(jù)采集的人臉信息作為訓(xùn)練樣本,通過復(fù)雜的學(xué)習(xí)算法計(jì)算出人臉識別模型,進(jìn)而使得信息實(shí)時(shí)處理、人臉精準(zhǔn)識別得到實(shí)現(xiàn)。深度學(xué)習(xí)技術(shù)多數(shù)采用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行模型訓(xùn)練,由于卷積神經(jīng)網(wǎng)絡(luò)主要由輸入層、卷積層、ReLU層、池化層、全連接層層疊構(gòu)成,導(dǎo)致數(shù)據(jù)前向傳輸過程中存在訓(xùn)練速度相對較慢的問題,而對于人臉識別的應(yīng)用往往對識別速度要求較高,并且這種神經(jīng)網(wǎng)絡(luò)難以反映樣本的信息[1]。
針對以上問題,本文將一種新型的神經(jīng)網(wǎng)絡(luò)即三次樣條權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)應(yīng)用于人臉識別場景中。該算法僅采用三層的網(wǎng)絡(luò)結(jié)構(gòu),網(wǎng)絡(luò)識別速度快,并且訓(xùn)練后的神經(jīng)網(wǎng)絡(luò)的權(quán)值是輸入樣本的三次樣條函數(shù),通過仿真實(shí)驗(yàn)訓(xùn)練后的權(quán)函數(shù)可以更好地反映輸入樣本的信息。在人臉識別領(lǐng)域,權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)可以更好地提取和表達(dá)人臉圖像中的特征,達(dá)到更準(zhǔn)確的識別效果。
1? 人臉識別
人臉識別是分析比較人臉特征從而進(jìn)行身份認(rèn)證的一種計(jì)算機(jī)技術(shù)。識別過程就是利用攝像頭或攝像機(jī)拍攝人臉信息,自動在人臉圖像中進(jìn)行讀取并檢測人臉信息,進(jìn)而對檢測到的信息進(jìn)行識別驗(yàn)證的一系列相關(guān)活動[2]。人臉識別在安全領(lǐng)域、身份驗(yàn)證、無人機(jī)監(jiān)測、社交媒體等多個(gè)領(lǐng)域有廣泛的應(yīng)用。人臉識別過程通常要求具備準(zhǔn)確性和實(shí)時(shí)性,識別結(jié)果應(yīng)盡可能匹配輸入圖像的人臉,這就要求算法應(yīng)具備高度的準(zhǔn)確度和精度;同時(shí)要求在短時(shí)間內(nèi)完成對人臉的識別,尤其在人臉門禁、人臉支付等場景下,需要迅速識別人臉并做出響應(yīng)。
人臉識別技術(shù)一般包括如下幾個(gè)步驟:
1)人臉檢測:首先通過計(jì)算機(jī)視覺技術(shù)來自動識別和定位圖像或視頻中的人臉。
2)特征提取:將人臉圖像轉(zhuǎn)化為一組數(shù)值特征表示,通常是計(jì)算臉部的關(guān)鍵點(diǎn)、紋理、顏色等特征。
3)特征匹配:將提取到的人臉特征與已有的特征進(jìn)行比對,以判斷兩者之間的相似度或匹配程度。
4)人臉決策:通過模式匹配方法或者機(jī)器學(xué)習(xí)方法進(jìn)行選擇和設(shè)計(jì),確定該圖像屬于哪個(gè)人或哪個(gè)類別。
2? 樣條權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)
近年來,權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)已被廣泛用于人臉識別中的特征提取和分類任務(wù)。權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)能夠通過學(xué)習(xí)權(quán)重和激活函數(shù)的方式來自動地提取和表示人臉圖像中的特征信息。這種網(wǎng)絡(luò)結(jié)構(gòu)具有高效、準(zhǔn)確的特征提取和分類能力,能夠應(yīng)用于人臉識別的各個(gè)環(huán)節(jié)。相比傳統(tǒng)神經(jīng)網(wǎng)絡(luò),權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)可以在更細(xì)微的特征辨別上取得更好的效果。
2.1? 網(wǎng)絡(luò)結(jié)構(gòu)
傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)是由輸入層、隱含層和輸出層組成,每一層都包含輸入信息、神經(jīng)元和輸出信息,輸入信息為上一層的輸出信息[3]。網(wǎng)絡(luò)結(jié)構(gòu)采用Singmoid、ReLU等作為激勵(lì)函數(shù),構(gòu)成較為復(fù)雜的前饋神經(jīng)網(wǎng)絡(luò),通過梯度下降法求得網(wǎng)絡(luò)需要的系列參數(shù),目前正流行的卷積神經(jīng)網(wǎng)絡(luò)正是應(yīng)用了這種網(wǎng)絡(luò)結(jié)構(gòu)。但這種結(jié)構(gòu)在進(jìn)行網(wǎng)絡(luò)訓(xùn)練時(shí)由于結(jié)構(gòu)復(fù)雜,會導(dǎo)致訓(xùn)練時(shí)間較長、收斂速度慢的問題。
權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)則對傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行了改造,輸入層與輸入樣本相連接,輸入層經(jīng)過神經(jīng)元進(jìn)行簡單的加法操作后直接輸出運(yùn)算結(jié)果。與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的權(quán)值取常數(shù)不同,權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)的權(quán)值不再是固定的標(biāo)量值,而是變成了以輸入樣本作為變量的三次樣條函數(shù),故在網(wǎng)絡(luò)訓(xùn)練中只需要訓(xùn)練與輸入端連接的權(quán)值即可。權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)使用函數(shù)對權(quán)值進(jìn)行建模,使得不同神經(jīng)元之間的權(quán)值可以根據(jù)輸入數(shù)據(jù)的不同動態(tài)進(jìn)行靈活調(diào)整,能夠更好地處理多樣性和復(fù)雜性的數(shù)據(jù)。該類網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示[4]。
在圖1中,xi是輸入層的第i個(gè)輸入結(jié)點(diǎn),fj是第j個(gè)神經(jīng)元,wij是第j個(gè)神經(jīng)元連接第i個(gè)輸入結(jié)點(diǎn)的權(quán)值,yj是第j個(gè)神經(jīng)元對應(yīng)的輸出值。神經(jīng)元fj將與之相連的所有輸入節(jié)點(diǎn)的輸入量做加法運(yùn)算,就可得到對應(yīng)輸出量yj。
圖1? 權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)拓?fù)鋱D
2.2? 三次樣條函數(shù)
三次樣條函數(shù)是一種被廣泛應(yīng)用于插值和曲線擬合的數(shù)學(xué)函數(shù)。它在給定一些數(shù)據(jù)點(diǎn)的情況下,可以通過插值生成一條光滑的曲線。而插值通常取曲線的起始點(diǎn)和終止點(diǎn),以及這兩個(gè)點(diǎn)之間的控制點(diǎn),對應(yīng)曲線由一系列分段三次多項(xiàng)式組成[5-7]。
三次樣條函數(shù)的優(yōu)點(diǎn)在于它可以提供平滑的、連續(xù)的曲線,而不會在數(shù)據(jù)點(diǎn)之間產(chǎn)生突變。這是通過要求樣條函數(shù)在每個(gè)數(shù)據(jù)點(diǎn)處滿足一些條件來實(shí)現(xiàn)的,這些條件確保了曲線在數(shù)據(jù)點(diǎn)之間的平滑過渡。
2.3? 樣條權(quán)函數(shù)的建立
如前所述,在圖1所示的權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)中,輸入結(jié)點(diǎn)對應(yīng)的輸入樣本序列是作為已知條件存在的,如果想要獲得每個(gè)神經(jīng)元的輸出量只需知道其輸入量即可,即輸入結(jié)點(diǎn)到神經(jīng)元的權(quán)值wij(i = 1,2,…,m)。下面我們以第j個(gè)神經(jīng)元fj為例來介紹權(quán)值的計(jì)算過程。單個(gè)神經(jīng)元的拓?fù)浣Y(jié)構(gòu)如圖2所示。
圖2? 單個(gè)神經(jīng)元網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
在該類網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,假設(shè)輸入端有PN個(gè)輸入樣本,x (i, p)是第p( p = 1,2,…,PN)個(gè)輸入樣本中第i個(gè)輸入結(jié)點(diǎn)對應(yīng)的樣本值,y( j, p)是神經(jīng)元j在第p個(gè)輸入樣本映射下的實(shí)際輸出值,t( j, p)是目標(biāo)輸出值,wi (x (i, p))是神經(jīng)元j連接的第i個(gè)輸入結(jié)點(diǎn)對應(yīng)的權(quán)值。由于神經(jīng)元fj具有加法器的作用,存在如下關(guān)系:
即:
其中:
如果把wi (x (i, p))看作x (i, p)的樣條函數(shù),那么尋求樣條權(quán)函數(shù)wi (x (i, p))即是該類神經(jīng)網(wǎng)絡(luò)的訓(xùn)練目的。
根據(jù)已知的輸入樣本p,選取合適的激勵(lì)函數(shù)就可以得到目標(biāo)輸出t ( j, p),再通過調(diào)整每個(gè)權(quán)函數(shù)對應(yīng)的參數(shù)?i,即可快速得到每一個(gè)輸入樣本x (i, p)對應(yīng)的輸出分量ti ( j, p)。由此,根據(jù)輸入端提供的PN組輸入樣本可知,((x (i, 1), ti ( j, 1)),((x (i, 2),ti ( j, 2)),…,(x (i, PN),ti ( j, PN)))即為樣條權(quán)函數(shù)wi (x (i, p))的插值點(diǎn),那么網(wǎng)絡(luò)訓(xùn)練的任務(wù)也就轉(zhuǎn)換為求樣條權(quán)函數(shù)wi (x (i, p)),wi (x (i, p))能夠通過以上的插值點(diǎn)。很明顯,此類神經(jīng)網(wǎng)絡(luò)的權(quán)值是輸入樣本的函數(shù),而不是傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的常數(shù)。
本文采用三次樣條函數(shù)來計(jì)算權(quán)函數(shù)。為了方便表達(dá),對以上的符號做如下約定,輸入端第i個(gè)結(jié)點(diǎn)的輸入樣本向量為(x (i, 1),(x (i, 2),…,(x (i, PN)),輸入樣本對應(yīng)的權(quán)函數(shù)wi (x (i, p))的指派值序列為(y0, y1, …, yN) (N = PN - 1)。權(quán)函數(shù)wi (x)的三次樣條函數(shù)表達(dá)式可以表示如下:
其中 。其中Mk可通過下式得到:
記:
其中 ,,,上述方程組可以通過追趕法求解。
3? 計(jì)算機(jī)仿真
本實(shí)驗(yàn)以計(jì)算機(jī)拍攝的32位人臉圖片為研究對象,采用樣條權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)對人臉圖片進(jìn)行訓(xùn)練,獲取對應(yīng)的三次樣條權(quán)函數(shù)。選擇兩種實(shí)驗(yàn)場景:
1)分別選取不同的人臉圖片作為測試樣本進(jìn)行測試訓(xùn)練,比較訓(xùn)練誤差情況。
2)選取同一人臉的不同數(shù)量的樣本比較檢測效果。
本實(shí)驗(yàn)均在Anaconda的Spyder開發(fā)環(huán)境下實(shí)現(xiàn),Python版本為3.9。
輸入樣本獲取方法如下:計(jì)算機(jī)通過調(diào)用CV2相關(guān)函數(shù)打開攝像頭采集人臉信息圖片,選擇一部分作為訓(xùn)練圖片,另一部分為測試圖片。利用CV2圖片處理函數(shù)將圖片信息轉(zhuǎn)化為一維數(shù)組,假設(shè)該數(shù)組有n個(gè)數(shù)組元素,則第i個(gè)數(shù)組元素即為輸入端第i個(gè)輸入結(jié)點(diǎn)值。目標(biāo)輸出樣本通過激勵(lì)函數(shù)z = sin (x1 + x2 + … + xn) / (x1 + x2 + … + xn)得到。
實(shí)驗(yàn)1:圖片像素為32×32大小,共獲取到50張同一人的人臉信息,分別選取10、20、30、40、50張圖片進(jìn)行模型訓(xùn)練,那么本實(shí)驗(yàn)需要?jiǎng)?chuàng)建5個(gè)樣條權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò),同樣也需要?jiǎng)?chuàng)建5組對應(yīng)的三次樣條權(quán)函數(shù)。在對創(chuàng)建的神經(jīng)網(wǎng)絡(luò)模型進(jìn)行測試時(shí),我們選擇1張同一人的人臉圖片和1張其他人的人臉圖片作為測試圖片輸入到每組訓(xùn)練模型中進(jìn)行驗(yàn)證。選取的訓(xùn)練圖片和測試圖片如圖3、圖4所示。
圖3? 同一人的50張訓(xùn)練圖片
圖4? 1張同一人測試圖片和1張其他人測試圖片
針對兩張不同的測試圖片,經(jīng)過5種權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)的模型訓(xùn)練后,可以分別計(jì)算出兩張測試圖片對應(yīng)的網(wǎng)絡(luò)實(shí)際輸出和目標(biāo)輸出之間的誤差絕對值,誤差絕對值越小說明人臉識別越準(zhǔn)確,人臉匹配度越高。圖5為誤差絕對值折線圖,可以發(fā)現(xiàn),同一人的測試誤差值遠(yuǎn)遠(yuǎn)低于其他人的測試誤差值,說明經(jīng)過三次樣條權(quán)函數(shù)訓(xùn)練得到網(wǎng)絡(luò)模型對于同一人的人臉識別準(zhǔn)確性更高。
圖5? 不同圖片誤差折線圖
實(shí)驗(yàn)2:圖片像素為32×32大小,設(shè)置步長為10,依次選擇圖片個(gè)數(shù)從10按照步長遞增至100的10組人臉圖片進(jìn)行模型訓(xùn)練,再以同一張人臉圖片進(jìn)行模型測試,觀察輸出誤差絕對值的變化。發(fā)現(xiàn)當(dāng)訓(xùn)練圖片數(shù)量較少時(shí)誤差相對較大,檢測效果較差;隨著訓(xùn)練圖片數(shù)量增多誤差逐漸減小,實(shí)際輸出值接近目標(biāo)值。說明該類三次樣條權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練圖片越多,網(wǎng)絡(luò)模型的人臉識別誤差絕對值越小,人臉識別精度就越高。測試結(jié)果如圖6所示。
圖6? 10組訓(xùn)練模型誤差絕對值
4? 結(jié)? 論
本文研究的是三次樣條權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)在人臉圖片檢測中的應(yīng)用,該類算法與傳統(tǒng)的深度學(xué)習(xí)人臉識別算法相比,網(wǎng)絡(luò)結(jié)構(gòu)簡單,網(wǎng)絡(luò)訓(xùn)練目的僅是計(jì)算與輸入樣本相關(guān)的權(quán)函數(shù),且該類權(quán)函數(shù)是數(shù)學(xué)計(jì)算中常用到的非線性三次樣條函數(shù),同樣可以避免深度學(xué)習(xí)中常見的過擬合現(xiàn)象,從而可以達(dá)到快速精準(zhǔn)識別圖片的目的。通過計(jì)算機(jī)仿真實(shí)驗(yàn)驗(yàn)證得到,在同一網(wǎng)絡(luò)訓(xùn)練模型中,同一人臉的輸出誤差遠(yuǎn)低于其他人人臉的輸出誤差,說明經(jīng)過訓(xùn)練的網(wǎng)絡(luò)模型識別效率較高;當(dāng)訓(xùn)練的圖片較多時(shí)誤差值會急劇下降,說明此類神經(jīng)網(wǎng)絡(luò)的識別精度隨著訓(xùn)練樣本數(shù)量的增加而不斷增加。此類網(wǎng)絡(luò)可以應(yīng)用于小型設(shè)備快速身份識別等場景。作為進(jìn)一步的研究方向,后續(xù)將在該類神經(jīng)網(wǎng)絡(luò)中結(jié)合不同的激勵(lì)函數(shù)繼續(xù)對人臉識別結(jié)果進(jìn)行比較,選擇更精準(zhǔn)的網(wǎng)絡(luò)模型,提升網(wǎng)絡(luò)的識別精度和算法識別效率。
參考文獻(xiàn):
[1] 杜雪,王浩然,王欣悅.深度卷積神經(jīng)網(wǎng)絡(luò)的發(fā)展及其在計(jì)算機(jī)視覺領(lǐng)域的應(yīng)用 [J].電子元器件與信息技術(shù),2021,5(10):244-245.
[2] 秦鴻,李泰峰,郭亨藝,等.人臉識別技術(shù)在圖書館的應(yīng)用研究 [J].大學(xué)圖書館學(xué)報(bào),2018,36(6):49-54.
[3] 劉青,倪驍驊,郭祥東.樣條權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)在機(jī)械手逆運(yùn)動學(xué)中的應(yīng)用 [J].中國農(nóng)機(jī)化學(xué)報(bào),2015,36(3):282-285.
[4] 張代遠(yuǎn).樣條權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)的一種新型算法 [J].系統(tǒng)工程與電子技術(shù),2006(9):1434-1437+1446.
[5] LIU K L,LI H,Yan H,et al. An Improved Algorithm of Neural Networks with Cubic Spline Weight Function [C]//2010 Chinese Control and Decision Conference.Xuzhou:IEEE,2010:2674-2678.
[6] 盧輝斌,王倩.基于樣條權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)的入侵檢測 [J].計(jì)算機(jī)應(yīng)用研究,2009,26(2):448-450.
[7] 曹鋒. 有理樣條權(quán)函數(shù)神經(jīng)網(wǎng)絡(luò)研究及其在文本分類中的應(yīng)用 [D]. 南京:南京郵電大學(xué),2010.
作者簡介:劉敏(1984—),女,漢族,山東濟(jì)寧人,中級講師,碩士研究生,研究方向:計(jì)算機(jī)神經(jīng)網(wǎng)絡(luò)及應(yīng)用。