?

基于主成分分析和支持向量機的魯棒稀疏線性判別分析方法

2022-11-01 06:34鞠廈軼呂開云龔循強魯鐵定
科學技術與工程 2022年26期
關鍵詞:高維降維識別率

鞠廈軼, 呂開云,2*, 龔循強,2, 魯鐵定,2

(1.東華理工大學測繪工程學院, 南昌 330013; 2.自然資源部環鄱陽湖區域礦山環境監測與治理重點實驗室, 南昌 330013)

特征選擇是從原始高維圖像中提取有用信息,通過低維特征高效地表示圖像的主要信息,在人臉識別、基因檢測、圖像檢索以及文本分類等領域中應用廣泛[1-2]。在線性判別分析中,輸入端需將高度相關的圖像矩陣變為圖像向量進行識別,在量化過程中會造成數據冗余性,直接對高維圖像向量提取特征,既耗時又降低識別率。因此如何從高維圖像中提取具有代表性的特征成為當下研究的熱點[3]。

最近幾十年,中外學者針對特征提取提出了各種各樣的方法,其中線性判別分析(linear discriminant analysis,LDA)被廣泛使用。LDA的基本原理是通過建立最小化類內散度矩陣同時最大化類間散度矩陣模型來獲得投影矩陣,基于LDA的模型多種多樣[3-5]。Li等[6]提出的魯棒線性判別分析(robust linear discriminant analysis,RLDA)通過使用L1范數在解決小樣本的同時對受污染的圖像具有魯棒性。Li等[7]提出的基于L1范數和巴氏距離的魯棒線性判別分析(robust linear discriminant analysis based on the bhattacharyya error bound and L1-norm,L1BLDA)通過使用巴氏距離能夠避免類內散度矩陣出現奇異值并且采用L1范數能提高對異常值的魯棒性。Guo等[8]提出的魯棒自適應線性判別分析(robust adaptive linear discriminant analysis,RALDA)通過使用L21范數正則化來選擇更佳的特征矩陣。Wen等[9]提出了魯棒稀疏線性判別分析(robust sparse linear discriminant analysis,RSLDA)通過正交矩陣保留高維圖像的主要特征,利用稀疏矩陣擬合噪聲所引起負面影響,提高LDA的魯棒性。

然而上述涉及的方法通常是直接對高維圖像向量直接處理,考慮到基于LDA模型的方法提取特征時需將圖像矩陣變為圖像向量,這樣做既會耗時,增加電腦算力,降低識別效率,同時在向量化過程中,噪聲圖像會降低識別率。為此,現提出一種基于主成分分析(principal component analysis,PCA)和支持向量機(support vector machine,SVM)的魯棒稀疏線性判別分析方法。利用PCA對高維圖像向量進行降維處理,這樣做不但能夠提高識別率而且能夠提高方法的魯棒性,采用RSLDA對降維后的圖像向量提取特征,RSLDA可以看作是將PCA和LDA聯合到一個框架中,該方法不但可以提取最具代表性的特征,而且可以保留降維后圖像特征的主要特征,最后利用SVM對提取后的圖像進行分類。通過ORL人臉庫、YaleB人臉庫、COIL20物體庫和UCI機器學習庫中的部分圖像集,將本文方法與LDA、RLDA、L1BLDA、RALDA和RSLDA進行比較。

1 基本原理

通過PCA對高維圖像向量降維,利用RSLDA對降維后的圖像提取特征,利用SVM進行分類。因此,了解一下PCA的基本原理。

1.1 主成分分析方法

主成分分析(PCA)是使用較為廣泛的降維方法[10-12]。其基本原理是依按照特征值從大到小的順序,選擇前K個特征值對應的特征向量,組成低維子空間,不但減少樣本間的相關性,而且最大程度地保留高維圖像的主要特征信息。

(1)

第i類的樣本標準差σi為

(2)

(3)

協方差矩陣M為

(4)

計算協方差矩陣的特征值和特征向量,將特征值按照從大到小的順序排列,選擇前K個特征值對應的特征向量組成降維矩陣W=[w1,w2,…,wr]∈RK×r,從而降維后的圖像為

(5)

1.2 本文方法

LDA是利用標簽信息,最大化類間距離的同時最小化類內距離,獲得投影向量g為

(6)

式(6)中:Sw和Sb分別為類內散度矩陣和類間散度矩陣,表示為

(7)

(8)

(9)

式(9)中:β為很小的正調諧參數,本文取β=10-5。

考慮到同類別間差異較小,不同類別間差別較大,為了獲得更具有鑒定性的特征矩陣,同類間使用L2范數,不同類別間使用L1范數,稱為L21范數,計算公式為

(10)

(11)

