?

基于監督對比學習的小樣本甲骨文字識別

2024-04-09 01:41畢曉君毛亞菲
智能系統學報 2024年1期
關鍵詞:甲骨文特征向量骨干

畢曉君,毛亞菲

(1.民族語言智能分析與安全治理教育部重點實驗室, 北京 100081; 2.中央民族大學 信息工程學院, 北京 100081; 3.哈爾濱工程大學 信息與通信工程學院, 黑龍江 哈爾濱 150001)

作為中華文化的瑰寶,甲骨文字所承載的不僅是古代王朝的興衰更替的信息,更是我們中華五千年文化傳承的歷史見證[1]。自甲骨片挖掘工作的展開以來,國內外學者對于甲骨文的研究就不曾停止。據目前所掌握的甲骨文字數據資料來看,古代人民對各個甲骨文字的使用度也大小不一,部分常用字的出現頻率可達成百上千乃至上萬,但也有不常用字的出現頻率僅有十個以內甚至一個。任何一個文字中所包含的信息及意義都將對我們了解歷史以及傳承文化產生長遠的影響,因此,在深度學習長足發展的今天,甲骨文字識別領域中存在的小樣本數據情況更是我們關注的重中之重。卷積神經網絡優秀的分類表現依賴于充足的樣本數據[2],而甲骨學研究卻有著特殊性,隨著對甲骨文字的發掘和研究越來越深入,未來發現的甲骨文字的樣本數量會有相當一部分存在數據有限的問題[3]。因此深度神經網絡會出現嚴重的過擬合及較差的泛化性。隨著現實世界的強烈需求,小樣本學習成為各領域研究者關注的熱點,它的提出旨在解決深度學習對大量數據的依賴性[4]。研究者提出了大量利用少量樣本甚至單樣本進行識別的優秀方法,并且取得了極其優秀的效果[5-10],而目前將其成果應用在甲骨文字識別領域的卻極少,由此,利用小樣本學習方法解決甲骨文字識別中存在的小樣本問題則顯得更為必要和迫切。

通過結合當前主流小樣本圖像識別算法對目前存在的小樣本甲骨文字識別的研究現狀進行分析,存在以下2點問題:

1)Orc-Bert算法框架[11]在解決甲骨文字小樣本識別問題的過程中需要大量的未標記源數據來學習筆劃特征,無法直接利用已有的少量標注樣本訓練識別模型。

2)現有方法在小樣本的條件下,網絡學習到的特征十分有限,從而導致識別效果較差。

針對以上問題,本文提出了一種基于監督對比學習的小樣本甲骨文字識別方法。EASY框架集合了骨干網絡訓練、數據增強、多骨干網絡集成、特征向量投影等訓練策略,可以直接使用少量帶標簽樣本訓練識別模型,同時達到先進的效果。在此基礎上,將監督對比學習的思想引入到模型訓練中來,將輸入圖片進行數據增強后輸入特征提取網絡,然后提出聯合對比損失來對網絡進行優化和參數學習,使特征空間中類內特征向量距離更近,類間特征向量距離更遠,骨干網絡獲得了更加充足的特征,最終實現了識別效果的提升。

1 小樣本甲骨文字整體識別框架

小樣本學習作為消除深度神經網絡對大數據依賴的最佳方法而備受研究者矚目,盡管目前研究成果頗豐,但應用在甲骨文字識別領域的研究成果整體較少。針對目前提出的小樣本甲骨文字識別方法仍然需要在大型數據集上進行預訓練的問題,而不能直接利用少量標記樣本訓練模型,為此本文引入了新的小樣本圖像識別框架EASY[12],它主要匯集了目前領域中常見的骨干網絡訓練[13]、數據增強[14]、多骨干網絡集成[15]、特征向量投影[16]等優秀訓練策略,可以直接使用少量標注樣本訓練識別模型,同時達到先進的效果。在基于EASY的小樣本圖像識別框架上,針對現有方法小樣本的條件下,網絡學習到的特征有限,將導致識別效果差的問題,本文引入了監督對比學習的思想[17],將輸入圖片進行數據增強后輸入特征提取網絡,然后提出聯合對比損失來對網絡進行優化和參數學習,使特征空間中類內特征向量距離更近,類間特征向量距離更遠,骨干網絡獲得了更加充足的特征,從而實現了識別效果的提高。本文提出的小樣本甲骨文字識別整體框架如圖1所示。

