?

基于可逆水印的神經網絡模型完整性驗證算法

2024-02-22 07:44楊奧松曹仰杰任紅軍
計算機工程與設計 2024年2期
關鍵詞:對模型剪枝完整性

楊奧松,王 雷,曹仰杰,莊 巖+,李 頡,3,任紅軍

(1.鄭州大學 網絡空間安全學院,河南 鄭州 450001;2.漢威科技集團股份有限公司 漢威研究院,河南 鄭州 450001;3.上海交通大學 計算機系,上海 200030)

0 引 言

深度神經網絡已被廣泛應用于各個領域,為了便利深度學習模型的應用,實現自動化部署,許多IT公司為深度學習模型提供基于云的訓練和服務,通常被稱為機器學習即服務[1](machine learning as a service,MLaaS)。使用在云中部署的模型時,模型完整性的保障是用戶關注的重點,復雜網絡的訓練需要經歷多個階段,在此期間易遭受非法訪問,攻擊者可能會利用網絡或存儲協議中的潛在漏洞[2]訪問傳輸中或已部署的目標模型,修改其參數以達到攻擊目的。例如,攻擊者可能會在模型中注入后門[3],使得模型可以表現出攻擊者想要的行為,或者利用數據中毒攻擊[4],使用帶錯誤標簽的數據對目標模型進行惡意微調,使得模型的性能嚴重下降。

現有模型完整性驗證方法大多基于修改模型參數,大致分為兩種:一種是黑盒方法[5,6],利用模型特有的決策邊界,使模型對修改敏感,從而驗證模型的完整性,然而黑盒方法只能判斷模型的完整性是否遭受到了攻擊,無法評估模型遭受攻擊程度即失真度;另一種是白盒方法,Botta等[7]在模型參數頻域中嵌入脆弱水印,根據提取的水印差異度量模型完整性失真值。原則上,即使網絡參數的微小變化也可能影響網絡性能,任意篡改可能導致嚴重的破壞性事故。因此,本文提出了一種快速神經網絡模型完整性驗證算法Fast-MIV,在不影響原始模型性能的情況下實現卷積神經網絡(convolutional neural network,CNN)的可逆水印嵌入,可完全恢復模型參數?;谀P图糁碚?,構建目標模型的待嵌入參數序列,嵌入哈希加密信息,在高保真度要求下,可實現模型參數的完全恢復,并提出了一種新的評價指標來評估模型的完整性失真度。

1 相關工作

He等[5]構建對神經網絡的最小改動敏感的特殊樣本,在驗證階段將此類樣本輸入更改后的模型將產生與預期不同的輸出,從而能夠識別網絡已被更改。Zhu等[6]借助觸發器思想[8],對模型進行兩階段的交替訓練,使得模型能夠對特定的觸發器序列,生成預定義的預測結果,這種觸發模式是脆弱的,一旦模型遭受微調或其它完整性威脅,對觸發器圖像的分類精度就會嚴重下降,因此可用于驗證模型的完整性。然而模型重新訓練往往是一個復雜的過程,研究表明,基于觸發器的方法很容易被檢測[9]甚至刪除[10]。

Botta等[7]采用脆弱水印來保護網絡結構和權重,將脆弱水印嵌入由KL(Karhunen loève)變換定義的秘密頻域,模型一旦遭受篡改,所提取的脆弱水印會和原嵌入水印產生差異,從而驗證模型的完整性。然而大多任務對模型質量有很高的要求,要求嵌入水印后,模型原始性能不會受到影響,在高保真度場景下,模型參數的篡改造成模型性能差異是不可取的。

2 本文方法

2.1 問題定義

形式上,考慮模型M的m層卷積層C={c1,c2,…,cm}, 其中第i層所有的參數為Wi∈Rni×ni+1×k×k, 其中ni為輸入通道(channel)數,ni+1為輸出通道數,k為卷積核(kernel)的尺寸。將待嵌入水印信息,利用哈希加密算法轉化為二值向量b={b1,b2…bn},bi∈{0,1} 嵌入Wi中,其中b的長度取決于哈希算法。

首先,利用加密哈希算法hash生成b, 為了盡可能減小驗證過程對模型原始任務的影響程度,同時將水印嵌入模型參數中,使用模型剪枝方法,篩選對模型原始任務影響較小的位置構建待嵌入參數序列。

在嵌入階段,使用可逆編碼算法ε將b嵌入到模型M中

M′=ε(M,b),M′≈M

(1)

生成的模型M′, 在性能上接近原模型M, 不影響模型的原始分類任務或其它任務。

然后,在提取階段,使用ε對應的解碼算法φ提取水印信息

(2)

在高保真度要求的場合下,可以將M′恢復成M。