式(11)中:Tr(·)為矩陣的跡;G∈Rr×l

(l

(12)

式(12)中:Q∈Rr×l為正交重構矩陣,根據文獻[14],通過奇異值分解可以獲得。在現實世界中,圖像很容易受光照條件、傳輸通道以及傳感器等噪聲的影響,會影響識別率,引入稀疏矩陣來減少噪聲的負面影響,因此,式(12)改進為

(13)

1.3 本文方法步驟

基于主成分分析和支持向量機的魯棒稀疏線性判別分析方法在處理高維圖像時,通過PCA對高維圖像向量進行降維處理,采用RSLDA對降維后的圖像提取特征,使用SVM進行分類,基本實現步驟如下。

(2)對訓練集利用PCA進行降維,通過訓練集獲得降維矩陣W,則有Xpca=WTX,其中Xpca表示降維后的訓練集,對訓練集進行歸一化,利用PCA對測試集進行降維,有Ypca=WTY,其中Ypca表示降維后的測試集,對測試集進行歸一化。

(3)利用降維后測試集相關信息,通過RSLDA提取有效信息,獲得特征矩陣G,使用交替方向乘子法(alternating direction method of multipliers,ADMM)讓變量在每一次迭代中逐步收斂,使子空間矩陣G達到最優解。

(4)通過特征矩陣G和降維后的訓練集Xpca,有Xlow=GTXpca,其中Xlow表示特征提取后的訓練集,并對其進行歸一化處理。利用特征矩陣G和降維后的測試集Ypca,有Ylow=GTYpca,其中Ylow表示特征提取后的測試樣本,并對其進行歸一化處理。

(5)利用Xlow和Ylow的相關信息,利用SVM進行分類。

2 實驗數據

2.1 原始圖像

ORL人臉庫是由40位受試者,每位受試者有10張圖像組成。每張圖像像素大小為112×92,其中人臉圖像是拍攝于不同的時期,改變了燈光、面部表情和面部細節。所有圖像都是在黑暗均勻背景下拍攝的,受試者一般處于正面位置[9]。圖1展示了ORL人臉庫中部分圖像。

圖1 ORL人臉庫中部分圖像Fig.1 Some images of the ORL face database

COIL20物體庫有20個物體對象,這20個物體拋棄了背景信息,每個物體在水平上旋轉360°,每隔5°拍攝一張照片,有72張圖像,每張圖像像素大小為32×32[9]。圖2展示了COIL20物體庫中部分圖像。

圖2 COIL20物體庫中部分圖像Fig.2 Some images of the COIL20 object database

在UCI機器學習庫中選擇Breast、Congress、Heart、Tic-tac-toe、Vote 5個數據集中的子集。

2.2 添加噪聲的圖像

YaleB人臉庫包含了28歲以下,9種姿態,64種光照條件下的16 128張人臉圖像。本次實驗中,從YaleB人臉庫選擇一個子集,子集庫中受試者38位,每位受試者有64張圖像,每張圖像像素大小為32×32[9]。圖3分別展示了YaleB人臉庫中原始圖像和加入噪聲密度為5%的椒鹽噪聲部分對比圖像。

圖3 YaleB人臉庫部分原始圖像和噪聲圖像Fig.3 Some original and image samples with noise of the YaleB face database

3 實驗結果與分析

為驗證本方法的識別率、識別效率以及魯棒性,利用ORL人臉庫、YaleB人臉庫、COIL20物體庫和UCI機器學習庫中的部分圖像集對LDA、RLDA、L1BLDA、RALDA、RSLDA和本文方法進行比較。在本次實驗中,考慮到是隨機選擇的訓練樣本和測試樣本組成訓練集和測試集,存在隨機性和差異性,使得識別率存在偏差,因此,在本次實驗中,每種方法對每個圖像集重復實驗20次,取實驗的平均值和標準差作為最終的結果,使結果更為合理,更有說服性[16]。所有實驗都是在軟件MATLAB2020a上實現的,采用i7-10875H處理器,內存為16 GB。

3.1 原始圖像的結果與分析

在ORL人臉庫中有40位受試者,每位受試者10張樣本。訓練樣本從2~9進行均勻變化,剩余的圖像為相應的測試樣本??紤]到在使用PCA時,維數不同,保留的主要信息也是不一樣的,識別率也會不同,因此,在本次實驗中,盡可能選擇最佳維數下對應的識別率均值和標準差作為結果。LDA、RLDA、L1BLDA、RALDA、RSLDA和本文方法在ORL人臉庫中的結果如圖4所示。分析可知,這6種方法隨著訓練樣本的增加識別率也在不斷地提高,但不管訓練樣本為多少,本文方法的識別率在這6種方法中是最高的,充分說明本文方法的穩定性。

圖4 ORL人臉庫識別率隨訓練樣本增減的變化Fig.4 Classification accuracy versus the training samples on the ORL face database

具體分析,當訓練樣本從2到9均勻增加時,本文方法的識別率依次為78.91%、86.75%、91.46%、94.35%、96.31%、97.29%、98.19%和99.13%,均值為92.80%。而LDA識別率的均值為67.10%,RLDA識別率的均值為89.33%,L1BLDA識別率的均值為91.34%,RALDA識別率的均值為91.43%,RSLDA識別率的均值為92.03%,本文方法識別率的均值是最高的,其中本文方法識別率的均值比LDA識別率的均值高25.00%以上,實驗具體結果如表1所示。究其原因,建模過程中,LDA使用的是L2范數,RLDA和L1BLDA使用的是L1范數,RSLDA和RALDA使用的是L21范數。相比于L1范數和L2范數,本文方法利用L21范數使得同類樣本的距離盡可能近而不同類別樣本的距離盡可能遠,因此,RSLDA、RALDA和本文方法的識別率明顯高于LDA、RLDA和L1BLDA的識別率。利用稀疏矩陣N彌補噪聲帶來的影響,而RALDA方法中并沒有該模塊,因此,整體上RSLDA和本文方法的識別率高于RALDA。相比于RSLDA直接對高維圖像向量進行特征提取,然后利用K最近鄰(K-nearest neighbor, KNN)進行分類,本文方法通過PCA對高維圖像向量進行降維,從高維圖像中保留樣本的主要特征信息,然后利用RSLDA對降維后的圖像向量提取特征,最后通過SVM進行分類,本文方法先對高維圖像向量通過PCA進行預處理,SVM的分類效果一般要好于KNN,因此,本文方法的識別率要高于RSLDA的識別率。從識別效率即識別所需時間分析,以秒作為計量單位,識別所需時間如表2所示。對比前提以識別率為主要參考因素,識別效率為次要因素。分析可知,相比于其他5種方法,LDA的識別效率雖然很快,但是根據表1所示,LDA的識別率相對較差,因此,不做比較。與余下的4種方法相比,本文方法的識別率和識別效率都提高不少,特別是與RSLDA的識別效率相比,本文方法的識別所需時間為其所需時間的1/1 000左右,更能說明本文方法的實用性。究其緣由,本文方法通過PCA對高維人臉圖像進行降維處理,將高維圖像投影到低維子空間中,在盡可能保留高維圖像向量主要特征信息的同時減少計算的復雜程度,極大提高了識別效率。

表1 ORL人臉庫中原始圖像的識別率Table 1 The recognition rate of the original image on the ORL face database

表2 ORL人臉庫中識別時間Table 2 Time of recognition on the ORL face database

在COIL20物體庫中,每個物體對象有72張圖像,訓練樣本從9均勻變化到54,間隔為9,剩余的樣本為測試樣本。本文方法識別率的均值為97.76%。LDA識別率的均值為89.91%,RLDA識別率的均值為96.96%,L1BLDA識別率的均值為96.84%,RALDA識別率的均值為97.54%,RSLDA識別率的均值為96.48%。具體實驗結果如表3所示。當訓練樣本為18,維數從50均勻變化到120,間隔為10時,排除LDA,剩余5種方法識別率整體呈緩慢下降趨勢,相比于其他4種方法,本文方法識別率受到維數變化的影響相對有限,識別率仍是最高的,6種方法識別率隨維數變化情況如圖5所示。本文方法通過PCA進行降維保留了高維圖像的主要特征信息,同時RSLDA模型中又利用了PCA的變體即正交矩陣Q保留了降維后圖像的主要特征信息,因此,本文方法受維數的影響不大。表4為6種方法在COIL20物體庫中的識別所需時間,分析可知,LDA雖然識別效率高,但是識別率差,因此不做比較,相比于剩余4種方法識別效率,本文方法識別效率是最高的。

表3 COIL20庫中原始圖像的識別率Table 3 The recognition rate of the original image on the COIL20 database

表4 COIL20人臉庫中識別時間Table 4 Time of recognition on the COIL20 database

圖5 COIL20中識別率隨著維數的變化Fig.5 Classification accuracy versus the number of dimensions on the COIL20 object database

在UCI機器學習庫中選擇Breast、Congress、Heart、Tic-tac-toe、Vote 5個數據集,由于所選擇的類別為2個,數據量相對較少,且每一類別樣本相對相似,不同類別的樣本差異較大,因此,訓練樣本占總樣本的比例對最終實驗結果影響相對較低,實驗具體結果如圖6所示。

