徐 岸,吳永明,2,鄭 洋
1.貴州大學(xué) 省部共建公共大數(shù)據(jù)國家重點實驗室,貴陽 550025
2.貴州大學(xué) 現(xiàn)代制造教育部重點實驗室,貴陽 550025
當(dāng)前深度學(xué)習(xí)模型在完成單一任務(wù)(例如語音識別[1]、圖片識別[2])方面已經(jīng)超過了人類水平。但是與能夠不斷學(xué)習(xí)和執(zhí)行連續(xù)任務(wù)的人類智力相比,這種成功仍然有限。讓模型能夠具有連續(xù)學(xué)習(xí)能力一直是人工智能領(lǐng)域所面臨的難題[3-5]。最近增量學(xué)習(xí)成為了目前深度學(xué)習(xí)研究工作中的熱點和難點問題。增量學(xué)習(xí)旨在讓神經(jīng)網(wǎng)絡(luò)模型適應(yīng)非平穩(wěn)且不間斷的數(shù)據(jù)流環(huán)境,從而實現(xiàn)更高水平的機器智能。然而,增量學(xué)習(xí)模型存在災(zāi)難性遺忘(catastrophic forgetting),即模型在學(xué)習(xí)了新知識后,對先前學(xué)習(xí)過的知識發(fā)生遺忘[6-8]。解決增量學(xué)習(xí)中所產(chǎn)生的災(zāi)難性遺忘是人工智能系統(tǒng)走向更加智能化重要一步[9-10]。
針對增量學(xué)習(xí)中所產(chǎn)生的災(zāi)難性遺忘問題,研究人員提出了很多方法。Kirkpatrick等[11]基于貝葉斯概率提出EWC(elastic weight consolidation)算法,該算法通過對舊模型全局參數(shù)重要性進行估算,并在新模型訓(xùn)練時對重要參數(shù)進行約束。該方法在任務(wù)數(shù)據(jù)關(guān)聯(lián)性較強的數(shù)據(jù)下表現(xiàn)較好,但在連續(xù)圖片分類任務(wù)中算法性能極劇下降。Li 等[12]利用知識蒸餾與微調(diào)方法結(jié)合提出LwF(learning without forgetting)算法。該方法首次將知識蒸餾與增量學(xué)習(xí)結(jié)合,通過舊模型訓(xùn)練新模型使得新模型具有舊模型的泛化能力。但在連續(xù)任務(wù)后期,LwF 依然存在大量知識被遺忘的現(xiàn)象。Rebuffi[13]通過設(shè)置額外的內(nèi)存來保持具有代表性的部分歷史任務(wù)數(shù)據(jù)。然而在有數(shù)據(jù)隱私限制的情況下,這種方法是不被允許的,同時在大數(shù)據(jù)場景下,保留部分樣本對模型性能提升較小。莫建文等[14]利用變分自編碼器生成歷史任務(wù)數(shù)據(jù)的偽樣本,通過新模型對偽樣本的學(xué)習(xí)減輕對舊知識的遺忘。然而,對于復(fù)雜的圖像數(shù)據(jù)(如自然圖像),訓(xùn)練大型生成模型效率很低。Zhu 等[15]提出PASS(prototype augmentation and self-supervision)算法,該算法通過自監(jiān)督學(xué)習(xí)概括和轉(zhuǎn)移連續(xù)任務(wù)中的數(shù)據(jù)特征,并在深層特征空間中采用原型增強來維持以前任務(wù)的決策邊界。吳楚等[16]提出一種任務(wù)相似度引導(dǎo)的漸進深度神經(jīng)網(wǎng)絡(luò),該方法通過對比任務(wù)間的相似度,并以此對先前任務(wù)的參數(shù)進行修剪再遷移從而提高算法性能。但在差異性較大的任務(wù)之間的相似性表示可能會失效。
本文提出了一種自適應(yīng)特征整合與參數(shù)優(yōu)化的類增量學(xué)習(xí)方法(adaptive feature consolidation with parameter optimization,AFC-PO),以緩解在增量式場景下圖片分類場景下深度學(xué)習(xí)模型所產(chǎn)生的災(zāi)難性遺忘問題。鑒于增量學(xué)習(xí)有限的模型容量但需要學(xué)習(xí)無限的新信息的情景,本文考慮分別對數(shù)據(jù)特征與模型參數(shù)進行處理。因此,模型將知識蒸餾技術(shù)作為基礎(chǔ)框架,以非樣本保留的方式使用數(shù)據(jù)特征對模型進行迭代訓(xùn)練,同時,限制增量任務(wù)模型中重要參數(shù)的變化。AFC-PO 包括了自適應(yīng)特征整合與重要參數(shù)優(yōu)化兩個部分。一方面,在自適應(yīng)特征整合模塊,首先對前后任務(wù)的模型主干網(wǎng)絡(luò)的輸出特征進行整合,并使用自定義差異損失維護舊任務(wù)模型主干網(wǎng)絡(luò)的特征表示。然后在模型分類層利用輸出特征構(gòu)造具有模糊性的軟標(biāo)簽作為語義監(jiān)督信息,以此吸收先前任務(wù)的知識。另一方面,在增量學(xué)習(xí)階段有選擇地保留或刪除知識,即對模型參數(shù)重要性進行評價,并在學(xué)習(xí)新任務(wù)時,對重要參數(shù)的改變施加懲罰,從而有效防止新模型覆蓋于以前任務(wù)相關(guān)的重要知識。
在現(xiàn)實世界中,數(shù)據(jù)是以數(shù)據(jù)流的形式存在,并且總是受存儲限制和隱私約束等問題的制約,導(dǎo)致一些數(shù)據(jù)不能長時間存儲,這使得在數(shù)據(jù)流中的神經(jīng)網(wǎng)絡(luò)模型需要適應(yīng)時間和存儲的變化[17-18]。這要求網(wǎng)絡(luò)模型在不忘記舊任務(wù)知識的情況下學(xué)習(xí)新知識,以實現(xiàn)模型穩(wěn)定性和可塑性之間的平衡。對于神經(jīng)網(wǎng)絡(luò)模型需要不斷學(xué)習(xí)適應(yīng)的場景,將它稱之為增量學(xué)習(xí)或者持續(xù)學(xué)習(xí)。其中,連續(xù)圖片分類任務(wù)是增量學(xué)習(xí)中具有挑戰(zhàn)性的任務(wù)場景,這種數(shù)據(jù)類型增量任務(wù)被稱為類增量學(xué)習(xí)(class incremental learning,CIL),如圖1 所示,在類增量學(xué)習(xí)中新的類別不斷地到來時,模型的輸出層需要增加相應(yīng)的神經(jīng)元節(jié)點,同時,模型需要對已學(xué)習(xí)過的數(shù)據(jù)進行分類預(yù)測,即在連續(xù)任務(wù)序列中每一個任務(wù)都包含與其他任務(wù)不相交的圖片類型,模型需要對不同任務(wù)階段學(xué)習(xí)過的所有圖片進行分類。
圖1 類增量學(xué)習(xí)流程概括圖Fig.1 Overview of class incremental learning process
類增量學(xué)習(xí)問題定義如下:假設(shè)X和Y分別為訓(xùn)練集和標(biāo)簽集。而在連續(xù)不斷的數(shù)據(jù)流中,訓(xùn)練集則為X1,X2,…,Xt,其中t表示為增量任務(wù)階段。第i個增量任務(wù)階段的數(shù)據(jù)集Xi(1 ≤i≤t) 對應(yīng)其標(biāo)簽集Yi。類增量學(xué)習(xí)任務(wù)序列中每一個任務(wù)階段都包含與其他任務(wù)不相交的圖片類型,那么可形式化表示為Xi?Xj=?(i≠j)。由于AFC-PO為非樣本保留方法,則模型在第t個任務(wù)階段時,前t-1 個階段的數(shù)據(jù)不可用,模型只擁有第t個任務(wù)階段的數(shù)據(jù)集Xt。在一般情況下,在第t個任務(wù)階段模型f t通過主干網(wǎng)絡(luò)對任務(wù)數(shù)據(jù)特征進行提取,然后通過由全連接網(wǎng)絡(luò)構(gòu)成的分類輸出層進行分類預(yù)測。在本文中使用ResNet作為主干網(wǎng)絡(luò),其形式化表達為:
式中,表示第t個任務(wù)階段主干網(wǎng)絡(luò)ResNet 中的參數(shù),rt表示通過主干網(wǎng)絡(luò)提取出的特征。模型分類輸出層通過全連接網(wǎng)絡(luò)將數(shù)據(jù)特征rn映射為其所屬類別。那么由全連接網(wǎng)絡(luò)構(gòu)成的分類輸出層的映射關(guān)系可表示為:
式中,表示第t個任務(wù)階段分類輸出層全連接網(wǎng)絡(luò)中的參數(shù),ct表示通過模型輸出的結(jié)果。結(jié)合上述式(1)、式(2)可以獲得在第t個任務(wù)階段模型f t的映射關(guān)系:
知識蒸餾旨在將知識從預(yù)訓(xùn)練模型(即教師模型)轉(zhuǎn)移到目標(biāo)網(wǎng)絡(luò)(即學(xué)生模型),從而實現(xiàn)更好的泛化性能。在類增量學(xué)習(xí)的場景下,舊任務(wù)模型通常被視為教師模型,則新模型被視為學(xué)生模型。在增量學(xué)習(xí)階段,新模型需要繼承舊模型參數(shù)作為模型的初始參數(shù)開始訓(xùn)練。
在增量學(xué)習(xí)中,研究人員提出了很多基于知識蒸餾的方法。iCaRL[13]保留一部分歷史樣本,并聯(lián)合蒸餾損失與交叉熵損失讓模型在保留舊類別區(qū)分能力的基礎(chǔ)上,具備區(qū)分新類別的能力。UCIR[19]通過最大化教師模型和學(xué)生模型嵌入的特征之間的余弦相似性來解決遺忘問題。另一方面,LwM[20]最小化舊任務(wù)中輸出層得分最高的類與主干網(wǎng)絡(luò)所提取特征的差異,以此緩解模型主干網(wǎng)絡(luò)特征表示的顯著性變化。
之前的大部分工作都是聯(lián)合蒸餾損失和交叉熵損失構(gòu)造損失函數(shù)。與此同時,大部分研究都會使用獨熱(One-Hot)標(biāo)簽作為監(jiān)督信息[21-22]。然而大部分情況下,一個樣本不是嚴格屬于某個類別。數(shù)據(jù)標(biāo)簽中含有豐富的語義信息,所以真實數(shù)據(jù)標(biāo)簽表示的是樣本隸屬于各個類的可能性。因此本文將不單獨使用獨熱標(biāo)簽,而是通過對舊模型分類輸出層的特征(軟標(biāo)簽)與獨熱標(biāo)簽進行處理,構(gòu)造具有模糊性的軟標(biāo)簽作為語義監(jiān)督信息。其次,對前后任務(wù)的模型主干網(wǎng)絡(luò)部分構(gòu)造差異損失,并將前后模型主干網(wǎng)絡(luò)的自適應(yīng)特征進行整合,以此維護舊任務(wù)模型主干網(wǎng)絡(luò)的特征表示。
針對增量式場景下圖片分類場景下深度學(xué)習(xí)模型所產(chǎn)生的災(zāi)難性遺忘問題,提出一種自適應(yīng)特征整合與參數(shù)優(yōu)化的類增量學(xué)習(xí)方法。在本章中,首先基于知識蒸餾模型框架提出了一種自適應(yīng)的特征整合方法,以防止前后模型在主干網(wǎng)絡(luò)和分類輸出層出現(xiàn)顯著性變化。一方面,自適應(yīng)的特征整合方法在主干網(wǎng)絡(luò)根據(jù)前后模型的主干網(wǎng)絡(luò)輸出特征構(gòu)造差異損失,并將舊模型與新模型的主干網(wǎng)絡(luò)特征整合。同時,在分類輸出層通過舊模型輸出的軟標(biāo)簽與獨熱標(biāo)簽通過Softmax進行整合,構(gòu)造具有模糊性的軟標(biāo)簽作為語義監(jiān)督信息。另一方面,提出了參數(shù)優(yōu)化方法,在知識蒸餾框架的基礎(chǔ)上,對參數(shù)的重要性進行評價,對重要參數(shù)的改變施加懲罰,從而有效防止新模型覆蓋與以前任務(wù)相關(guān)的重要知識。
類增量學(xué)習(xí)需要具備識別已知類別和新增類別的能力,同時,知識蒸餾模型框架具備將知識從舊任務(wù)模型轉(zhuǎn)移到新任務(wù)模型的能力。因此本文考慮把知識蒸餾作為基礎(chǔ)框架,如圖2 所示,在第n個任務(wù)數(shù)據(jù)到來時,首先,數(shù)據(jù)通過第n-1 個任務(wù)階段模型分別獲得當(dāng)前數(shù)據(jù)在舊模型上主干網(wǎng)絡(luò)與分類輸出層的表征信息,然后,利用自定義差異損失與蒸餾損失對當(dāng)前模型進行訓(xùn)練。自適應(yīng)特征整合方法(AFC)通過對前后任務(wù)網(wǎng)絡(luò)模型的主干網(wǎng)絡(luò)和分類輸出網(wǎng)絡(luò)特征進行處理,以此緩解新模型對舊知識的遺忘。
圖2 自適應(yīng)特征整合方法流程圖Fig.2 Adaptive feature integration method process
具體而言,當(dāng)模型在第t個任務(wù)階段時,主干網(wǎng)絡(luò)部分根據(jù)當(dāng)前階段模型與t-1 階段模型對當(dāng)前數(shù)據(jù)集Xt進行特征提取,那么兩個階段模型主干網(wǎng)絡(luò)提取到特征分別為rt-1與rt。本文為使前后兩階段的特征差異盡可能小,從而防止模型出現(xiàn)顯著性變化,因此利用L2范數(shù)構(gòu)造特征差異損失:
其中,n表示在第t階段模型數(shù)據(jù)集的樣本數(shù)量?;谥R蒸餾框架造特征差異損失使得新模型特征進行自適應(yīng)調(diào)整。同時,t-1 階段模型主干網(wǎng)絡(luò)的輸出特征rt-1具有更多的舊模型視覺語義信息,因此考慮將rt-1與rt進行整合,其形式化表示為:
式中,Rt表示為整合后的特征。Rt通過分類輸出層進行預(yù)測分類,以此維持分類輸出層的決策邊界。
在特征分類層,將當(dāng)前階段數(shù)據(jù)集Xt輸入到t-1階段模型中,模型輸出分類特征ct-1。盡管t-1 階段模型無法對t階段數(shù)據(jù)進行分類預(yù)測,但是其輸出分類特征ct-1具有豐富的視覺語義信息,即ct-1可以理解為當(dāng)前數(shù)據(jù)Xt在舊模型中隸屬于t-1 階段已知類型的可能性。同時,模糊性是數(shù)據(jù)普遍存在的一種特性。大部分情況下,一個樣本不是嚴格屬于某個類別。因此利用當(dāng)前階段任務(wù)數(shù)據(jù)的One-Hot 標(biāo)簽ht與t-1 階段模型分類特征ct-1進行整合,并通過Softmax 構(gòu)造具有模糊性的樣本數(shù)據(jù)軟標(biāo)簽,其形式化為:
其中,zt表示第t個任務(wù)階段One-Hot標(biāo)簽ht與t-1 階段模型分類特征ct-1進行整合的結(jié)果,m表示當(dāng)前階段已知類型和新增類型的數(shù)量,表示通過Softmax函數(shù)后第i個類型的可能性。通過式(5)獲得具有模糊性的軟標(biāo)簽st作為語義監(jiān)督信息,因此本文希望數(shù)據(jù)Xt通過新模型獲得預(yù)測結(jié)果與軟標(biāo)簽st盡可能接近,使模型具有舊模型的泛化能力,從而保證模型對已知的類型不發(fā)生遺忘。因此,基于和st的損失函數(shù)可以通過知識蒸餾形式化為:
模型通過對前一階段模型具有視覺語義的輸出特征的學(xué)習(xí)能夠讓新模型吸收先前任務(wù)的知識??傮w而言,在第t個任務(wù)階段,自適應(yīng)特征整合方法對模型訓(xùn)練的損失函數(shù)為式(4)和式(7)的結(jié)合:
式中,λ為兩項的調(diào)節(jié)因子超參數(shù)。
在自適應(yīng)特征整合方法中,本文所提方法對數(shù)據(jù)樣本在前后階段模型各部分的特征進行了處理。而在參數(shù)優(yōu)化方法(PO)中將關(guān)注于增量學(xué)習(xí)過程中模型自身的參數(shù)變化。該方法對模型中每個參數(shù)的重要性進行評價,并對重要性高參數(shù)的變化施加懲罰。從而有效防止新模型覆蓋與以前任務(wù)相關(guān)的重要知識。
具體而言,當(dāng)模型在第t個任務(wù)階段時,為度量模型中每個參數(shù)的重要性,需要對t-1 階段模型參數(shù)進行保留,因此參數(shù)優(yōu)化方法同樣也是基于知識蒸餾框架。如圖3所示,該方法通過觀察前后模型參數(shù)的變化程度對模型的影響,從而判斷參數(shù)的重要性。首先,利用微分性質(zhì)測量模型f t在學(xué)習(xí)數(shù)據(jù)Xt后模型參數(shù)變化程度,那么可近似表示為:
圖3 參數(shù)優(yōu)化方法概括圖Fig.3 Overview of parameter selection methods
其中,dij表示前后模型參數(shù)的變化量,形式化描述為,gij表示在數(shù)據(jù)樣本Xt上模型參數(shù)的梯度。如果梯度gij在當(dāng)前數(shù)據(jù)樣本中的值越大,則說明與其對應(yīng)的參數(shù)對當(dāng)前模型的越重要。在模型訓(xùn)練過程中,不是一次性訓(xùn)練完所有的數(shù)據(jù),而是將數(shù)據(jù)分成不同批進行訓(xùn)練。所以參數(shù)對應(yīng)重要性評價可以利用δij表示:
式中,b表示不同的數(shù)據(jù)樣本批次,N表示為總批次數(shù)量。通過上述式子可以獲得對模型全局參數(shù)的評價,對重要參數(shù)的變化進行懲罰。然而,本文所提模型僅對重要程度高的添加懲罰項,那么在PO 方法中采取對大于平均評價值的參數(shù)進行懲罰,其形式化描述為:
根據(jù)式(10)、式(11)可以獲得模型參數(shù)的重要性評價,利用l2正則對重要參數(shù)進行限制。同時結(jié)合自適應(yīng)特征整合方法可以得到本文所提算法的損失函數(shù):
其中,λ與μ為調(diào)節(jié)因子超參數(shù),λ與μ通過后續(xù)實驗給出。
綜上所述,為緩解類增量場景中所產(chǎn)生的災(zāi)難性遺忘,本文提出了一種自適應(yīng)特征整合與參數(shù)優(yōu)化的類增量學(xué)習(xí)方法(AFC-PO),根據(jù)上述算法表述以及損失函數(shù)得到AFC-PO算法,其具體實現(xiàn)步驟如下:
算法1AFC-PO算法
本文實驗部分在兩個基準數(shù)據(jù)集CIFAR-10 和CIFAR-100上進行實驗驗證,這兩個數(shù)據(jù)集被廣泛用于持續(xù)學(xué)習(xí)中。CIFAR-10有10個類別的RGB彩色圖片,包含50 000張訓(xùn)練圖片和10 000張測試圖片,且每個圖片尺寸均為32×32。CIFAR-100包含來自100個類別的60 000張32×32彩色圖像樣本,其中50 000張作為訓(xùn)練樣本,10 000張作為測樣本,其圖片尺寸大小與CIFAR-10 相同。為了模擬增量學(xué)習(xí)任務(wù),本文隨機將數(shù)據(jù)集CIFAR-10和CIFAR-100圖片分別分成多個任務(wù)數(shù)據(jù)集,并且每個任務(wù)數(shù)據(jù)類型都與其他任務(wù)的數(shù)據(jù)類型不相交。
在算法評價方面,使用了持續(xù)學(xué)習(xí)中常用的模型評估指標(biāo)[23],平均準確度和模型遺忘度。
(1)準確率
平均準確度是在新任務(wù)學(xué)習(xí)完成后,模型對先前所有學(xué)習(xí)過的圖片類型預(yù)測準確度的平均值,其形式化表達如下:
式中,acct,i為任務(wù)t時第i類的準確率,kt表示任務(wù)t時的數(shù)據(jù)類型數(shù)目。平均精確度顯示了模型在整個持續(xù)學(xué)習(xí)過程中整體性能。
(2)遺忘率
遺忘率則是展現(xiàn)了增量學(xué)習(xí)算法的穩(wěn)定性[24]。對于第t個任務(wù)的遺忘率的量化形式如下:
其中,較低意味著模型在任務(wù)t時,對第i類數(shù)據(jù)的遺忘程度較小。在任務(wù)t時的總體遺忘率需要通過對模型學(xué)習(xí)過的任務(wù)數(shù)量進行歸一化:
本文主要選取以下代表性方法作為對比方法進 行實驗驗證與結(jié)果對比?;谡齽t化策略方法((EWC[11]、SCP[21])、基于知識蒸餾的方法(LwF[12])、基于自監(jiān)督原型增強的方法(PASS[15])、基于回放策略的方法(ICaRL[13]),以及使用微調(diào)(Finetune[23])方法作為基線(Baseline)方法進行對比實驗。同時,對本文所提方法中自適應(yīng)特征整合方法和參數(shù)優(yōu)化方法進行消融實驗。
本研究提出的AFC-PO模型設(shè)置如下:在模型設(shè)置方面,與大多數(shù)工作相同[12-13,15],本文使用ResNet-18 作為主干網(wǎng)絡(luò),ResNet-18 表征學(xué)習(xí)模塊最后展開維度為256,同時,將兩層全連接網(wǎng)絡(luò)作為分類輸出層。使用Adam 優(yōu)化器最小化目標(biāo)函數(shù),其中初始學(xué)習(xí)率設(shè)置為0.001,權(quán)重衰減率設(shè)置為0.000 5。模型在100個周期后停止訓(xùn)練,數(shù)據(jù)批量大小設(shè)置為64。
在損失函數(shù)的調(diào)節(jié)因子超參數(shù)設(shè)置方面,為使模型適應(yīng)于增量學(xué)習(xí),防止災(zāi)難性遺忘,本文對調(diào)節(jié)因子超參數(shù)λ和μ進行了實驗研究。CIFAR-100 數(shù)據(jù)集上將圖片按類型分為5個增量任務(wù),即20種類型圖片為一個任務(wù)。將5個增量任務(wù)完成后對模型進行測試,實驗結(jié)果如圖4所示,從圖中可以觀察到,當(dāng)調(diào)節(jié)因子超參數(shù)μ為0.1時,算法精度較高且較為穩(wěn)定。將參數(shù)μ固定,觀察λ對算法精度的影響,可以發(fā)現(xiàn)當(dāng)λ為100,模型平均正確率表現(xiàn)達到最高。實驗結(jié)果表明知識蒸餾方法對模型精度影響較大,即AFC-PO算法對超參數(shù)λ更敏感。
圖4 不同λ 和μ 對AFC-PO模型正確率的影響Fig.4 Effect of different λ and μ on correct rate of AFC-PO model
為驗證所提方法中自適應(yīng)特征整合方法(AFC)和參數(shù)優(yōu)化方法(PO)的有效性,本文選擇在CIFAR-10數(shù)據(jù)集上進行了消融實驗。CIFAR-10數(shù)據(jù)集上將圖片按類型分為5個增量任務(wù),在每次增量任務(wù)結(jié)束后對模型進行測試。實驗結(jié)果如表1 所示,實驗中將FineTune[23]方法作為基線方法,PO 方法與AFC 方法的平均分類準確率相較于FineTune 分別提升9.17 和17.54 個百分點。而將兩者組合,即AFC-PO 方法,其平均分類準確率相較于FineTune 提升31.93 個百分點。實驗證明,本文所提的AFC-PO方法對數(shù)據(jù)特征和模型參數(shù)進行處理,能夠有效地降低災(zāi)難性遺忘的影響。
表1 消融實驗結(jié)果Table 1 Results of ablation studies 單位:%
連續(xù)圖像分類任務(wù)在CIFAR-10和CIFAR-100的平均準確率對比實驗結(jié)果如表2 所示。在此實驗中將數(shù)據(jù)按類型平均分為5 個增量任務(wù)。本文對最好的對比實驗結(jié)果都進行了加粗。根據(jù)實驗結(jié)果可以發(fā)現(xiàn),相較于其他方法,AFC-PO方法在增量學(xué)習(xí)任務(wù)中取得了顯著優(yōu)異的結(jié)果。在CIFAR-10數(shù)據(jù)集中的連續(xù)任務(wù)階段(從第二個任務(wù)階段開始),相較于目前先進的PASS 方法,AFC-PO分別提升3.45、11.57、15.18、9.22個百分點;在CIFAR-100數(shù)據(jù)集中分別提升了0.50、0.64、1.71、0.35個百分點。在兩個數(shù)據(jù)集中,平均準確率分別提升9.22、0.18個百分點。而相比于基于數(shù)據(jù)回放的ICaRL方法,通過實驗結(jié)果可以觀察到ICaRL 在大型數(shù)據(jù)集上的效果較差。由于CIFAR-100類型較多,導(dǎo)致保留的各類型數(shù)據(jù)樣本過少,從而使得保留樣本對模型性能提升杯水車薪。而AFC-PO 方法明顯優(yōu)于數(shù)據(jù)回放的ICaRL 方法,這表明AFC-PO方法可以有效地緩解類增量學(xué)習(xí)中所產(chǎn)生的災(zāi)難性遺忘,而無需存儲舊的訓(xùn)練樣本。AFC-PO方法在使用知識蒸餾方法的基礎(chǔ)上,對歷史任務(wù)數(shù)據(jù)的深層視覺語義特征進行自適應(yīng)特征整合與學(xué)習(xí),以此吸收先前任務(wù)數(shù)據(jù)特征的知識,同時對歷史模型重要參數(shù)選擇性的優(yōu)化,這使得AFC-PO的算法性能表現(xiàn)更加優(yōu)越,同時表明了算法較強的可塑性,能夠有效緩解災(zāi)難性遺忘。
為驗證算法模型對歷史任務(wù)的記憶程度,本文在CIFAR-100 數(shù)據(jù)集上對每個增量任務(wù)階段模型訓(xùn)練完成后對任務(wù)1 的測試數(shù)據(jù)進行測試,測試結(jié)果如圖5 所示。AFC-PO方法在第五階段模型對任務(wù)1數(shù)據(jù)的測試準確率達到57.55%,相比于PASS方法增加了8.45個百分點。實驗表明本文所提的AFC-PO 方法相較于上述方法對歷史任務(wù)知識的記憶能力有顯著的提升。AFCPO 方法能夠吸收先前任務(wù)的知識,從而使得模型對舊任務(wù)知識的記憶程度更高。
圖5 不同增量階段模型對任務(wù)1測試準確率(CIFAR-100)Fig.5 Accuracy of different incremental stage models for task-1 testing(CIFAR-100)
如表3、表4 所示,為了驗證本文所提的AFC-PO 方法模型的穩(wěn)定性,在數(shù)據(jù)集CIFAR-10 和CIFAR-100 上進行了遺忘率對比實驗。實驗結(jié)果表明AFC-PO 方法在遺忘率方法明顯優(yōu)于其他方法,證實了AFC-PO方法有更好穩(wěn)定性。在數(shù)據(jù)集CIFAR-10和CIFAR-100的第5 個任務(wù)階段,AFC-PO 比ICaRL 遺忘率分別提高了12.22 和56.89 個百分點,這表明AFC-PO 方法能夠應(yīng)對連續(xù)的復(fù)雜圖像任務(wù),并且保持對舊知識的記憶。
表3 CIFAR-10上各階段模型的遺忘率Table 3 Forgetting rate of each stage on CIFAR-10 單位:%
表4 CIFAR-100上各階段模型的遺忘率Table 4 Forgetting rate of each stage on CIFAR-100 單位:%
圖6 顯示了LwF、ICaRL 和本文所提出的AFC-PO方法通過混淆矩陣進行比較。對角條目表示正確分類結(jié)果,非對角條目表示錯誤分類結(jié)果。由于在新任務(wù)訓(xùn)練時,新舊數(shù)據(jù)類型之間的嚴重不平衡,如圖6(a)、(b),LwF與ICaRL傾向于將數(shù)據(jù)樣本分類為新類。而AFCPO(圖6(d))能夠消除大部分類增量學(xué)習(xí)不平衡所帶來的影響,并在不依賴舊類的存儲數(shù)據(jù)的情況下獲得更好的算法性能。
圖6 CIFAR-100上混淆矩陣對比圖Fig.6 Comparison of confusion matrix on CIFAR-100
綜上所述,自適應(yīng)特征整合方法和參數(shù)優(yōu)化方法維護模型在穩(wěn)定性與可塑性之間的平衡。AFC-PO 方法則采用非樣本保留方法,在實驗中獲得了顯著的實驗效果,能夠有效緩解持續(xù)學(xué)習(xí)中的災(zāi)難性遺忘問題。
針對深度網(wǎng)絡(luò)模型在連續(xù)圖片分類任務(wù)中所產(chǎn)生的災(zāi)難性遺忘問題,本文提出一種自適應(yīng)特征整合方法和參數(shù)優(yōu)化(AFC-PO)方法,該方法以知識蒸餾技術(shù)作為基礎(chǔ)框架,以非樣本保留的方式對模型進行訓(xùn)練。AFC-PO 方法首先對前后任務(wù)的模型主干網(wǎng)絡(luò)的輸出特征進行整合,并使用自定義差異損失維護舊任務(wù)模型主干網(wǎng)絡(luò)的特征表示。同時,在模型分類層利用輸出特征構(gòu)造具有模糊性的軟標(biāo)簽作為語義監(jiān)督信息,以此吸收先前任務(wù)的知識。此外,在增量學(xué)習(xí)階段有選擇地保留或刪除知識,即對模型參數(shù)重要性進行評價,并在學(xué)習(xí)新任務(wù)時,對重要參數(shù)的改變施加懲罰,從而有效防止新模型覆蓋與以前任務(wù)相關(guān)的重要知識。并在CIFAR-10 與CIFAR-100 上進行了實驗驗證。在實驗中與具有代表性的方法相比,AFC-PO能夠有效地緩解災(zāi)難性遺忘。在將來的工作中,計劃將進一步評估AFC-PO模型在更多數(shù)據(jù)集上的可行性,同時關(guān)注于歷史任務(wù)模型內(nèi)部的參數(shù)之間變化對模型遺忘程度的影響。