為了驗證模型的完整性,首先對目標模型使用提取器φ提取加密信息b′, 然后與保留的b進行對比,如果b′=b, 則可認為模型的完整性沒有遭到破壞。

具體流程圖1所示:在待保護的預訓練模型上篩選卷積層,借助模型剪枝理論,篩選filter進行預處理并構建待嵌入水印的參數序列,使用差值擴展可逆水印嵌入加密后的信息,具體的算法在2.2、2.3和2.4小節介紹。

圖1 Fast-MIV算法流程

2.2 構建參數序列

訓練好并部署的模型具有固定的權重參數,這些權值決定了模型的性能,復雜網絡模型存在大量冗余的參數,將這些神經元去除后仍可以表現出與原模型同等的模型表達能力[11]。

本文使用濾波器剪枝,又稱為結構化剪枝,進行filter篩選并構建待嵌入參數序列,篩選傾向于產生具有弱激活的特征映射filter,因此在這些filter進行水印嵌入對模型原始任務造成的影響會盡可能小。

設模型M第i層卷積層的輸入通道數為ni, 應用ni+1個filter,第j個filter的尺寸為Fi,j∈Rni×k×k, 將3D輸入特征圖轉換為3D輸出特征圖Xi+1∈Rni+1×hi+1×wi+1, 每個filter由ni個2D卷積核Ki∈Rk×k組成,具有固定的權值,該層的所有濾波器組成核矩陣(Kernel matrix)Fi∈Rni×ni+1×k×k。

設模型的單層卷積層具有ni個filter,每層卷積層有ni×ni+1×k×k個嵌入位置。本文選定模型待嵌入單層或多層,利用3種方法篩選卷積層中單個或多個filter進行參數序列的構建,并在實驗中進行效果評估。

(1)隨機法(random):隨機選擇filter進行嵌入。

(2)L1范數法:

(3)幾何中值(geometric median,GM)法:

GM是歐氏空間中數據中心的經典魯棒估計量,常被用于點云的曲面重建和骨架提取,He等[13]提出GM進行filter修剪,從而篩選出最可被替代的filter,其中GM被定義為:給定n個點a(1),a(2)…a(n)∈R, 找到一個點x*∈Rd, 使其歐氏距離之和最小化

(3)

對于選定第i層卷積層內所有filter,計算其GM為

(4)

其中,g(x) 為

(5)

2.3 預處理

圖像的像素值一般是0到255的整數,而神經網絡模型的權重參數都是浮點數,對于應用于圖像的可逆水印技術,模型參數不具有圖像像素的相關性。為了構建與圖像更相似的參數矩陣,將上一節構建的參數序列進行重新排列

(6)

所得到的參數序列并不能直接應用于承載水印,因此,對參數序列進行預處理,從Ai的每個元素截取兩位數,假設wi,j∈Ai, 具體的截取位置如下

(7)

式中:從n1開始,表示小數點后的第一個非零數字,對于不同的wi,j,n1的起始位置不同,截取n1n2兩位數字足以嵌入水印信息,容易得出,n1×10+n2∈[0,99]。

2.4 可逆數據隱藏算法

本文使用差值擴展(difference expansion,DE)進行可逆水印嵌入。具體地,設 (x,y) 是序列中相鄰的兩個值。定義其平均值l和差值為h為

(8)

將T比特的待嵌入二值向量b, 應用最低有效位(least significant bit,LSB)嵌入到DE生成的差值h中,新的差值h′為

h′=2×h+b,b∈[0,1]

(9)

嵌入階段,通過l和h′計算得到更改后的兩個數值x′和y′

(10)

使用 (x′,y′) 替換序列中的 (x,y), 可嵌入一位信息,重復這個過程完成水印嵌入,式(8)、式(9)、式(10)組成ε算法。

提取階段,可以僅根據修改后的 (x′,y′) 恢復出原始 (x,y)。 提取過程如下

根據新的差值h′計算新的均值l′為

(11)

由于在除法時使用向下取整,將式(10)帶入式(11)可知,l′=l。 再根據所得h′可恢復出 (x,y) 的值,提取到所有信息后,再組合成水印。

如果模型是完整的,在解碼過程可以完整提取嵌入信息b′。 由于采用的水印是脆弱的,當模型權重參數遭受篡改時,提取的水印信息會與嵌入信息b不同,從而判斷模型遭受完整性破壞程度。

3 實驗結果與分析

3.1 實驗設置

使用MD5和安全散列算法(Secure Hash Algorithm 2,SHA-2)生成水印信息。應用SHA-256安全散列算法可以將任意待嵌入信息,例如產品序列號和模型版權所屬者身份信息等壓縮加密為定長的二值信息。由于其抗碰撞的優良特性,這些哈希加密算法已被廣泛使用在密文領域。

ImageNet數據集由1000個類的彩色圖像組成,被廣泛應用于圖像識別領域。本文采取在ImageNet上的4個預訓練的網絡VGG19[16]、Densenet-121[17]、ResNet-50[18]和Inception-v3[19]作為目標模型。上述模型均為ImageNet大規模視覺識別挑戰賽(imagenet large scale visual recognition challenge,ILSVRC)中的經典模型。為了評估本文所提出的完整驗證算法Fast-MIV的性能,在實驗中隨機選取100個類的一萬張圖片組成測試集進行評估。使用隨機方法作為基線,評估后兩種構建待嵌入參數序列方法的性能。

3.2 評價指標

本文采用峰值信噪比(peak signal to noise ratio,PSNR)評估filter嵌入水印前后對應生成的激活特征圖損失,計算公式如下

(12)

(13)

其中,MSE為均方誤差,PSNR是常用的衡量圖像質量的指標。

由于所使用嵌入水印的脆弱性,一旦攻擊者修改模型,新提取的水印信息會與原嵌入的水印信息有所不同。因此,本文提出一個新的失真度指標ACCdis, 利用原嵌入水印和驗證時提取到的水印差異來評估模型的完整性損失度,計算公式如下

(14)

其中,⊙表示同或,xi,j和yi,j分別表示嵌入和提取的二值水印,n為水印長度。式(14)通過水印差異,反映模型遭受篡改的程度,如果ACCdis=1, 視為模型完整性沒有遭受破壞;否則,認為模型的完整性遭受破壞。

3.3 實驗結果

為了驗證Fast-MIV在不同模型上的性能,在選定的4 個模型VGG19、DenseNet-121、ResNet-50和Inception-v3上進行嵌入對比,選擇模型最后一層卷積核大小為3*3的卷積層,分別使用3種方法篩選filter嵌入由SHA-256加密相同內容信息生成的256位水印信息,結果見表1。

表1 多模型嵌入水印損失比較/%

從表1中可看出,上述模型嵌入水印不會影響模型的原始性能,精度損失在0.1%以內,且可完全提取水印信息同時恢復模型參數以恢復模型原始性能。對于ResNet-50上使用的隨機參數序列篩選方法,水印模型的分類精度甚至提高了0.01%,這是由于神經網絡具有冗余性。

為探究Fast-MIV多層嵌入的性能,在4個目標模型上順序篩選多層卷積層,使用3種剪枝方法分別構建待參數序列,使用同樣的方法進行水印嵌入,結果見表2。

表2 多層嵌入效果比較/%

從表2可看出,將水印嵌入單層或多層卷積層不會顯著影響模型分類精度,并且使用差值擴展法可完全恢復模型參數,Fast-MIV可應用于深度卷積網絡。

為探究Fast-MIV的可嵌入容量,即水印長度對模型精度的影響,將不同長度的水印嵌入到VGG19的最后一層卷積層中,結果見表3。

表3 VGG19不同水印信息容量比較/%

表3可知,隨著水印長度增加,模型的分類性能會有所下降,但影響較小。當水印信息足夠長時,使用GM法和L1范數法構建待嵌入參數序列,相比于隨機方法,可有效降低嵌入信息對原始模型任務的影響,水印容量越大GM法和L1范數法對模型的性能影響相對于隨機法越小。

為了直觀看出模型嵌入水印前后對filter生成激活特征圖的影響,在VGG19模型上篩選低維度卷積層,計算其輸出特征圖差異,并計算PSNR,如圖2所示。

圖2 VGG19上低維度卷積層激活特征圖對比

圖2中,橫軸第一列為原模型對應卷積層輸出特征圖,第二列為嵌入水印后模型的輸出特征圖,第三列為其差異,縱軸表示3種對應的構建方法,圖2(a)為隨機法,圖2(b)為GM法,圖2(c)為L1范數法。平均PSNR在65 db以上。

Song C等[21]采用最低有效位(least significant bit,LSB)將水印信息嵌入參數的空間域最低位面中,Abuadbba A等[22]采用離散小波變換(discrete wavelet transformation,DWT)將模型每層的參數和應用SHA算法加密后的信息隨機嵌入該層的參數頻域中,通過提取頻域水印信息進行對比以達到保護模型完整性的效果,Li Y等[23]采用直方圖位移實現了JPEG圖像的數據隱藏,并利用最優閾值選擇了一個適合于嵌入秘密信息的離散余弦變換(DCT)系數子塊。為了評估Fast-MIV的性能,在VGG19模型上進行對比,其中Fast-MIV選取3種嵌入方法的平均值,在模型的每一層嵌入256 bit水印信息,將Li Y等[23]的圖像水印方法遷移到模型水印中,結果見表4。

表4 VGG19不同水印方法性能對比

從表4可以看出,Fast-MIV對原模型的性能影響更小,這是由于所提出的3種構建參數序列的方法相比DWT[21]和HS[23]更好利用了模型的冗余性,使用的預處理方法降低了對參數的修改程度,使得PSNR更高,HS[23]在JPEG圖像上實現的可逆水印,也未考慮到模型參數篩選問題。相比于LSB[21]和DWT[22],Fast-MIV使用可逆水印,可以恢復模型參數,以達到對模型的完全恢復。

3.4 完整性驗證

微調是攻擊者常用且有效的破壞模型完整性方法,只需要少量的新數據即可對模型進行改動[4]。例如數據中毒攻擊,最常見的做法是使用帶錯誤標簽的中毒數據對模型進行微調,以降低模型的性能。為了在更短的微調批次達到較好的效果,通常的做法是凍結目標網絡的前幾層,只對最后幾層進行微調,因此在本小節實驗中,水印被添加到模型的最后一層。

實驗中,學習率設置為0.001,在微調過程中使用帶動量的隨機梯度下降算法作為優化函數,每個訓練批次的規模設置為64,使用1200張圖片構建中毒數據集對模型微調以進行數據中毒攻擊,其中帶錯誤標簽的數據占比20%,其它沿用原模型的設置。隨著訓練的批次增加,計算失真度ACCdis, 結果如圖3所示。

圖3 多模型數據中毒攻擊對比

圖3可知,即使只微調了幾個批次,水印的失真度也會產生明顯下降,這表明模型遭受的完整性破壞能被檢測出來,Fast-MIV在應對數據中毒攻擊上具有良好的效果。

文獻[6]提出一種基于觸發器的模型完整性驗證方法Fragile[6],構建觸發器測試集,依據測試集精度指標下降程度判斷模型完整是否遭到破壞。Fast-MIV在cifar-10和cifar-100數據集上預訓練的ResNet-50上采用與文獻[6]同樣的中毒數據集進行數據中毒攻擊,其中Fast-MIV嵌入的水印和文獻[6]設定的觸發器的大小保持一致,使用中毒數據集微調模型,記錄微調批次,當批次指標下降為80%以下,視為模型完整性遭到破壞,結果見表5。

表5 ResNet-50完整性檢測結果(批次)

結果表明,相比Fragile[6],Fast-MIV只需更少微調批次即可檢測到模型完整性遭受破壞,具有更高靈敏度。

為進一步驗證Fast-MIV能否支持結構化驗證,即是否能夠檢測模型的結構完整性,對模型進行剪枝攻擊,隨機將某些神經元參數置零,并計算失真度ACCdis, 結果如圖4所示。

圖4 多模型剪枝攻擊效果對比

從圖4可以看出,隨著模型剪枝的強度增加,模型的失真度顯著增加,使用L1范數構建參數序列,具有更高的敏感性,即使是極微小程度的剪枝率(0.05),也能檢測到模型的完整性遭受破壞,Fast-MIV可支持結構性驗證,攻擊者無法隱秘地改動模型結構。

實驗結果表明,Fast-MIV可以支持完整性驗證,且所使用的剪枝方法對比隨機方法具有更好的檢測性能,無論攻擊者微調或刪除參數,本文所提出的方法均可以有效檢測出模型完整性是否遭到破壞。

4 結束語

本文提出一種基于可逆水印和模型剪枝理論的模型完整性驗證算法Fast-MIV,并對比3種不同的模型剪枝方法篩選模型參數,嵌入對模型參數篡改敏感的可逆水印,可用于驗證模型的完整性。本文提出了失真度指標ACCdis來衡量模型遭受篡改的程度,在多種模型上進行了充分實驗。實驗結果表明,所提出的算法Fast-MIV可以檢測出微小的參數改動以應對剪枝或數據中毒攻擊,達到保護模型完整性的效果。本文只在CNN上進行了應用和實驗,下一步將研究如何將這項工作擴展到循環神經網絡用于文本、語音處理的模型。

猜你喜歡
對模型剪枝完整性
人到晚年宜“剪枝”
稠油熱采水泥環完整性研究
基于YOLOv4-Tiny模型剪枝算法
光源對模型貼圖的影響——3種人造光源在三維數字化采集中的應用
莫斷音動聽 且惜意傳情——論音樂作品“完整性欣賞”的意義
剪枝
蒙藥特潤舒都樂對模型小鼠脾臟NK細胞活性的影響
蒙醫開竅補腎針刺法對模型大鼠胸腺、脾臟指數的影響
蒙醫催熟療法對模型大鼠炎癥因子影響的實驗研究
精子DNA完整性損傷的發生機制及診斷治療
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合