圖6 Breast、Congress、Heart、Tic-tac-toe、Vote 5個庫中識別率隨著訓練樣本占比的變化Fig.6 Classification accuracy of Breast、Congress、Heart database changes with the proportion of training samples

在本實驗中,將訓練樣本占總樣本的比例從40%提高到90%的識別率作為實驗結果。在Breast數據集中,本文方法的識別率為96.31%,高于其他五種方法,在Congress數據集中,本文方法的識別率為95.71%,比RSLDA高0.24%,在Heart數據集中,本文方法的識別率為80.08%,比LDA高1.48%,在Tic-tac-toe數據集中,本文方法的識別率為82.95%,比RLDA高10.1%,在Vote數據集中,本文方法的識別率為92.91%,比LDA高1.06%,實驗結果如表5所示。

表5 Breast、Congress、Heart Tictac-toe和Vote 5個庫中原始圖像的識別率Table 5 The recognition rate of the original image on the Breast、Congress、Heart Tictac-toe and Vote database

3.2 添加椒鹽噪聲圖像的結果與分析

在YaleB子集人臉庫中,受試者38人,每位受試者有64個樣本,隨機選擇8、16、24、32、40、48和56作為訓練樣本,剩余的樣本作為測試樣本,加入密度為5%的椒鹽噪聲的結果如表6所示。當訓練樣本從8均勻地變化到56時,本文方法的識別率依次為59.54%、75.92%、82.06%、85.25%、87.24%、89.08%和89.95%,均值為81.35%。比LDA識別率的均值高38.43%,比RLDA識別率的均值高26.83%,比L1BLDA識別率的均值高21.70%,比RALDA識別率1.37%,比RSLDA識別率的均值高15.32%,本文方法識別率的均值是唯一超過80%的。當圖像存在噪聲時,本文方法識別率的均值高于RSLDA識別率的均值,主要原因是RSLDA是直接對存在噪聲的圖像向量提取特征,而本文方法通過PCA對高維數據進行降維,在降維過程中利用PCA處理丟棄了大部分噪聲信息,具體分析結果如圖7和圖8所示。圖7模擬的是有噪聲的圖像,圖8展示了經過PCA降維再回到原始圖像。分析圖8可知,在降維的過程中舍棄了大部分的噪聲信息同時又保留了圖像的主要特征。與LDA、RLDA、L1BLDA和RALDA相比,本文方法在每一次迭代中利用ADMM使得變量逐漸收斂,達到同類樣本之間的距離較近,不同種類別之間的樣本距離較遠的目的,通過正交重構矩陣Q可以保留經過PCA預處理后的圖像的主要有效信息,同時稀疏矩陣N擬合經過PCA降噪后少量噪聲所帶來的誤差。

圖7 噪聲圖像Fig.7 Noise image

圖8 經PCA處理后的圖像Fig.8 The image after PCA processing

表6 YaleB人臉庫加椒鹽噪聲5%的識別率Table 6 The recognition rate of YaleB database with 5% salt-and-pepper noise

4 結論

在圖像識別中,本文方法使用PCA對高維圖像進行降維。在特征提取過程中,使用L21范數使得同類樣本之間的距離盡可能近,不同類別樣本之間的距離盡可能遠,使用正交矩陣Q保留降維后圖像的主要特征信息,通過稀疏矩陣N彌補噪聲造成的誤差,最后利用SVM進行分類。將本文的方法和LDA、RLDA、L1BLDA、RALDA和RSLDA進行比較,得出如下結論。

(1)在ORL人臉庫中,當訓練樣本從2到9均勻變化時,本文方法識別率的均值為92.80%,在COIL20庫中,當訓練樣本從8到56均勻變化時,本文方法識別率的均值在91.83%以上,不管是人臉圖像還是物體圖像,本文方法識別率都高于其他5種方法識別率。

(2)在YaleB人臉庫中添加5%的椒鹽噪聲時,本文方法識別率的均值為81.35%,本文方法的識別率均高于其他5種方法,說明本文方法的魯棒性優于其他5種方法。

然而在復雜環境下獲取的圖像,但訓練樣本占總樣本比例較少的情況下,本文方法的識別率較低,因此,后期考慮使用更好去噪的方法,這是以后研究的一個方向。

猜你喜歡
高維降維識別率
基于相關子空間的高維離群數據檢測算法
基于數據降維與聚類的車聯網數據分析應用
我國實現高噪聲環境下高效高維量子通信
降維打擊
我科學家實現高效的高維量子隱形傳態
高維洲作品欣賞
檔案數字化過程中OCR技術的應用分析
基于PCA與MLP感知器的人臉圖像辨識技術
科技文檔中數學表達式的結構分析與識別
人工智能現狀和發展
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合