一種複雜環境下基於t分布的人臉快速識別方法與流程
2023-06-11 18:06:21 5
本發明涉及人工智慧領域,尤其是涉及一種複雜環境下基於t分布的人臉快速識別方法。
背景技術:
人臉識別作為智能識別領域中的應用,根據人臉特有的生物特徵信息,結合圖形圖像處理技術和模式識別技術來對人的身份進行識別鑑定,安全性及可靠性較高因此擁有強烈的市場需求,近幾年來在門禁與考勤、網絡安全、海關邊檢、物業管理、智能身份識別、駕照證檢驗、計算機系統登錄等方面已有相應發展。
為了實現識別算法的最優性能,近年來的研究已經清楚地認識到,人臉識別領域仍存在著一些重要挑戰,相比較已經取得可靠結果的人臉檢測、特徵點定位等,人臉識別屬於較複雜的人臉分析實驗,不應該仍在過於簡單的數據集上進行實驗。應該考慮複雜情況並保證多樣性幹擾,各複雜因素所佔比例均等的情況,同時要能解決簡單數據集中也可能存在的問題。鑑於目前的挑戰,以及深度學習過程中對數據的大量需求,主要困難就是缺乏在未約束環境下的數據集。因此在人臉識別方法的長遠發展中,應該考慮影響因素混雜的複雜環境下,尤其是同時在數據集有限的條件下,如何提高識別性能才是當前發展的難點。
縱觀深度學習的發展,基於卷積神經網絡優化而來的算法,目前主要流行的發展方向是基於四個方面:增加網絡的深度、寬度;增大數據量;隱藏層聯立;添加其他信號,要利用神經網絡發揮其作用,應該針對適用背景選擇具體方面進行改進和優化。在網絡結構趨向複雜的同時,必然對計算複雜度和時間複雜度產生影響,因此還存在著效率和性能難以兩全的難題。
技術實現要素:
本發明的目的是針對上述問題提供一種複雜環境下基於t分布的人臉快速識別方法。
本發明的目的可以通過以下技術方案來實現:
一種複雜環境下基於t分布的人臉快速識別方法,所述方法包括樣本訓練步驟和人臉識別步驟,所述樣本訓練步驟具體為:
a1)通過卷積神經網絡,對訓練樣本進行特徵提取,得到特徵樣本(x1,x2,…,xn);
a2)通過t分布非線性投影,將特徵樣本投影至低維空間,得到低維空間的訓練樣本(y1,y2,…,yn)和降維路徑參數;
所述人臉識別步驟具體為:
b1)通過卷積神經網絡,對待識別圖片進行特徵提取,得到待識別圖片的特徵樣本r;
b2)根據步驟a2)的降維路徑參數,將步驟b1)提取的待識別圖片的特徵樣本r投影至低維空間,得到低維空間的測試樣本s;
b3)通過分類器將步驟a2)得到的低維空間的訓練樣本(y1,y2,…,yn)和步驟b2)得到的測試樣本s進行分類識別,得到識別結果。
所述步驟a1)具體為:
a11)對訓練樣本進行預處理,得到預設大小的輸入圖像;
a12)將步驟a11)得到的輸入圖像通過卷積層,得到具備局部信息表達的特徵樣本;
a13)對步驟a12)得到的具備局部信息表達的特徵樣本通過聯立層,得到特徵樣本(x1,x2,…,xn)。
所述步驟a13)具體為:
a131)對步驟a12)得到的具備局部信息表達的特徵樣本進行聯立卷積,得到基於全局的特徵樣本;
a132)對步驟a131)得到的基於全局的特徵樣本通過relu進行線性修正,得到修正後的特徵樣本;
a133)對步驟a132)得到的修正後的特徵樣本通過dropout進行輸出的稀疏化處理,得到特徵樣本(x1,x2,…,xn)。
所述步驟a1)還包括:對得到的特徵樣本進行pca降維,得到初始維度下的特徵樣本。
所述步驟a2)具體為:
a21)記錄初始循環次數為0,隨機初始化低維空間中的對應點集(y1,y2,…,yn),根據高斯分布計算特徵樣本中的點xi間的相似度矩陣p;
a22)根據步驟a21)得到的相似度矩陣p,結合t分布計算得到權重gains(iter)和相似度總值nums,並計算增量incs,根據增量更新低維空間中對應點yi的值,並對循環次數加1;
a23)判斷循環次數是否達到預設次數,若是則結束循環,得到低維空間的訓練樣本(y1,y2,…,yn)、權重gains(iter)和相似度總值nums,若否則返回步驟a22)。
所述步驟a22)具體為:根據t分布計算低維空間中的對應點yi間的相似度矩陣q,根據定義的代價函數在相似度矩陣p、q間的kl距離建立懲罰機制,求yi求偏導得到對應的梯度,根據梯度的最優解在點yn更新權重gains(iter),根據相似度矩陣q中所有相似度之和更新相似度總值nums,計算增量incs,根據增量incs更新低維空間中對應點yi的值,並對循環次數加1。
所述定義的代價函數具體為:
其中,pij為點xi和點xj之間的相似度,qij為點yi和點yj之間的相似度,p為高維空間原點間的相似度矩陣,q為低維空間映射點間的相似度矩陣。
所述根據增量incs更新低維空間中的對應點yi的值具體為:
yi=yi+incs。
所述步驟b2)具體為:
b21)記錄初始循環次數為0,隨機初始化低維空間中的對應點s,根據高斯分布計算待測特徵樣本r與訓練樣本原點xi間的相似度矩陣r;
b22)根據t分布計算待測特徵樣本s與訓練樣本映射點yi間的相似度矩陣s,根據步驟a22)中記錄的權重gains(iter)和相似度總值nums,更新增量incs',根據增量incs'更新低維空間中的對應點si的值,並對循環次數加1;
b23)判斷循環次數是否達到預設次數,若是則結束循環,得到低維空間的測試樣本(s1,s2,…,sn),若否則返回步驟b22)。
所述t分布計算的自由度為9。
與現有技術相比,本發明具有以下有益效果:
(1)通過將非線性降維方法融入到卷積神經網絡中,對高維深度特徵進行降維,從而實現降維後的特徵樣本的簡化,降低計算量的同時也可以加速後續分類識別的效率。
(2)t分布具有聚類特性,可以與卷積神經網絡的聯立層連接,學習深度特徵子空間中仍存在的線性不可分結構,並將局部線性不可分結構通過流行學習的方法映射至線性可分的低維子空間中,實現更優於高維空間的聚類效果,在卷積神經網絡的基礎上優化了人臉識別的性能,提高識別精度,從而提供更具可識別特性的人臉特徵信息。
(3)人臉識別步驟中按照樣本訓練步驟中得到的路徑進行降維,與訓練樣本的降維過程一致,實現了僅針對待測樣本的局部映射迭代,降低了時間複雜度,從而提高了整個待測圖片的識別過程中的靈活性和快速性。
(4)在利用t分布對訓練樣本和待識別圖片進行降維之前,首先通過pca降維至訓練特徵樣本數,在對數據規範化的基礎上降低了後續降維的計算複雜程度,保證了後續迭代過程的速度。
(5)利用t分布非線性投影將高維空間的特徵映射至低維空間上,同時不斷進行迭代更新映射結果,增強了映射的準確程度,從而增強了識別精度。
(6)根據實驗表明,採取自由度為9的t分布計算實現降維,實現的降維效果最優,繼而對應的識別效果也為最優。
附圖說明
圖1為本發明的方法流程圖。
具體實施方式
下面結合附圖和具體實施例對本發明進行詳細說明。本實施例以本發明技術方案為前提進行實施,給出了詳細的實施方式和具體的操作過程,但本發明的保護範圍不限於下述的實施例。
複雜環境下基於t分布的人臉快速識別方法的流程圖如圖1所示。該方法包括樣本訓練步驟和人臉識別步驟,樣本訓練步驟具體為:
a1)通過卷積神經網絡,對訓練樣本進行特徵提取,得到特徵樣本(x1,x2,…,xn):
a11)對訓練樣本進行預處理,得到預設大小的輸入圖像;
a12)將步驟a11)得到的輸入圖像通過卷積層,得到具備局部信息表達的特徵樣本;
a13)對步驟a12)得到的具備局部信息表達的特徵樣本通過聯立層,得到特徵樣本(x1,x2,…,xn):
a131)對步驟a12)得到的具備局部信息表達的特徵樣本進行聯立卷積,得到基於全局的特徵樣本;
a132)對步驟a131)得到的基於全局的特徵樣本通過relu進行線性修正,得到修正後的特徵樣本;
a133)對步驟a132)得到的修正後的特徵樣本通過dropout進行輸出的稀疏化處理,得到特徵樣本(x1,x2,…,xn);
上述步驟完成後,還可以對得到的特徵樣本進行pca降維,得到初始維度下的特徵樣本;
a2)通過t分布非線性投影,將特徵樣本投影至低維空間,得到低維空間的訓練樣本(y1,y2,…,yn)和降維路徑:
a21)記錄初始循環次數為0,隨機初始化低維空間中的對應點集yi,根據高斯分布計算原點xi間的相似度矩陣p;
a22)根據自由度為9的t分布計算低維空間中映射點yi間的相似度q,根據定義的代價函數更新權重gains(iter)和樣本總值nums,計算增量incs,根據增量incs更新低維空間中的對應點yi的值,並對循環次數加1;
a23)判斷循環次數是否達到預設次數,若是則結束循環,得到低維空間的訓練樣本(x1,x2,…,xn)、權重gains(iter)和樣本總值nums,若否則返回步驟a22);
其中,定義的代價函數具體為:
其中,pij為點xi和點xj之間的相似度,qij為點yi和點yj之間的相似度,p高維空間原點間的相似度矩陣,q為低維空間映射點間的相似度矩陣;
根據增量incs更新低維空間中的對應點yi的值具體為:
yi=yi+incs
人臉識別步驟具體為:
b1)通過卷積神經網絡,對待識別圖片進行特徵提取,得到待識別圖片的特徵樣本r;步驟b1)還包括:對提取的待識別圖片的特徵進行pca降維,得到初始維度下的待識別圖片的特徵;
b2)根據步驟a2)的降維路徑,將步驟b1)提取的待識別圖片的特徵樣本r投影至低維空間,得到低維空間的測試樣本s:
b21)記錄初始循環次數為0,隨機初始化低維空間的映射點s,根據高斯分布計算待測特徵樣本r與訓練樣本原點xi間的相似度矩陣r;
b22)根據自由度為9的t分布計算待測特徵樣本s與訓練樣本映射點yi間的相似度矩陣s,根據步驟a22)中記錄的權重gains(iter)和樣本總值nums,更新增量incs',根據增量incs'更新低維空間中的對應點s的值,並對循環次數加1;
b23)判斷循環次數是否達到預設次數,若是則結束循環,得到低維空間的測試樣本s,若否則返回步驟b22);
b3)通過分類器將步驟a2)得到的訓練樣本和步驟b2)得到的測試樣本通過softmax進行分類識別,得到識別結果。
上述步驟中,一般僅需要經歷一次樣本訓練步驟,之後即可根據訓練的結果來進行多次的人臉識別步驟。
根據上述步驟進行具體的人臉識別,過程如下:
s1)輸入n張人臉圖像,已處理為256×256的彩色圖像規格,若為訓練集則按類別屬性整理至不同子文件內,若為測試集則無需整理,然後執行步驟s2)。
s2)人臉圖像經過5個卷積層的處理,包括了前兩個(s1,relu,s2,relu,c)順序的卷積層,以及後三個(s1,relu,s2,relu,s3,relu,c)順序的卷積層。其中在卷積s層:f(x)=fl((…f2(f1(i;w1);w2)…);wl)過程中,通過濾波器fi將輸入ii與權重向量wi結合,得到在隱藏層中學習到的圖像特徵信息ii+1並作為下一層的輸入。同時利用relu激勵函數max(0,x),隨機將部分隱藏層置於非激活狀態,減少權值參數間相互作用緩解過擬合情況的發生。而池化c層則選擇最大池化方式max{f(x'):i≤i'<i+p,j≤j'<j+p},以步長為p將池化區域內的最大值作為輸出,提高特徵信息的泛化能力。
s3)將所提取的特徵進行聯立卷積,得到基於全局的特徵信息,結合relu激勵函數處理後,利用dropout技術的稀疏特性進行再處理,得到高維空間的特徵樣本
s4),將高維空間的特徵樣本用pca降維至初始維度e=30:
s5)針對不同數據集選擇模式,若選擇路徑記錄模式,執行步驟s6);若選擇路徑跟蹤模式,執行步驟s7);
在步驟s6)中,選擇路徑記錄模式,根據歐式距離及複雜度為e的高斯分布構建pi間相似矩陣p,初始化xi的映射點yi並進入iter=1000的迭代過程,根據自由度為9的t分布構建相似矩陣q,利用相似矩陣p、q之間的kl距離定義代價函數:為取得最小距離利用求梯度根據最小距離的梯度解更新權重gains(iter)並計算增量incs,同步映射點yi=yi+incs,同時記錄降維過程中的權值gains和映射點總值nums,當iter=1000完成迭代後得到低維空間的訓練集特徵樣本(y1,y2,…,yn)∈rf。
s7)選擇路徑跟蹤模式,將測試樣本r與訓練樣本(x1,x2,…,xn)聯立,並根據歐式距離及複雜度為e的高斯分布構建相似向量r,初始化r的映射點s並進入iter=1000的局部迭代過程,根據自由度v=9的t分布構建s與的相似向量s,根據映射點總值nums求最小kl距離的解及對應梯度值,再結合所記錄的權重gains(iter)更新增量incs,同步映射點s=s+incs,同時記錄降維過程中的權值gains和映射點總值nums。將所記錄的參數矩陣gains和nums作為輸入,最終iter=1000完成迭代得到
s8)將訓練樣本和測試樣本放入softmax分類器中分類識別。