圖1 甲骨文字小樣本識別模型整體框架Fig.1 Overall framework of oracle bone script few-shot recognition model

此識別框架沿用了EASY的整體架構,并根據任務的實際情況進行了優化。首先在訓練階段利用訓練集對骨干網絡進行訓練,在這個過程保留了原框架中使用的自監督多樣混合(self-supervised manifold mixup,S2M2)訓練策略,并且結合了監督對比學習的思想。在輸入一張圖像之后,經過圖像增強模塊,會產生2張增強后的輸入圖像,將增強后的數據作為新的輸入,在模型學習的過程中除了使用混合[18]和旋轉的訓練策略外,還利用多組正負樣本對進行樣本對比學習,使特征空間中類內特征向量距離更近,類間特征向量距離更遠,由此骨干網絡獲得的特征更加充足。原框架中利用2個交叉熵損失函數L1和L2來對訓練集分類任務和圖像旋轉角度預測的輔助任務進行監督,交叉熵損失函數為

式中:n為批大小,C為輸入一批數據的類別數,yi,j為第i個樣本在第j類上的真實標簽,pi,j為第i個樣本在第j類上的預測概率。則原框架中的損失函數可以表示為

式中L1和L2的形式同L。在加入對比學習的策略之后,本文引入了監督對比損失函數為

式中:k∈I≡{1,2,···,2n},P(k)是增強后的樣本中所有的正樣本索引集合,|P(k)|是集合中樣本的數量,A(k)則為增強后除了錨點外所有樣本索引的集合,zk代表錨點的特征向量,zp代表任意正樣本的特征向量,za代表增強后樣本集合中除錨點外任意樣本的特征向量,τ∈R+為一個標量溫度系數。

因此,本文提出的聯合對比損失函數為

本文利用提出的聯合對比損失來對網絡進行優化和參數學習,然后利用循環余弦退火算法[19]獲得多個優化到局部最小值解的模型,最終將模型進行參數凍結。在對新類進行測試的階段,首先利用訓練好的骨干網絡對輸入的新類圖像進行特征提取,接著將得到的特征向量進行中心化和歸一化操作,最終利用最近類平均分類器[20](nearest class mean classifier,NCM)得到分類結果。

2 小樣本甲骨文字識別網絡結構

本節主要對提出的小樣本甲骨文字識別框架的各個組成部分進行詳細介紹。

2.1 EASY小樣本圖像識別框架

EASY是一種簡單的小樣本圖像識別框架,其中組合了許多常見的方法如骨干網絡訓練、特征向量投影等。雖然結構簡單,但是在訓練中卻很容易達到先進的性能且不會產生巨大的計算消耗。最重要的是,EASY不需要用大型數據集進行預訓練,僅用少量帶標簽樣本即可訓練模型。EASY小樣本圖像識別框架如圖2所示。

圖2 EASY基礎架構Fig.2 Basic structure of EASY

如圖2所示,EASY基礎架構包含4個步驟:

1) 利用訓練集訓練一個骨干網絡集合。在這個過程中,使用循環余弦退火算法,在每一步學習率都在更新。在余弦循環期間,學習率在初始學習率和0之間變化,在循環結束時,重啟學習程序,以降低的初始學習率重新開始。初始學習率設置為0.1,在每個循環中降低10%,訓練過程設置5個循環周期,每個周期有100個epoch。訓練骨干網絡使用的是S2M2R的方法,其原理是采用標準分類架構(如ResNet12[21]),并在倒數第2層之后分支一個新的邏輯回歸分類器,此外還有一個用于識別樣本類別的分類器,從而整個模型呈Y型。這個新的分類器是用來檢索4種可能的旋轉,即0°、90°、180°、270°,哪一種被應用于輸入樣本。在訓練的每一步中使用2步前向-后向傳播,第1批輸入數據與Mixup方法結合僅被送到第1個分類器,第2批輸入數據在進行隨機旋轉后被同時送到2個分類器。訓練結束后,骨干網絡參數被凍結,然后被用于從訓練集和測試集中提取特征向量。

2)新類圖像經過第1)步產生的骨干網絡集合后,會產生一個相應的平均特征向量集合,將這些平均向量進行拼接操作,則獲得新類圖像的最終特征表示。整個過程如圖3所示。

圖3 拼接操作示意Fig.3 Schematic diagram of the concat operation

3)對第2)步所獲得的終極特征向量進行2次預處理。假設代表了訓練集的平均特征向量,則第1次操作稱作中心化:

第2次操作是在第1次操作的基礎上進行超球面上的投影:

4)使用最近類平均分類器進行分類。通過首次標記樣本類重心來獲得預測,類重心計算為

然后將最近的重心與查詢集進行關聯:

式中:Si(i∈{1,2,···,n})表示支持集中第i類經過第2)步預處理之后的特征向量集合,Q代表經過預處理的查詢集的特征向量集合。

2.2 監督對比學習

雖然利用EASY框架解決了小樣本甲骨文字識別過程中無法使用少量標注數據直接訓練分類模型的問題,但是在研究EASY框架的骨干網絡訓練部分時,發現在輸入一批訓練樣本時,由于樣本量較小,在交叉熵損失函數的指導優化下,骨干網絡獲得的特征十分有限。因此利用此種設置下訓練好的網絡在進行測試的時候,在特征空間中,利用已學習到的特征不足以區分文字的各個類別,從而影響了識別準確率的提升。

為了解決上述問題,本文引入了監督對比學習的相關思想[11]。在監督對比學習的思想提出之前,對比學習領域中也出現過許多優秀的相關工作[22-24]。這些工作的共同思想是在特征空間中將錨點和正樣本拉得更近,而將負樣本從錨點處推得更遠。這里要提到2種經典的對比損失:三元組損失和N對損失。三元組損失對于每個錨點僅使用一個正樣本和一個負樣本,相當于使用了一個正負樣本對;而N對損失則是對每個錨點使用一個正樣本和多個負樣本,因此可以以一個正樣本構建多個正負樣本對。不同于前面2個損失,監督對比學習在考慮多個負樣本的同時考慮多個正樣本,這樣就更有效地利用標簽信息,通過對比更好地使特征空間中類內特征向量距離更近,類間特征向量距離更遠,從而使骨干網絡學習到更為充足的特征,有助于更好的識別精度的提升。引入監督對比學習的EASY框架的訓練部分如圖4所示。

輸入一個訓練樣本,經過數據增強模塊后,生成2個隨機的增強數據。其中數據增強模塊中包含隨機水平翻轉、隨機改變圖像屬性及隨機灰度化操作。這些增強數據表示出原始數據不同的視角,并包含了原始數據的部分信息。然后將增強的2個數據分別輸入同一個特征提取網絡,然后在原有損失基礎上加入監督對比損失,即構造出新的聯合對比損失來對網絡進行優化和參數學習。

3 仿真實驗及結果分析

3.1 數據集的選取與處理

本文所選用的數據集有Oracle-FS[25]和HWOBC-FS,其數據示例如圖5所示。Oracle-FS是于2020年由Han等[11]提出的用來進行小樣本甲骨文字識別的公開數據集。Oracle-FS中包含了200個甲骨文字,對于小樣本的設置分為3種。k-shot任務所對應的訓練集中每個類包含了k個樣本,如對于1-shot任務,對應的訓練集中僅有1個訓練樣本。而3種設置下的測試集中均包含20個樣本。在本文中,設置k的取值為1、3、5。Oracle-FS的具體情況如表1所示。HWOBC是一個公開的手寫甲骨文字數據集,由22位來自不同專業的甲骨學研究者,通過手寫甲骨字搜集軟件比照甲骨文標準字形書寫并整理而成,數據集共包含3 881類,共包含樣本圖片83 245張,其中每類包含樣本19~25張不等。數據集HWOBCFS是基于上述數據集產生的,數據集的制作設置以Oracle-FS作為參照。本文從HWOBC中隨機挑選200類,在k-shot任務中,訓練集每個類包含了k個樣本,測試集均包含了15個樣本。在HWOBCFS數據集中,訓練集和測試集中的樣本在隨機劃分階段保證了互不相交。HWOBC-FS的具體情況如表2所示。

表1 數據集Oracle-FS的具體情況Table 1 Specific situation of the dataset Oracle-FS

表2 數據集HWOBC-FS的具體情況Table 2 Specific situation of the dataset HWOBC-FS

圖5 Oracle-FS和HWOBC-FS的數據示例Fig.5 Data example for Oracle-FS and HWOBC-FS

3.2 實驗環境及參數設置

本文所有實驗的硬件配置為:TITAN X GPU用于計算加速,內存16 GB,Ubuntu 16.04操作系統,編程框架為Pytorch 1.7.1。本文算法訓練時設置訓練批次大小為64,迭代次數為100個epoch。初始學習率設置為0.1,并且在此使用了循環余弦退火算法,在100個epoch之內,學習率在初始學習率和0之間變化。超參數n-way設置為5,超參數n-runs設置為10 000。

3.3 評價指標

為了驗證提出的基于監督對比學習的小樣本甲骨文字識別方法的分類性能,本文使用kshot分類準確率(k-shot acc)來作為小樣本甲骨文字識別的分類指標。k-shot分類準確率是用來定量評估本文提出的方法在k-shot任務中進行多類別分類的能力。首先在訓練集中隨機抽取N類,每類中包含k張甲骨文字樣本構成一個支持集。然后輸入一張待測試的甲骨文字圖片進行所屬類別測試,其中測試樣本所屬類別包含在支持集的N類中,稱其為一次k-shot任務。定義Pi為一次kshot任務所得到的結果,如果識別正確,則值為1,錯誤則為0。假設M為進行k-shot任務的次數,則k-shot分類準確率可以表示為

3.4 模型的有效性驗證

為了驗證本文提出的基于監督對比學習的小樣本甲骨文字識別方法的有效性,本文選用了小樣本學習研究中常見的3種骨干網絡,在上述提到的2個公開數據集上分別對基本框架EASY和引入監督對比學習的框架EASY+SCL進行了實驗驗證及對比,在數據集Oracle-FS上的實驗驗證結果如表3所示,在HWOBC-FS上的實驗驗證結果如表4所示。

表3 在數據集Oracle-FS上的實驗驗證結果Table 3 Experimental verification results on dataset Oracle-FS%

表4 在數據集HWOBC-FS上的實驗驗證結果Table 4 Experimental verification results on dataset HWOBC-FS%

從表3可以看出,在骨干網絡為ResNet18時,引入監督對比學習后,1-shot、3-shot、5-shot任務的準確率相較于原框架分別提升了5.62%、3.18%和2.13%;在骨干網絡為ResNet20時,1-shot、3-shot、5-shot任務的準確率相較于原框架分別提升了3.94%、2.10%和0.47%;在骨干網絡為ResNet34時,1-shot、3-shot、5-shot任務的準確率相較于原框架分別提升了3.25%、0.44%和1.48%。

