本發(fā)明屬于人工智能安全,具體公開了一種基于對抗樣本的黑盒模型測試方法。
背景技術(shù):
1、對抗樣本是指通過對輸入數(shù)據(jù)進(jìn)行微小(人眼難以進(jìn)行分辨)但有意義的對抗性擾動,能夠欺騙模型并導(dǎo)致模型高置信度給出一個錯誤的輸出。
2、對抗樣本有非定向和定向之分。非定向?qū)箻颖静会槍μ囟ǖ哪繕?biāo)類別,而是試圖使模型產(chǎn)生任何類型的錯誤預(yù)測。定向?qū)箻颖居幸粋€特定的目標(biāo)類別,希望模型將其誤分類為該目標(biāo)類別?,F(xiàn)有應(yīng)用的模型可以分為白盒模型和黑盒模型。白盒模型,即使用者有對目標(biāo)模型的完全訪問權(quán)限,包括其結(jié)構(gòu)、參數(shù)和訓(xùn)練數(shù)據(jù),可以使用這些信息來生成針對目標(biāo)模型的有效對抗樣本。黑盒模型,即使用者只能通過有限的交互來獲取目標(biāo)模型的信息,而無法直接訪問其內(nèi)部結(jié)構(gòu)或參數(shù)?,F(xiàn)實應(yīng)用中的智能模型大多為黑盒模型,對黑盒模型進(jìn)行對抗性測試難度更大。
3、現(xiàn)有的黑盒模型安全性測試方法主要分為通過查詢結(jié)果直接修改擾動或者使用替代模型生成對抗樣本兩類。前者可進(jìn)一步分為基于梯度估計(opt和hsja)、基于優(yōu)化(bo)和基于幾何學(xué)啟發(fā)(geoda和surfree),但此類方法往往都需要大量的查詢次數(shù)。后者基于對抗樣本的遷移性,在替代模型上生成對抗樣本,但并不總能在目標(biāo)黑盒模型上得到預(yù)期結(jié)果,無論是單個模型還是模型集成(綜合多個模型的梯度信息,如dim和ti-dim),都難以滿足現(xiàn)實需求。
4、本發(fā)明主要針對使用替代模型生成對抗樣本時存在的遷移性不高,對抗樣本容易失效,使用生成的對抗樣本進(jìn)行黑盒場景模型安全性測試時效果不佳的問題。
技術(shù)實現(xiàn)思路
1、本發(fā)明目的在于提供一種針對黑盒模型進(jìn)行安全性測試的方法,以解決因模型結(jié)構(gòu)、參數(shù)差異導(dǎo)致的對抗樣本遷移性較低的問題,提升在黑盒場景下的模型測試效果的技術(shù)問題。本發(fā)明包括如下步驟:
2、步驟1、確定待測試的目標(biāo)黑盒模型,之后使用目標(biāo)黑盒模型的訓(xùn)練集訓(xùn)練替代模型s,統(tǒng)計替代模型s對于目標(biāo)標(biāo)簽tl的預(yù)測準(zhǔn)確率;
3、步驟2、再次用目標(biāo)黑盒模型的訓(xùn)練集對替代模型s進(jìn)行訓(xùn)練,使得替代模型s遺忘定向攻擊的目標(biāo)標(biāo)簽tl的特征,得到遺忘模型s',訓(xùn)練過程中使用的目標(biāo)函數(shù)為:
4、
5、其中,θs′為遺忘模型s'的參數(shù),xi為第i個樣本,f(xi,θs′)為在遺忘模型s′上對樣本xi的預(yù)測分布,yi為第i個樣本的真實標(biāo)簽;
6、步驟3、利用對抗樣本生成方法在遺忘后的遺忘模型s'上生成能被成功預(yù)測為目標(biāo)標(biāo)簽tl的定向?qū)箻颖緓adv,其中,使用的目標(biāo)函數(shù)為:
7、
8、其中,為添加擾動之后的對抗樣本,為在遺忘模型s′上對樣本的預(yù)測分布;
9、步驟4、將生成的對抗樣本用于目標(biāo)黑盒模型上進(jìn)行測試,計算目標(biāo)黑盒模型抵御對抗樣本的成功率。
10、進(jìn)一步的,步驟1中還包括通過圖像變換或在即將收斂時調(diào)小學(xué)習(xí)率來提高預(yù)測準(zhǔn)確率。
11、進(jìn)一步的,步驟1中的所述圖像變換包括裁剪、添加噪聲或色彩變換。
12、進(jìn)一步的,步驟2中遺忘目標(biāo)標(biāo)簽的特征,實現(xiàn)方式為:
13、步驟2.1、利用步驟1中訓(xùn)練過程中使用的訓(xùn)練集和圖像變換生成數(shù)據(jù)加載器;
14、步驟2.2、計算損失函數(shù)lnew,損失函數(shù)lnew用于在遺忘模型s'的迭代訓(xùn)練過程中更新遺忘模型s'的參數(shù),當(dāng)訓(xùn)練次數(shù)達(dá)到指定的閾值n時,或者損失函數(shù)lnew在相鄰兩次迭代訓(xùn)練過程中的差值小于閾值m時,則停止訓(xùn)練,得到遺忘模型s',損失函數(shù)lnew為:
15、
16、其中,θt是在第t次訓(xùn)練后遺忘模型s'的參數(shù),f(xi,θt)為在訓(xùn)練過程中對樣本xi的預(yù)測分布,l(yi,f(xi,θt))為訓(xùn)練過程中遺忘模型s'對樣本xi的預(yù)測損失;
17、步驟2.3、訓(xùn)練過程中同時計算在測試集上的目標(biāo)標(biāo)簽的準(zhǔn)確率和其余標(biāo)簽的準(zhǔn)確率
18、
19、其中,為真實標(biāo)簽yi不是目標(biāo)標(biāo)簽tl且在遺忘模型s'上預(yù)測正確的樣本總數(shù),為真實標(biāo)簽yi不是目標(biāo)標(biāo)簽tl的樣本總數(shù),為真實標(biāo)簽yi是目標(biāo)標(biāo)簽tl且在遺忘模型s'上預(yù)測正確的樣本總數(shù),為真實標(biāo)簽yi是目標(biāo)標(biāo)簽tl的樣本總數(shù);
20、步驟2.4、根據(jù)實際情況選擇較小的學(xué)習(xí)率和較為穩(wěn)定的優(yōu)化器,開始訓(xùn)練,最終得到遺忘后的遺忘模型s',遺忘模型s'的參數(shù)更新過程為:
21、
22、其中,θt+1是在第t+1次訓(xùn)練后的遺忘模型s'的參數(shù),α是學(xué)習(xí)率,表示關(guān)于參數(shù)θ的梯度運(yùn)算符,optimizer是優(yōu)化器;
23、步驟2.5、在訓(xùn)練過程中觀察遺忘模型s'對其他標(biāo)簽的預(yù)測結(jié)果,確保預(yù)測準(zhǔn)確率下降不超過數(shù)值n1,即:
24、
25、步驟2.6、在訓(xùn)練過程中觀察遺忘模型s'對目標(biāo)標(biāo)簽tl的預(yù)測結(jié)果,當(dāng)預(yù)測準(zhǔn)確率達(dá)到數(shù)值n2時即停止訓(xùn)練,即:
26、
27、進(jìn)一步的,步驟3具體包括:
28、步驟3.1、利用步驟2中訓(xùn)練得到的遺忘模型s',使用對抗樣本生成方法,進(jìn)行多輪迭代,最終迭代生成能被遺忘模型s'成功預(yù)測為目標(biāo)標(biāo)簽tl的對抗樣本xadv,對抗樣本迭代過程為:
29、
30、其中,是在第t次迭代生成中的對抗樣本,clipx,∈是裁剪函數(shù),用于將對抗樣本限制在x±∈的范圍內(nèi),∈是一個手動設(shè)定的參數(shù),用于限定對抗樣本的擾動幅度,sign是返回梯度方向的函數(shù),l為損失函數(shù),用于計算目標(biāo)標(biāo)簽tl與輸出值之間的差值,表示計算梯度;
31、步驟3.2、若沒有成功生成或生成的定向?qū)箻颖緓adv較少,則嘗試更多輪迭代或者重新訓(xùn)練遺忘模型s',選擇具有對目標(biāo)標(biāo)簽tl更高預(yù)測準(zhǔn)確率的遺忘模型,直到生成數(shù)量較多的對抗樣本xadv。
32、進(jìn)一步的,步驟4具體包括:將生成的對抗樣本xadv用于目標(biāo)黑盒模型上進(jìn)行測試,若目標(biāo)黑盒模型將對抗樣本xadv預(yù)測為目標(biāo)標(biāo)簽tl則為失敗,否則為成功,最后統(tǒng)計目標(biāo)黑盒模型抵御對抗樣本xadv的成功率success?rate為:
33、
34、其中,為生成的用于測試的第i個對抗樣本,θtb為目標(biāo)黑盒模型的參數(shù),用于計算將對抗樣本輸入到目標(biāo)黑盒模型后的輸出結(jié)果,為取所有輸出結(jié)果中預(yù)測概率最高的標(biāo)簽,∑i1為生成的用于測試的對抗樣本總數(shù)。
35、與現(xiàn)有技術(shù)相比,本發(fā)明的積極效果為:
36、本發(fā)明通過提高生成的對抗樣本的遷移性,解決因模型結(jié)構(gòu)、參數(shù)差異導(dǎo)致的對抗樣本失效問題,提升在黑盒場景下的模型測試效果。本發(fā)明能顯著提高對抗樣本的遷移性,進(jìn)而提升黑盒模型測試效果,并且本發(fā)明從改變替代模型的角度出發(fā)生成定向?qū)箻颖?,能和現(xiàn)有其他對抗樣本生成方法進(jìn)行有機(jī)結(jié)合。
1.一種基于對抗樣本的黑盒模型測試方法,其特征在于,包括如下步驟:
2.根據(jù)權(quán)利要求1所述的一種基于對抗樣本的黑盒模型測試方法,其特征在于,步驟1中還包括通過圖像變換或在即將收斂時調(diào)小學(xué)習(xí)率來提高預(yù)測準(zhǔn)確率。
3.根據(jù)權(quán)利要求2所述的一種基于對抗樣本的黑盒模型測試方法,其特征在于,步驟1中的所述圖像變換包括裁剪、添加噪聲或色彩變換。
4.根據(jù)權(quán)利要求1至3之一所述的一種基于對抗樣本的黑盒模型測試方法,其特征在于,步驟2中遺忘目標(biāo)標(biāo)簽的特征,實現(xiàn)方式為:
5.根據(jù)權(quán)利要求4所述的一種基于對抗樣本的黑盒模型測試方法,其特征在于,步驟3具體包括:
6.根據(jù)權(quán)利要求5所述的一種基于對抗樣本的黑盒模型測試方法,其特征在于,步驟4具體包括:將生成的對抗樣本xadv用于目標(biāo)黑盒模型上進(jìn)行測試,若目標(biāo)黑盒模型將對抗樣本xadv預(yù)測為目標(biāo)標(biāo)簽tl則為失敗,否則為成功,最后統(tǒng)計目標(biāo)黑盒模型抵御對抗樣本xadv的成功率success?rate為: