摘 要:基于現(xiàn)有深度神經(jīng)網(wǎng)絡(luò)模型無法根據(jù)使用權(quán)限進行分級授權(quán)的問題,設(shè)計提出了一種新型的DNN模型分級授權(quán)方法,其可以根據(jù)模型權(quán)限不同分發(fā)不同模型精度。該方法依據(jù)模型剪枝技術(shù)實現(xiàn)了模型性能的分級,利用特定的剪枝速率或剪枝閾值對模型進行剪枝和微調(diào),通過在剪枝和微調(diào)階段對模型進行調(diào)整從而使模型輸出不同等級的準確率,最后將不同的用戶權(quán)限與對應(yīng)等級的準確率相匹配。在多個數(shù)據(jù)集和DNN模型上進行了實驗,并利用CIFAR-10和CIFAR-100數(shù)據(jù)集進行驗證。實驗結(jié)果表明,該方法能夠有效地將模型的性能分級,在多個DNN模型上都有良好的效果。
關(guān)鍵詞:深度神經(jīng)網(wǎng)絡(luò);分級授權(quán);版權(quán)保護;模型剪枝
中圖分類號:TP391.4 文獻標識碼:A 文章編號:2096-4706(2024)08-0128-06
DOI:10.19850/j.cnki.2096-4706.2024.08.028
0 引 言
如今,深度學(xué)習(xí)已經(jīng)逐漸發(fā)展成熟,在圖像[1-3]、視頻[4]和自然語言處理[5-7]等方面的需求也日益增加。越來越多的互聯(lián)網(wǎng)公司利用CPU、TPU等強大的計算能力,以及專業(yè)的知識和大量的數(shù)據(jù)對深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks, DNN)模型進行訓(xùn)練。DNN模型在不斷發(fā)展的同時也蘊含著十分巨大的經(jīng)濟價值和商業(yè)價值,所以對DNN模型的保護尤其重要。主動授權(quán)作為具有預(yù)防策略的DNN模型版權(quán)保護方案,存在著改變模型內(nèi)部結(jié)構(gòu)和加密解密需要消耗大量資源的缺點,針對該問題我們在之前的一篇文章中提出了基于信道剪枝的防止非法使用DNN的方法[8]。不過,由于用戶對模型的預(yù)算不同,所獲得的模型權(quán)限也不同。模型擁有者希望對模型性能進行劃分,以便對用戶授權(quán)不同的模型性能使用權(quán)限。如果無法根據(jù)不同的權(quán)限對用戶提供對應(yīng)準確率的模型,很容易造成DNN模型的模型資源的浪費。針對上述的DNN模型版權(quán)保護和DNN模型的分級授權(quán)問題,本文提出了一種基于模型結(jié)構(gòu)化剪枝的神經(jīng)網(wǎng)絡(luò)分級授權(quán)的方法。
本文的主要貢獻包括以下三點:
1)本文提出了一種基于模型剪枝的分級授權(quán)DNN模型的新方法。該方法可以有效地對模型實現(xiàn)性能分級,為不同權(quán)限的用戶提供多種性能的模型。
2)剪枝階段采用了結(jié)構(gòu)化剪枝的機制,在模型性能分級過程中有效降低了計算量。
3)經(jīng)過多種實驗結(jié)果表明,本文提出的方法極大地保留了原模型性能,也有效地保護了模型的所有權(quán)。
1 相關(guān)工作
1.1 模型剪枝
DNN模型通常是過擬合的,具有很大的冗余。針對該問題人們提出了許多消除冗余的方法,其中最常用的方法為模型剪枝[9]。Han等人[10]提出了三步修剪冗余連接的方法,根據(jù)訓(xùn)練確定網(wǎng)絡(luò)連接的重要程度,對不重要的連接置0并修剪,最后通過微調(diào)剩余連接權(quán)重回復(fù)模型性能;He等人[11]提出了迭代的兩步算法,采用基于LASSO的回歸信道選擇并利用最小二乘重構(gòu)修剪,該方法有效地減少了剪枝積累的錯誤。
1.2 分級授權(quán)
由于DNN模型逐漸進入商業(yè)化階段,模型擁有者根據(jù)需求對用戶權(quán)限進行劃分,所以模型分級授權(quán)開始被提出。Tian等人[12]在提出一種選擇性加密算法時提到了分級授權(quán),他們用概率選擇策略選擇重要的模型參數(shù),然后對重要的小部分參數(shù)進行加密,設(shè)計了一組訪問權(quán)限,通過解密不同的參數(shù),可以為用戶提供不同等級的性能的模型;Luo等人[13]提出了利用拉普拉斯機制對輸出擾動實現(xiàn)分級授權(quán),該方法考慮到了權(quán)限來自不同的用戶,通過不同程度的擾動輸入,模型會產(chǎn)生不同精度的輸出效果。
2 方法論
在本節(jié)中將對本文提出的分級授權(quán)方法做詳細的介紹。在2.1節(jié)主要對圖1中的分級授權(quán)流程圖的具體過程作詳細介紹,具體過程包括從授權(quán)、剪枝到分發(fā)的全過程;在2.2節(jié)將對圖2中展示的兩種分級方法分別做詳細的介紹。
2.1 分級授權(quán)的實現(xiàn)過程
分級授權(quán)方法的流程圖如圖1所示,其中包括了分級授權(quán)部分和模型性能分級部分。
在進行分級授權(quán)之前,模型擁有者需要先對模型進行性能分級。在模型性能分級部分需要先使用訓(xùn)練數(shù)據(jù)生成一個原始DNN模型,隨后利用信道稀疏正則化訓(xùn)練器訓(xùn)練原始DNN模型。在稀疏正則化的過程中主要是對模型Batch Normalization(BN)層的γ系數(shù)稀疏化。在稀疏正則化階段,采用常用的正則化器對模型進行正則化訓(xùn)練,在該階段的訓(xùn)練過程中,對標度因子進行正則化的DNN模型訓(xùn)練目標函數(shù)為:
(1)
(2)
在式(1)中,L( )表示損失函數(shù),N表示批量的大小,xi和yi分別表示訓(xùn)練輸入和訓(xùn)練目標。R( )通常表示對網(wǎng)絡(luò)權(quán)值的正則化,Rs( )表示對神經(jīng)元尺度因子的稀疏正則化,λ表示權(quán)重系數(shù),主要為了對目標函數(shù)中的三項進行平衡。在式(2)中,γ表示一組初始化的比例因子。本文中定義的正則化器的算式表達如式(3)所示:
(3)
其中γi表示通道i的權(quán)重系數(shù),經(jīng)過稀疏正則化后γ可以表示該DNN模型中的每個通道的重要程度。在稀疏訓(xùn)練階段的正則器將每個比例因子限制到一個合理的范圍內(nèi),即γi ∈ [0,a],其中a>0。
(4)
其中" 表示γ1,γ2,…,γn的均值。
原始DNN模型經(jīng)過稀疏正則化訓(xùn)練后每個信道都被標上了對應(yīng)的尺度因子,并將尺度因子從小到大進行排列。其中尺度因子較小的表示對DNN模型的影響較小,而較大的尺度因子表示該信道為該DNN模型的主要信道,代表了該模型的主要功能部分。
完成稀疏訓(xùn)練階段之后,就可以對DNN模型進行剪枝。在模型剪枝階段需要對模型采用特定的剪枝率或剪枝閾值,選擇的特定剪枝率或剪枝閾值需要保證通過剪枝和微調(diào)后的模型性能需要符合用戶權(quán)限所對應(yīng)的性能。在剪枝階段,我們對信道尺度因子較大的進行剪枝,剪枝后的模型精確度急速降低,甚至達到了一種不可使用的程度。將剪枝率或者剪枝閾值作為密鑰,這時候通過密鑰就可以對剪枝后的模型進行微調(diào)。剪枝后的模型通過微調(diào)恢復(fù)到與用戶權(quán)限對應(yīng)的性能。對于非授權(quán)用戶,由于沒有正確的密鑰所以無法將模型損失的信道進行微調(diào)恢復(fù),模型將始終處于較低的精確度無法使用。剪枝后的模型是否能夠恢復(fù)到原始模型的性能,主要判斷利用的剪枝率或剪枝閾值是否和分發(fā)的密鑰相同,模型恢復(fù)算式如下:
(5)
通過剪枝和微調(diào)恢復(fù)的方式實現(xiàn)對不同用戶授權(quán)不同精確度的DNN模型。在該方法中特定的密鑰作為主要的認定工具,只有擁有密鑰的用戶才可以使用對應(yīng)權(quán)限的模型。經(jīng)過微調(diào)恢復(fù)原始性能的模型,其中剪枝損失的信道只占重要通道總數(shù)的很小一部分,所以恢復(fù)后的最高等級的模型性能是可以接近原始模型的性能的。剪枝后的模型損失了大量的重要信道,所以非授權(quán)用戶即使盜取了也會因為準確率低而無法使用。
2.2 兩種分級授權(quán)方法實現(xiàn)
圖2展示了兩種不同的模型性能分級的方法,方法一和方法二分別在不同的模型剪枝階段和模型微調(diào)階段采用不同的操作來實現(xiàn)模型性能的分級。
在方法一中,采用不同的剪枝率或剪枝閾值對模型進行剪枝,剪枝后的模型使用與其唯一對應(yīng)的微調(diào)參數(shù)進行微調(diào)。經(jīng)過剪枝和微調(diào)后的模型會產(chǎn)生不同的性能分級效果。該方法最主要的優(yōu)點是可以極大程度地保護模型本身的安全,剪枝和微調(diào)的參數(shù)對應(yīng)可以實現(xiàn)模型認證功能。由于剪枝后的模型性能很低,所以即使被盜取也無法使用,可以很大程度上避免模型盜取等問題。
在方法二中,對模型采用唯一的剪枝率進行剪枝,剪枝后的模型會利用不同的微調(diào)參數(shù)進行微調(diào)。微調(diào)的方法在受到剪枝策略不同、剪枝指標計算以及模型特性等條件的影響下也會產(chǎn)生模型性能分級的效果。模型微調(diào)的微調(diào)率會因為過度微調(diào)而產(chǎn)生下降的現(xiàn)象,依據(jù)這一現(xiàn)象本文實現(xiàn)了第二種模型分級的方法。該方法的優(yōu)點是減少了剪枝過程中的計算量,實現(xiàn)了一個剪枝模型分級出多個不同性能模型的效果。經(jīng)過剪枝后的模型準確率很低,也極大程度地避免了模型盜取的問題。
DNN模型可以將一個分類問題進行劃分,最后的輸出會將輸入圖像劃分為m個類。在DNN模型測試過程的最后,DNN模型利用Softmax函數(shù)得到概率為m的P。通常我們會根據(jù)需要分別將概率值最高的類別或者前幾個概率最高的類別作為分類結(jié)果。性能越好的模型越可以準確地將輸入的圖片劃分到更高概率的分類中,而性能較差的通常會劃分在前幾個概率最高的類別中。所以我們根據(jù)上述概念將模型的輸出精度劃分成N個等級:L1,L2,…,Ln。其中L1的輸出精度最高,L1相對被模型擁有者授予的權(quán)限也是最高的。相反Ln的輸出精度最低,對應(yīng)授予的權(quán)限也是最低的。因此,經(jīng)過分級授權(quán)后模型相應(yīng)的分類概率應(yīng)該為:P1, P2, …, Pn。
在分級授權(quán)的過程中,模型擁有者首先會對用戶授予不同的權(quán)限,權(quán)限的依據(jù)為不同的密鑰。根據(jù)權(quán)限的不同,模型會根據(jù)所對應(yīng)的剪枝率或剪枝閾值進行剪枝,然后再根據(jù)對應(yīng)的微調(diào)參數(shù)進行微調(diào)。經(jīng)過以上操作后模型會被劃分為不同性能的模型,即SModel = m1, m2, …, mn。所以在本文中模型與模型性能等級對應(yīng)算式如下:
(6)
3 實驗結(jié)果及分析
在本節(jié)中主要對本文提出的方法進行實驗驗證。在實驗中,我們主要研究了兩個數(shù)據(jù)集CIFAR-10 [14]和CIFAR-100 [14]和主流的DNN模型,即VGG-16 [15]、VGG-19 [15]和ResNet-56 [16]。在3.1節(jié)對實驗使用的數(shù)據(jù)集和實驗環(huán)境做詳細的介紹,在3.2節(jié)和3.3節(jié)中給出了不同實驗的結(jié)果和分析。
3.1 數(shù)據(jù)集及實驗環(huán)境
CIFAR-10數(shù)據(jù)集包含了60 000張32×32分辨率的彩色圖像,其中訓(xùn)練集50 000張,測試集10 000張。CIFAR-10數(shù)據(jù)集中的圖片被分為了10個不同類別。CIFAR-100數(shù)據(jù)集包含了60 000張32×32分辨率的彩色圖片,其中訓(xùn)練集50 000張,測試集10 000張。CIFAR-100數(shù)據(jù)集中的圖片分為了100個不同類別。
3.2 神經(jīng)網(wǎng)絡(luò)性能分級實驗結(jié)果與分析
在文中模型未進行修改時的準確率為baseline,剪枝后的模型準確率為Prun_acc,剪枝微調(diào)后的模型準確率為Fine_acc。我們將對Fine_acc進行比較并得出不同分級對應(yīng)的模型準確率,其中Level表示不同的分級等級,對于無法作為分級授權(quán)使用的剪枝率或閾值,我們將用×表示。
在VGG-19中,我們使用表1中羅列的不同的剪枝率對模型進行修剪,用CIFAR-10訓(xùn)練獲取Prun_acc和Fine_acc。由于在分發(fā)過程中我們將對剪枝后的模型進行分發(fā),所以需要要求剪枝后的模型性能下降。剪枝率為0.1%時Prun_acc數(shù)值過高,并且微調(diào)后的性能出現(xiàn)了下降,所以該剪枝率無法作為分級授權(quán)的剪枝率使用。在剪枝率分別為2%、7%和10%的時候,F(xiàn)ine_acc分別為91.20%、81.50%和73.60%。三項中的Prun_acc都在10%左右,符合分發(fā)時模型性能低的要求,并且經(jīng)過微調(diào)后模型的性能增長,所以我們根據(jù)Fine_acc的高低分別設(shè)置Level1到Level3的等級。在分級的選擇時,我們發(fā)現(xiàn)剪枝率為0.6%、0.7%、1%、2%和3%都符合Prun_acc低并且Fine_acc高的要求,但是分別對這幾個剪枝率對應(yīng)的值比較得出。當剪枝率為0.6%時,雖然Fine_acc數(shù)值高但是對應(yīng)的Prun_acc的數(shù)值也高。當剪枝率為3%時,雖然剪枝后的模型Prun_acc較低,但是Fine_acc與剪枝率為2%的Fine_acc比更低。所以綜合比較之間這幾個剪枝率的效果,選定2%的剪枝率作為level1等級對應(yīng)的剪枝率。實驗中三個等級之間的準確率之差都在10%左右。
在DesNet-40中,使用了固定的剪枝率剪枝并利用不同的微調(diào)率對模型微調(diào),同時使用CIFAR-100數(shù)據(jù)集進行訓(xùn)練獲取數(shù)據(jù)。在表2中模型剪枝后的準確率較低,微調(diào)后的模型性能能夠產(chǎn)生明顯的分級效果。其中微調(diào)范圍小于0.5時模型的準確率都在70%以上。根據(jù)Fine_acc從高到低我們將其以此劃分為Level1、Level2、Level3和Level4,這四個等級之間相差的準確率都在5%左右。
3.3 不同分級下的圖像分類實驗結(jié)果與分析
針對不同的level的選擇,除了選取不同F(xiàn)ine_acc還需要考慮圖片在各類別的輸出概率。以CIFAR-10中第8個分類為例,第八類為“馬”,對應(yīng)的標簽為“7”。將該分類圖像輸入到VGG-16中進行分類,分類的結(jié)果如表3所示。在該分類中本文采用了兩種計算準確率的方式。top-1只選取概率最高的類別作為分類結(jié)果,若最高概率的分類標簽不是“7”則認為分類錯誤;top-3選取概率最高的三個類別作為分類結(jié)果,若這三個分類的標簽中不包含“7”則認為分類錯誤。
從表3中可以看出,分級等級越低,圖片輸入到正確的標簽概率越低,模型將其錯分為其他類別的概率變大,因此,用戶級別越低,模型的輸出精度越小。在top-1分類情況下,各個等級之間的輸出精度具有較大的差距,Level1的輸出精度遠大于Level2;在top-3分類的情況下,我們可以觀測到Level2等級的輸出精度大幅提升,但并沒有超過Level1的精度。因此可以得出結(jié)論,雖然本文提出的方法是作為分級授權(quán),但是當我們選擇多個分類類別作為分類結(jié)果時,低等級的用戶也會有不錯的表現(xiàn)。本體提出的方法將不同等級下分類的每一項都實現(xiàn)了劃分,低等級的每一項分類概率都比高等級的低。模型擁有者可以根據(jù)用戶權(quán)限分發(fā)不同等級的分級模型,而不用考慮模型精度會低到無法使用的地步。
4 結(jié) 論
本文提出了一種基于結(jié)構(gòu)化剪枝的深度神經(jīng)網(wǎng)絡(luò)模型分級授權(quán)框架,有效地解決了DNN模型商業(yè)使用中模型擁有者針對不同權(quán)限用戶提供不同準確率模型的問題。該方法利用結(jié)構(gòu)化剪枝的方法對模型進行控制,并根據(jù)模型擁有者的需求將其劃分為多個等級。同時本文提出了兩種不同的模型性能分級的方法,可以應(yīng)對不同的場景需求。實驗結(jié)果表明,該方法可以有效地控制模型并根據(jù)所有者的需求將其劃分為多個等級,利用不同的閾值或剪枝率對模型剪枝和微調(diào),以實現(xiàn)模型的分級授權(quán)。我們在兩個數(shù)據(jù)集和多個流行的DNN模型中實驗了該方法,結(jié)果表明通過本文提出的方法可以很好地對DNN模型進行分級,在多個DNN模型上都表現(xiàn)出了良好的分級效果。隨著DNN的應(yīng)用,分級授權(quán)可以在很大程度上滿足模型擁有者對不同權(quán)限授權(quán)的需求。
參考文獻:
[1] LIU H J,MA S,XIA D X,et al. SFANet: A Spectrum-aware Feature Augmentation Network for Visible-infrared Person Reidentification [J].IEEE Transactions on Neural Networks and Learning Systems,2023,34(4):1958-1971.
[2] LIM J H,CHAN C S,NG K W,et al. Protect, Show, Attend and Tell: Empowering Image Captioning Models with Ownership Protection [J].Pattern Recognition,2021,122(8):108285.
[3] RONNEBERGER O,F(xiàn)ISCHER P,BROX T. U-Net: Convolutional Networks for Biomedical Image Segmentation [J/OL].arXiv:1505.04597 [cs.CV].(2015-05-18).https://arxiv.org/abs/1505.04597v1.
[4] KRIZHEVSKY A,SUTSKEVER I,HINTON G E. ImageNet Classification with Deep Convolutional Neural Networks [J].Communications of the ACM,2017,60(6):84–90.
[5] ABDEL-HAMID O,MOHAMED A-R,JIANG H,et al. Convolutional Neural Networks for Speech Recognition [J].IEEE/ACM Transactions on Audio,Speech,and Language Processing,2014,22(10):1533-1545.
[6] ABDEL-HAMID O,MOHAMED A-R,JIANG H,et al. Applying Convolutional Neural Networks Concepts to Hybrid NN-HMM model for Speech Recognition [C]//2012 IEEE International Conference on Acoustics,Speech and Signal Processing (ICASSP).Kyoto:IEEE,2012:4277–4280.
[7] SENNRICH R,HADDOW B,BIRCH A. Neural Machine Translation of Rare Words with Subword Units [J/OL].arXiv:1508.07909 [cs.CL].(2015-08-31).https://arxiv.org/abs/1508.07909v5.
[8] WANG L N,SONG Y F,ZHU Y J,et al. A framework for Deep Neural Network Multiuser Authorization Based on Channel Pruning [J].Concurrency and Computation:Practice and Experience,2023,35(21):e7708.
[9] LIU Z,LI J G,SHEN Z Q,et al. Learning Efficient Convolutional Networks through Network Slimming [C]//2017 IEEE International Conference on Computer Vision (ICCV).Venice:IEEE,2017:2755-2763.
[10] HAN S,POOL J,TRAN J,et al. Learning Both Weights and Connections for Efficient Neural Networks [C]//NIPS'15:Proceedings of the 28th International Conference on Neural Information Processing Systems.Cambridge:ACM,2015:1135-1143.
[11] HE Y H,ZHANG X Y,SUN J. Channel Pruning for Accelerating very Deep Neural Networks [C]//2017 IEEE International Conference on Computer Vision(ICCV).Venice:IEEE,2017:1398-1406.
[12] TIAN J Y,ZHOU J T,DUAN J. Probabilistic Selective Encryption of Convolutional Neural Networks for Hierarchical Services [C]//2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition(CVPR).Nashville:IEEE,2021:2205-2214.
[13] LUO Y,F(xiàn)ENG G R,ZHANG X P. Hierarchical Authorization of Convolutional Neural Networks for Multi-user [J].IEEE Signal Processing Letters,2021,28:1560-1564.
[14] KRIZHEVSKY A,HINTON G. Learning Multiple Layers of Features from Tiny Images [EB/OL]. [2024-01-03].https://www.researchgate.net/publication/306218037_Learning_multiple_layers_of_features_from_tiny_images.
[15] SIMONYAN K,ZISSERMAN A. Very Deep Convolutional Networks for Large-scale Image Recognition [J/OL].arXiv:1409.1556 [cs.CV].(2014-09-04).https://arxiv.org/abs/1409.1556.
[16] HE K M,ZHANG X Y,REN S Q,et al. Deep Residual Learning for Image Recognition [C]//2016 IEEE Conference on Computer Vision and Pattern Recognition(CVPR).Las Vegas:IEEE,2016:770-778.
作者簡介:宋允飛(1999—),男,漢族,山東棗莊人,碩士在讀,研究方向:深度神經(jīng)網(wǎng)絡(luò)模型版權(quán)保護。
收稿日期:2024-01-25
基金項目:中央引導(dǎo)地方科技發(fā)展專項項目(QKZYD〔2022〕4054);貴州省教育廳自然科學(xué)研究項目(QJJ〔2023〕011);貴州師范大學(xué)學(xué)術(shù)新秀基金項目(QSXM〔2022〕31)
Implementation of a Hierarchical Authorization Method for Deep Neural Networks Based on Model Pruning
SONG Yunfei
(School of Big Data and Computer Science, Guizhou Normal University, Guizhou 550025, China)
Abstract: Based on the problem that existing Deep Neural Networks models cannot be hierarchically authorized according to the usage authority, a novel hierarchical authorization method for DNN models is designed and proposed, which can distribute different model accuracies according to different model permissions. The method realizes model performance grading based on the model pruning technique, which uses a specific pruning rate or pruning threshold to prune and fine-tune the model. By adjusting the model during the pruning and fine-tuning stages, the model outputs different levels of accuracy. Finally different user privileges are matched with the corresponding level of accuracy. Experiments are conducted on multiple datasets and DNN models and validated by using CIFAR-10 and CIFAR-100 datasets. The experimental results show that the method is effective in grading the performance of the model and works well on several DNN models.
Keywords: Deep Neural Networks; hierarchical authorization; copyright protection; model pruning