從表4可以看出,在骨干網絡為ResNet18時,引入監督對比學習后,1-shot、3-shot、5-shot任務的準確率相較于原框架分別提升了11.50%、2.74%和0.04%;在骨干網絡為ResNet20時,1-shot、3-shot、5-shot任務的準確率相較于原框架分別提升了11.14%、0.73%和0.16%;在骨干網絡為ResNet34時,1-shot、3-shot、5-shot任務的準確率相較于原框架分別提升了15.74%、2.90%和0.06%。

綜上所述,對于k-shot任務,在引入監督對比學習后,在不同的骨干網絡上均有不同程度的識別精度的提升,由此可以證明本文提出的小樣本甲骨文字識別方法有效地拉近了特征空間中類內特征向量的距離,推遠了類間特征向量之間的距離,骨干網絡獲得了更加充足的特征,有效地實現了k-shot任務識別精度的提升,最終證明本文提出的小樣本甲骨文字識別方法是有效的。

3.5 模型的先進性驗證

為了驗證本文提出的基于監督對比學習的小樣本甲骨文字識別方法的先進性,將本文提出的方法與現階段具有代表性的小樣本甲骨文字識別方法Orc-Bert進行了實驗對比,對比結果如表5所示。

表5 模型先進性驗證實驗結果Table 5 Experimental results of model advanced verification%

在本次模型先進性驗證實驗中,選取與Orc-Bert使用的相同的數據集Oracle-FS,且骨干網絡的選取與Orc-Bert相同,均為ResNet18,在此種設置條件下,從表5的實驗結果中可以看出,本文提出的基于監督對比學習的小樣本甲骨文字識別方法,1-shot、3-shot、5-shot任務的準確率相較于Orc-Bert分別提升了26.42%、28.55%和23.98%。而且,本文提出的小樣本甲骨文字識別模型不需要大規模的未標記數據集進行預訓練,直接使用現有的少量有標簽數據即可實現分類模型的訓練,解決了小樣本甲骨文字識別任務中訓練數據有限的問題。綜上所述,本文提出的基于監督對比學習的小樣本甲骨文字識別方法具有先進性。

4 結束語

針對當前小樣本甲骨文字識別方法需要依賴大規模未標注數據集來學習相應筆劃特征,無法利用現有少量標注樣本直接進行分類模型訓練的問題,本文引入了目前先進的小樣本圖像識別框架EASY,其中結合了多種優秀且有效的訓練策略,可以直接使用少量帶標簽樣本訓練識別模型,達到了較好的效果。并且針對現有方法在小樣本的條件下,網絡學習到的特征十分有限,從而導致識別效果較差的問題,在EASY框架的基礎上,將監督對比學習的思想引入到模型訓練中來,將輸入圖片進行數據增強后輸入特征提取網絡,然后提出聯合對比損失來對網絡進行優化和參數學習,有效地拉近了特征空間中類內特征向量的距離,推遠了類間特征向量之間的距離,骨干網絡獲得了更加充足的特征,最終實現識別效果的提升。為了驗證本文方法的有效性和先進性,在實驗部分將本文提出的方法與基礎框架在不同數據集和不同的骨干網絡上對k-shot分類任務的精度進行了比較,同時將本文提出的方法與現階段具有代表性的小樣本甲骨文字識別方法進行了對比,本文方法均有不同程度的提升,充分驗證了本文提出方法的有效性和先進性,為今后的小樣本甲骨文字識別研究奠定了良好的基礎。

猜你喜歡
甲骨文特征向量骨干
二年制職教本科線性代數課程的幾何化教學設計——以特征值和特征向量為例
克羅內克積的特征向量
核心研發骨干均16年以上!創美克在產品研發上再發力
甲骨文“禍”字新證
一類特殊矩陣特征向量的求法
三千年甲骨文
骨干風采展示
EXCEL表格計算判斷矩陣近似特征向量在AHP法檢驗上的應用
最“萌”甲骨文——心
關于組建“一線話題”骨干隊伍的通知
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合