本發(fā)明涉及深度學(xué)習(xí)圖像分類和遺忘學(xué)習(xí)領(lǐng)域,尤其涉及一種基于神經(jīng)元重要性的神經(jīng)網(wǎng)絡(luò)選擇性遺忘學(xué)習(xí)方法。
背景技術(shù):
1、隨著大數(shù)據(jù)和人工智能技術(shù)的快速發(fā)展,模型訓(xùn)練過程中使用的數(shù)據(jù)量呈指數(shù)級別增長,數(shù)據(jù)隱私和安全問題日益凸顯。在許多實際應(yīng)用場景中,根據(jù)《通用數(shù)據(jù)保護條例》(gdpr)等隱私保護法規(guī)的規(guī)定,用戶有權(quán)要求刪除其數(shù)據(jù),以及撤銷對數(shù)據(jù)的使用授權(quán)。然而,僅從數(shù)據(jù)集中刪除目標樣本并不足以實現(xiàn)真正的數(shù)據(jù)遺忘,因為模型參數(shù)可能已經(jīng)記憶了樣本的敏感信息(feldman,?v.?(2019).?does?learning?require?memorization??ashort?tale?about?a?long?tail.?proceedings?of?the?52nd?annual?acm?sigactsymposium?on?theory?of?computing.)。這種記憶效應(yīng)在深度神經(jīng)網(wǎng)絡(luò)中尤為顯著,即使刪除訓(xùn)練數(shù)據(jù),攻擊者仍可能通過模型逆向工程等手段恢復(fù)原始數(shù)據(jù)(yang,?z.,?chang,e.,&liang,?z.?(2019).?adversarial?neural?network?inversion?via?auxiliaryknowledge?alignment.?arxiv,?abs/1902.08552.)。如何在不影響模型性能的前提下高效地、有效地從模型中“遺忘”特定數(shù)據(jù)成為一個亟待解決的問題,遺忘學(xué)習(xí)(machineunlearning)的相關(guān)研究應(yīng)運而生。
2、現(xiàn)有的遺忘學(xué)習(xí)方法可以分為兩類:精確遺忘和近似遺忘。精確遺忘即再訓(xùn)練,從原訓(xùn)練數(shù)據(jù)集中移除用戶要求刪除的數(shù)據(jù)樣本集后,用剩余數(shù)據(jù)集從頭訓(xùn)練一個重新初始化的模型。然而,基于再訓(xùn)練的精確學(xué)習(xí)方法需要大量的計算資源,尤其對大規(guī)模的模型(例如基于擴散的生成模型)來說具有挑戰(zhàn)性。近似遺忘旨在通過更新模型參數(shù)以移除模型中遺忘數(shù)據(jù)集的影響,使更新后的遺忘模型與未使用訓(xùn)練的模型之間的差異在統(tǒng)計上不可區(qū)分。常見的近似遺忘方法包括:使用剩余數(shù)據(jù)集微調(diào)模型(warnecke,?a.,?pirch,?l.,wressnegger,?c.,&rieck,?k.?(2021).?machine?unlearning?of?features?and?labels.arxiv,?abs/2108.11577.)與再訓(xùn)練方法相比,微調(diào)僅需少量訓(xùn)練輪次即可達到預(yù)期效果,顯著降低了計算開銷;隨機擾亂遺忘數(shù)據(jù)集中的樣本標簽后,使用該數(shù)據(jù)集微調(diào)模型(golatkar,?a.,?achille,?a.,&soatto,?s.?(2019).?eternal?sunshine?of?thespotless?net:?selective?forgetting?in?deep?networks.?2020?ieee/cvf?conferenceon?computer?vision?and?pattern?recognition?(cvpr),?9301-9309.);基于影響函數(shù)方法(koh,?p.,&liang,?p.?(2017).?understanding?black-box?predictions?viainfluence?functions.?international?conference?on?machine?learning.),通過計算數(shù)據(jù)點對模型參數(shù)的貢獻并反向調(diào)整參數(shù)以移除模型參數(shù)中特定數(shù)據(jù)樣本點的影響(guo,c.,?goldstein,?t.,?hannun,?a.y.,&maaten,?l.v.?(2019).?certified?data?removalfrom?machine?learning?models.?international?conference?on?machine?learning.);對模型參數(shù)整體加入正態(tài)分布噪聲(golatkar,?a.,?achille,?a.,&soatto,?s.?(2020).forgetting?outside?the?box:?scrubbing?deep?networks?of?information?accessiblefrom?input-output?observations.?european?conference?on?computer?vision.),通過隨機擾動參數(shù)削弱模型對特定數(shù)據(jù)的依賴性;通過調(diào)整分類模型的決策邊界,使模型在遺忘數(shù)據(jù)集上的預(yù)測結(jié)果趨于隨機化(chen,?m.,?gao,?w.,?liu,?g.,?peng,?k.,&wang,?c.(2023).?boundary?unlearning:?rapid?forgetting?of?deep?networks?via?shiftingthe?decision?boundary.?2023?ieee/cvf?conference?on?computer?vision?andpattern?recognition?(cvpr),?7766-7775.);基于遺忘數(shù)據(jù)集的梯度上升,最大化模型在的損失,從而削弱模型對遺忘數(shù)據(jù)集的記憶(thudi,?a.,?deza,?g.,?chandrasekaran,v.,&papernot,?n.?(2021).?unrolling?sgd:?understanding?factors?influencingmachine?unlearning.?2022?ieee?7th?european?symposium?on?security?and?privacy(euros&p),?303-319.)。上述遺忘學(xué)習(xí)方法需更新模型的全部參數(shù),計算所有參數(shù)的海森矩陣(hessian?matrix)及其逆、費舍爾信息矩陣(fisher?information?matrix)需要耗費大量的計算資源、存儲資源。
3、“先剪枝后遺忘”的遺忘方法(jia,?j.,?liu,?j.,?ram,?p.,?yao,?y.,?liu,?g.,liu,?y.,?sharma,?p.,&liu,?s.?(2023).?model?sparsity?can?simplify?machineunlearning.?neural?information?processing?systems.)指出模型稀疏性有助于遺忘,并將模型稀疏性作為損失函數(shù)的正則項融入遺忘過程,但剪枝會破壞模型結(jié)構(gòu)?!跋燃糁筮z忘”為選擇性遺忘提供了思路,即選擇性更新對遺忘數(shù)據(jù)集中樣本顯著的部分參數(shù),其關(guān)鍵在于選擇顯著性參數(shù)。常見的針對遺忘數(shù)據(jù)集的參數(shù)顯著性評估方法包括:分別在遺忘數(shù)據(jù)集和保留數(shù)據(jù)集上計算費舍爾信息矩陣和,選擇中對變化敏感且中對變化不敏感的參數(shù)(liu,?y.,?sun,?c.,?wu,?y.,&zhou,?a.?(2023).?unlearning?with?fisher?masking.arxiv,?abs/2310.05331.);基于針對遺忘數(shù)據(jù)集上特定損失函數(shù)的模型參數(shù)梯度,生成參數(shù)的顯著圖(fan,?c.,?liu,?j.,?zhang,?y.,?wei,?d.,?wong,?e.,&liu,?s.?(2023).salun:?empowering?machine?unlearning?via?gradient-based?weight?saliency?inboth?image?classification?and?generation.?arxiv,?abs/2310.12508.),更新其中的顯著參數(shù);基于連接敏感性(connection?sensitivity)分析的方法,將單個參數(shù)設(shè)置為0時在遺忘數(shù)據(jù)集上損失函數(shù)的變化值作為對應(yīng)參數(shù)的重要性評估標準(wu,?j.,&harandi,m.?(2024).?scissorhands:?scrub?data?influence?via?connection?sensitivity?innetworks.?european?conference?on?computer?vision.)。上述選擇顯著性參數(shù)的方法只考慮單個參數(shù),未考慮參數(shù)間的關(guān)聯(lián)。因此,現(xiàn)有的基于參數(shù)顯著性的選擇性遺忘學(xué)習(xí)方法存在以下局限性:主要關(guān)注單個參數(shù)對遺忘數(shù)據(jù)的顯著性影響,忽視了參數(shù)間的關(guān)聯(lián)性和協(xié)同作用;缺乏對神經(jīng)元層級特征響應(yīng)與遺忘數(shù)據(jù)之間關(guān)系的深入分析;在可解釋性方面表現(xiàn)不足。
技術(shù)實現(xiàn)思路
1、針對現(xiàn)有技術(shù)的不足,本發(fā)明的目的在于填補選擇性遺忘學(xué)習(xí)在神經(jīng)元粒度上的研究不足,提供一種基于神經(jīng)元重要性的神經(jīng)網(wǎng)絡(luò)選擇性遺忘學(xué)習(xí)方法,篩選重要神經(jīng)元并更新顯著的部分參數(shù)以達到遺忘學(xué)習(xí)的要求。
2、本發(fā)明的目的是通過以下技術(shù)方案來實現(xiàn)的:
3、本發(fā)明的第一個方面:一種基于神經(jīng)元重要性的神經(jīng)網(wǎng)絡(luò)選擇性遺忘學(xué)習(xí)方法,包括如下步驟:
4、(1)確定遺忘數(shù)據(jù)集:在隨機遺忘場景下,隨機選擇訓(xùn)練數(shù)據(jù)中部分數(shù)據(jù)作為遺忘數(shù)據(jù)集;在類別遺忘場景下,隨機選擇某一類別數(shù)據(jù)作為遺忘數(shù)據(jù)集;剩余的數(shù)據(jù)作為保留數(shù)據(jù)集;
5、(2)評估神經(jīng)元重要性:將卷積神經(jīng)網(wǎng)絡(luò)cnn模型對樣本的記憶值分配到神經(jīng)元中,以評估神經(jīng)元對數(shù)據(jù)集的重要性;所述樣本為遺忘樣本,數(shù)據(jù)集為遺忘數(shù)據(jù)集,其中遺忘數(shù)據(jù)集由一定數(shù)量的遺忘樣本構(gòu)成;
6、(3)生成參數(shù)掩碼:將記憶值大于特定閾值的神經(jīng)元掩碼設(shè)置為1,反之掩碼設(shè)置為0;
7、(4)隨機標簽遺忘過程:隨機設(shè)置遺忘數(shù)據(jù)集中樣本的標簽,使用隨機梯度下降方法更新掩碼為1的參數(shù);
8、(5)微調(diào)cnn模型:用保留數(shù)據(jù)集微調(diào)整個模型,得到最終的遺忘模型;
9、(6)評估遺忘效果:測試遺忘后模型在遺忘數(shù)據(jù)集上的準確率,以及成員推理攻擊準確率,評估遺忘方法效果;測試遺忘后模型在保留數(shù)據(jù)集、測試數(shù)據(jù)集上的準確率,評估遺忘后模型在原始任務(wù)上的性能及泛化性。
10、進一步地,所述步驟(1)包括如下兩種遺忘場景:
11、(1.1)隨機遺忘場景:完整訓(xùn)練數(shù)據(jù)集,包括個數(shù)據(jù)樣本點,其中為圖像,為標簽;隨機遺忘場景根據(jù)用戶的實際遺忘請求,從完整數(shù)據(jù)集中隨機選取部分數(shù)據(jù)樣本點作為遺忘數(shù)據(jù)集,剩余部分為保留數(shù)據(jù)集;
12、(1.2)類別遺忘場景:完整訓(xùn)練數(shù)據(jù)集包括個類別圖像,即,類別遺忘場景下,將訓(xùn)練數(shù)據(jù)集中所有類別為用戶指定遺忘類別的數(shù)據(jù)樣本劃分為遺忘數(shù)據(jù)集,其余類別數(shù)據(jù)劃分為保留數(shù)據(jù)集。
13、進一步地,評估神經(jīng)元重要性的具體計算步驟為:
14、(2.1)計算整個cnn模型對遺忘數(shù)據(jù)集中全部樣本的記憶值,取均值作為整個模型對遺忘數(shù)據(jù)集的記憶值,具體計算式為:
15、
16、其中:表示指示函數(shù),當括號內(nèi)的條件為真時取值為?1,否則取值為0,表示訓(xùn)練模型使用的算法,表示用數(shù)據(jù)集訓(xùn)練得到的模型,表示用數(shù)據(jù)集訓(xùn)練的模型;
17、(2.2)對模型中各個神經(jīng)元逐一消融,計算消融某一神經(jīng)元后不完整模型結(jié)構(gòu)對遺忘數(shù)據(jù)集的記憶值,具體計算式為:
18、
19、其中:表示模型消融一個神經(jīng)元后的不完整模型,表示模型消融一個神經(jīng)元后的不完整模型;
20、(2.3)將步驟(2.1)的計算結(jié)果與步驟(2.2)的計算結(jié)果相減,得到神經(jīng)元對遺忘數(shù)據(jù)集的記憶值,即神經(jīng)元重要性分數(shù)為:
21、
22、其中,由于步驟(2.1)和(2.2)的計算式中,模型和不完整模型對遺忘數(shù)據(jù)集的記憶值近似相等,二者相減結(jié)果趨近于0,因此能夠?qū)?yīng)兩項省略。
23、進一步地,所述步驟(3)生成參數(shù)掩碼的具體過程為:將模型中個神經(jīng)元按重要性分數(shù)降序排序;根據(jù)實際需求,將位置的神經(jīng)元重要性分數(shù)作為閾值,將重要性分數(shù)小于的神經(jīng)元掩碼值設(shè)置為0,其余神經(jīng)元掩碼值設(shè)置為1,即神經(jīng)元掩碼為:
24、
25、其中為二進制向量,維度與神經(jīng)元數(shù)量一致。
26、進一步地,所述步驟(4)包括如下子步驟:
27、(4.1)隨機化標簽:假設(shè)遺忘數(shù)據(jù)集,對其中個樣本生成隨機標簽,構(gòu)造新的數(shù)據(jù)集:
28、
29、其中為數(shù)據(jù)集類別數(shù)量;
30、(4.2)更新部分參數(shù):在隨機化標簽后的數(shù)據(jù)集上,結(jié)合掩碼向量,使用隨機梯度下降算法更新模型參數(shù);具體而言,僅對掩碼值為1的神經(jīng)元對應(yīng)的參數(shù)進行更新,更新后的模型參數(shù)表示為:
31、
32、其中表示向量逐元素相乘,表示參數(shù)更新量;參數(shù)更新過程中的優(yōu)化目標為最小化損失函數(shù):
33、
34、其中,為加強遺忘效果,在損失函數(shù)中引入針對原遺忘數(shù)據(jù)的正則項。
35、進一步地,所述步驟(5)具體過程為:使用保留數(shù)據(jù)集對步驟(4)更新后的模型進行全局更新,得到最終的遺忘模型參數(shù);通過優(yōu)化損失函數(shù),利用隨機梯度下降算法更新模型參數(shù),從而確保模型在保留數(shù)據(jù)集上的性能不受影響,同時實現(xiàn)對遺忘數(shù)據(jù)集的有效遺忘。
36、進一步地,所述步驟(6)包括如下子步驟:
37、(6.1)準確性測試:對步驟(5)更新后的模型參數(shù),分別在遺忘數(shù)據(jù)集?、保留數(shù)據(jù)集和測試數(shù)據(jù)集上進行準確性測試,以評估模型的遺忘效果、原任務(wù)性能、泛化性;其中模型在數(shù)據(jù)集上的準確率為:
38、
39、根據(jù)實際需要,使用、、替換即可;其中是模型對的預(yù)測結(jié)果;
40、(6.2)成員推理攻擊測試:訓(xùn)練一個二分類成員推理攻擊模型,用于區(qū)分數(shù)據(jù)樣本是否屬于目標模型的訓(xùn)練數(shù)據(jù)集;從測試數(shù)據(jù)集中選擇數(shù)量為的樣本作為非成員測試集,計算攻擊模型在和上的攻擊成功率asr:
41、
42、其中第一項求和表示預(yù)測為成員的數(shù)量,第二項求和表示預(yù)測為非成員的數(shù)量,asr接近50%遺忘效果佳。
43、本發(fā)明的第二個方面:一種基于神經(jīng)元重要性的神經(jīng)網(wǎng)絡(luò)選擇性遺忘學(xué)習(xí)裝置,包括以下模塊:
44、確定遺忘數(shù)據(jù)集模塊:在隨機遺忘場景下,隨機選擇訓(xùn)練數(shù)據(jù)中部分數(shù)據(jù)作為遺忘數(shù)據(jù)集;在類別遺忘場景下,隨機選擇某一類別數(shù)據(jù)作為遺忘數(shù)據(jù)集;剩余的數(shù)據(jù)作為保留數(shù)據(jù)集;
45、評估神經(jīng)元重要性模塊:將卷積神經(jīng)網(wǎng)絡(luò)模型對遺忘樣本的記憶值分配到神經(jīng)元中,以評估神經(jīng)元對遺忘數(shù)據(jù)集的重要性;生成參數(shù)掩碼模塊:將記憶值大于特定閾值的神經(jīng)元掩碼設(shè)置為1,反之掩碼設(shè)置為0;
46、隨機標簽遺忘模塊:隨機設(shè)置遺忘數(shù)據(jù)集中樣本的標簽,使用隨機梯度下降方法更新掩碼為1的參數(shù);
47、微調(diào)cnn模型模塊:用保留數(shù)據(jù)集微調(diào)整個模型,得到最終的遺忘模型;
48、評估遺忘效果模塊:測試遺忘后模型在遺忘數(shù)據(jù)集上的準確率,以及成員推理攻擊準確率,評估遺忘方法效果;測試遺忘后模型在保留數(shù)據(jù)集、測試數(shù)據(jù)集上的準確率,評估遺忘后模型在原始任務(wù)上的性能及泛化性。
49、本發(fā)明的有益效果如下:在圖像分類任務(wù)中,通過對比卷積神經(jīng)網(wǎng)絡(luò)模型在單個神經(jīng)元消融前后對遺忘數(shù)據(jù)集的分類準確率變化,可有效識別對遺忘過程具有顯著貢獻的神經(jīng)元,從而實現(xiàn)對關(guān)鍵參數(shù)的精準更新。該方法在保證遺忘效果的同時,顯著降低了參數(shù)更新規(guī)模,提高了遺忘效率。此外,通過在保留數(shù)據(jù)集上進行少量迭代輪次(epoch)的微調(diào),能夠有效恢復(fù)模型在原任務(wù)上的分類性能,確保了遺忘過程對模型整體性能的影響最小化。