人工智能安全 課件 第10章 模型竊取與防護(hù)_第1頁
人工智能安全 課件 第10章 模型竊取與防護(hù)_第2頁
人工智能安全 課件 第10章 模型竊取與防護(hù)_第3頁
人工智能安全 課件 第10章 模型竊取與防護(hù)_第4頁
人工智能安全 課件 第10章 模型竊取與防護(hù)_第5頁
已閱讀5頁,還剩58頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

李劍博士,教授,博士生導(dǎo)師網(wǎng)絡(luò)空間安全學(xué)院lijianeptember13,2025第十章模型竊取與防護(hù)本章介紹

在人工智能技術(shù)深度融入社會(huì)的今天,機(jī)器學(xué)習(xí)模型作為核心資產(chǎn),其安全性正面臨前所未有的挑戰(zhàn)。模型竊取攻擊作為人工智能安全領(lǐng)域的新興威脅,通過非法手段獲取、復(fù)制或逆向工程目標(biāo)模型,不僅可能導(dǎo)致知識(shí)產(chǎn)權(quán)流失,更可能被用于構(gòu)建對(duì)抗性AI系統(tǒng)。本章節(jié)將以攻防對(duì)抗的視角,系統(tǒng)性解析模型竊取的技術(shù)本質(zhì)與實(shí)踐路徑。知識(shí)要點(diǎn):1)了解模型竊取的背景與動(dòng)機(jī)2)熟悉模型竊取的分類與攻擊方法3)掌握模型竊取的具體實(shí)施流程4)了解模型竊取的實(shí)踐與案例分析5)掌握模型竊取的防御策略內(nèi)容提綱10.3模型功能竊取算法10.2模型屬性竊取算法10.1模型竊取概述10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊10.5模型竊取的防護(hù)小結(jié)10.1模型竊取概述模型竊取攻擊是機(jī)器學(xué)習(xí)安全領(lǐng)域中的一種重要威脅,旨在通過黑盒訪問目標(biāo)模型,竊取其關(guān)鍵信息或功能。根據(jù)攻擊目標(biāo)的不同,模型竊取攻擊可以分為模型屬性竊取和模型功能竊取兩類。這兩類攻擊在目標(biāo)、方法和影響上存在顯著差異。10.1模型竊取概述1.模型屬性竊取模型屬性竊?。∕odelAttributeExtraction)是指攻擊者通過查詢目標(biāo)模型,試圖推斷出模型的內(nèi)部屬性或元信息,而非直接復(fù)制其功能。這些屬性可能包括模型架構(gòu)、超參數(shù)、訓(xùn)練數(shù)據(jù)的分布或特征重要性等。攻擊者通常通過分析目標(biāo)模型對(duì)特定輸入的輸出響應(yīng),結(jié)合統(tǒng)計(jì)方法或逆向工程技術(shù),推斷出模型的內(nèi)部特性。10.1模型竊取概述2.模型功能竊取模型功能竊?。∕odelFunctionalityExtraction)是指攻擊者通過查詢目標(biāo)模型,試圖訓(xùn)練一個(gè)功能上等效的“克隆模型”,以復(fù)制目標(biāo)模型的預(yù)測行為。與模型屬性竊取不同,模型功能竊取的目標(biāo)是直接模仿目標(biāo)模型的輸入輸出映射關(guān)系,而不關(guān)心模型的內(nèi)部結(jié)構(gòu)或?qū)傩浴?nèi)容提綱10.3模型功能竊取算法10.2模型屬性竊取算法10.1模型竊取概述10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊10.5模型竊取的防護(hù)小結(jié)10.2模型屬性竊取算法

一.基于元學(xué)習(xí)的模型竊取攻擊基于元學(xué)習(xí)的模型竊取方法是一種利用元學(xué)習(xí)(Meta-Learning)技術(shù)來實(shí)現(xiàn)對(duì)目標(biāo)模型的高效克隆和屬性提取的攻擊手段。這種方法的核心在于通過元學(xué)習(xí)框架,使攻擊者能夠在有限的查詢次數(shù)和少量輔助數(shù)據(jù)的情況下,快速重建目標(biāo)模型的行為或提取其內(nèi)部屬性。

構(gòu)建訓(xùn)練數(shù)據(jù)集:在構(gòu)建數(shù)據(jù)集之前,攻擊者需要明確目標(biāo)模型的任務(wù)類型(如分類、回歸或檢測)以及輸入輸出的格式。

由于無法直接訪問目標(biāo)模型的訓(xùn)練數(shù)據(jù),攻擊者需要收集與目標(biāo)數(shù)據(jù)分布相似的輔助數(shù)據(jù)。這些數(shù)據(jù)可以來自以下幾個(gè)來源:1.公開數(shù)據(jù)集:許多領(lǐng)域都有公開可用的數(shù)據(jù)集,這些數(shù)據(jù)集可能與目標(biāo)模型的數(shù)據(jù)分布相似。例如,在圖像分類任務(wù)中,攻擊者可以使用ImageNet或CIFAR-10等數(shù)據(jù)集。在網(wǎng)絡(luò)安全領(lǐng)域,可以使用CICIDS2017或MCFP等數(shù)據(jù)集。10.2模型屬性竊取算法

2.合成數(shù)據(jù):如果公開數(shù)據(jù)集不可用或與目標(biāo)數(shù)據(jù)差異較大,攻擊者可以生成合成數(shù)據(jù)。合成數(shù)據(jù)可以通過數(shù)據(jù)增強(qiáng)技術(shù)(如旋轉(zhuǎn)、縮放、噪聲注入)或生成對(duì)抗網(wǎng)絡(luò)(GAN)生成。3.目標(biāo)模型的少量輸出:攻擊者可以通過向目標(biāo)模型發(fā)送少量查詢,收集其輸出概率分布。這些輸出可以用于推斷目標(biāo)數(shù)據(jù)的分布。10.2模型屬性竊取算法

訓(xùn)練元模型:基于元學(xué)習(xí)框架構(gòu)建的生成對(duì)抗網(wǎng)絡(luò)是該模型的中心組件。架構(gòu)基于WassersteinGAN,因?yàn)樗哂蟹€(wěn)定性,可以避免模式崩潰問題。它包括:1.StealerC,用于通過減少相同輸入下與受害者模型的輸出差異來訓(xùn)練克隆模型2.提取器E,用于提取每個(gè)類的原型表示,3.生成器G使用E提取的原型代表作為輸入來生成與該原型類匹配的樣本,同時(shí)最大化受害者和克隆模型輸出之間的差異。

4.判別器D,用于區(qū)分G生成的虛假數(shù)據(jù)。10.2模型屬性竊取算法

如圖所示,展示了元模型的訓(xùn)練流程。10.2模型屬性竊取算法

第1步:初始化元學(xué)習(xí)器參數(shù)。在開始元訓(xùn)練之前,需要初始化元學(xué)習(xí)器的參數(shù)。這些參數(shù)包括克隆模型、特征提取器、生成器和判別器的初始參數(shù)。這些參數(shù)將在后續(xù)的訓(xùn)練過程中不斷優(yōu)化。

第2步:進(jìn)行元訓(xùn)練(Meta-Training)。元訓(xùn)練是元學(xué)習(xí)的核心階段,分為內(nèi)循環(huán)(InnerLoop)和外循環(huán)(OuterLoop)。內(nèi)循環(huán)的目標(biāo)是針對(duì)每個(gè)任務(wù)Ti?,訓(xùn)練任務(wù)特定的模型參數(shù)。外循環(huán)的目標(biāo)是更新元學(xué)習(xí)器的全局參數(shù)。10.2模型屬性竊取算法

第3步:利用定義模型進(jìn)行元測試(Meta-Testing)。元測試階段是將優(yōu)化后的元學(xué)習(xí)器應(yīng)用于實(shí)際目標(biāo)模型。攻擊者使用少量輔助樣本初始化克隆模型,并通過生成器生成合成樣本。這些合成樣本用于訓(xùn)練克隆模型,使其輸出盡可能接近目標(biāo)模型的輸出。10.2模型屬性竊取算法

10.2模型屬性竊取算法

二.線性分類器模型竊取攻擊在機(jī)器學(xué)習(xí)領(lǐng)域,線性分類器是一類重要且常用的模型。線性分類器模型竊取攻擊通過查詢目標(biāo)模型,獲取足夠的輸入輸出對(duì),從而訓(xùn)練出性能相似的替代模型。線性分類器是一種簡單而高效的分類模型,其基本形式如下:f(x)=wx+b。其中,w是權(quán)重向量,x是輸入向量,b是偏置。決策規(guī)則基于函數(shù)f(x)的符號(hào):若f(x)>0,則輸出為正類,若f(x)<0,則輸出為負(fù)類。10.2模型屬性竊取算法

線性分類器模型竊取攻擊方法主要包括以下幾個(gè)步驟:第一步:攻擊者需要生成一組查詢輸入x,并通過目標(biāo)模型獲取對(duì)應(yīng)的輸出y。生成查詢的策略可以基于隨機(jī)查詢或基于梯度的查詢。第二步:在獲取足夠的查詢輸入輸出對(duì)后,攻擊者使用這些數(shù)據(jù)訓(xùn)練一個(gè)替代線性分類器。第三步:攻擊者通過比較替代模型和目標(biāo)模型在測試集上的性能,評(píng)估攻擊的效果。理想情況下,替代模型的性能應(yīng)接近目標(biāo)模型。10.2模型屬性竊取算法

線性分類器模型竊取攻擊主要包括以下幾個(gè)方面:1.目標(biāo)模型:攻擊者的目標(biāo)是一個(gè)未知的線性分類器,該分類器通過一組權(quán)重和偏置將輸入數(shù)據(jù)映射到輸出類別。2.攻擊者權(quán)限:攻擊者只能通過查詢接口與目標(biāo)模型進(jìn)行交互,而無法直接訪問模型的權(quán)重和結(jié)構(gòu)信息。3.攻擊目標(biāo):通過盡可能少的查詢次數(shù),獲取足夠的信息以訓(xùn)練出一個(gè)與目標(biāo)模型性能相近的替代模型。10.2模型屬性竊取算法

三.基于生成對(duì)抗網(wǎng)絡(luò)的模型竊取攻擊基于生成對(duì)抗網(wǎng)絡(luò)的模型竊取攻擊作為一種黑盒模型竊取方法,允許攻擊者在無法獲取目標(biāo)模型真實(shí)訓(xùn)練數(shù)據(jù)的情況下,通過構(gòu)造合成樣本及并利用目標(biāo)模型給出標(biāo)簽信息,訓(xùn)練一個(gè)與目標(biāo)模型行為相似的替代模型。10.2模型屬性竊取算法

生成對(duì)抗網(wǎng)絡(luò)(GenerativeAdversarialNetworks,GAN)是一類人工神經(jīng)網(wǎng)絡(luò),由J.Goodfellow等人于2014年提出。GAN框架包含兩個(gè)主要的網(wǎng)絡(luò)組件,分別為生成器(Generator)和判別器(Discriminator),生成對(duì)抗網(wǎng)絡(luò)框架如圖所示。10.2模型屬性竊取算法

基于生成對(duì)抗網(wǎng)絡(luò)的模型竊取攻擊的攻擊過程如圖10-3所示,主要包括兩個(gè)需要訓(xùn)練的網(wǎng)絡(luò)組件,替代模型??和生成器??。模型攻擊過程不僅需要不斷使用請(qǐng)求樣本和目標(biāo)模型返回的標(biāo)簽信息來訓(xùn)練替代模型??,還需要不斷更新生成器??的參數(shù)來促使??生成難以被替代模型正確識(shí)別且分布廣泛的樣本。10.2模型屬性竊取算法

基于生成對(duì)抗網(wǎng)絡(luò)的模型竊取攻擊過程主要可以描述為以下幾個(gè)步驟:第1步:生成器G利用輸入的噪聲z和標(biāo)簽信息L生成的請(qǐng)求樣本X=G(z,L);第2步:獲取目標(biāo)模型T對(duì)樣本X的預(yù)測標(biāo)簽T(X);第3步:訓(xùn)練替代模型D,使得D對(duì)樣本X的輸出D(X)盡可能與T(X)相同;第4步:更新生成器G的參數(shù),使得D對(duì)的輸出D(G(z,L))盡可能與T(G(z,L))不同,同時(shí)最大化標(biāo)簽L和生成的請(qǐng)求樣本X=G(z,L)之間的互信息;第5步:重復(fù)步驟1-4,直到替代模型D的相關(guān)指標(biāo)達(dá)到攻擊的要求。10.2模型屬性竊取算法

替代模型D的主要任務(wù)是學(xué)習(xí)目標(biāo)模型的行為模式,對(duì)給定的圖像進(jìn)行預(yù)測。最好的情況是替代模型能夠具有與目標(biāo)模型一致的網(wǎng)絡(luò)結(jié)構(gòu),這樣當(dāng)模型竊取成功時(shí),利用針對(duì)替代模型生成的對(duì)抗樣本可以更大程度地對(duì)目標(biāo)模型造成威脅,對(duì)目標(biāo)實(shí)施進(jìn)一步的攻擊。如圖所示,展示了替代模型的結(jié)構(gòu)。10.2模型屬性竊取算法

生成器G負(fù)責(zé)利用噪聲和標(biāo)簽信息來生成合成樣本,將一個(gè)一維向量映射為一張有效的圖像樣本。為達(dá)到此目的,生成器被設(shè)計(jì)成以下4個(gè)模塊:線性模塊,轉(zhuǎn)置卷積模塊,卷積模塊和有效化模塊。生成器網(wǎng)絡(luò)結(jié)構(gòu)如圖10-5所示。10.2模型屬性竊取算法

神經(jīng)網(wǎng)絡(luò)Q的作用主要是為了實(shí)現(xiàn)一個(gè)后驗(yàn)分布Q(L|Q(z,L))來擬合p(L,|G(z,L))?;谶@個(gè)目的,我們把Q參數(shù)化為一個(gè)神經(jīng)網(wǎng)絡(luò),使用Q(z,L)作為輸入。在具體實(shí)現(xiàn)中,需要注意到在替代模型D已經(jīng)實(shí)現(xiàn)了對(duì)輸入X=G(z,L)的特征提取。最后將Q的連接到替代模型D的尾部,并使用三層全連接的神經(jīng)網(wǎng)絡(luò)來實(shí)現(xiàn),以此提升效率。如圖所示,展示了神經(jīng)網(wǎng)絡(luò)Q的整體結(jié)構(gòu)。10.2模型屬性竊取算法

四.決策邊界竊取攻擊

決策邊界攻擊是一種基于決策的模型竊取攻擊方法,其目標(biāo)是通過查詢目標(biāo)模型的輸出標(biāo)簽,推斷出模型的決策邊界,從而重建模型的內(nèi)部邏輯。這種方法特別適用于黑盒攻擊場景,攻擊者無法直接訪問模型的內(nèi)部結(jié)構(gòu)或訓(xùn)練數(shù)據(jù),只能通過輸入輸出對(duì)來推斷模型的行為。10.2模型屬性竊取算法

決策邊界攻擊通常包括以下步驟:第1步:初始化攻擊點(diǎn)。攻擊者選擇一個(gè)初始輸入點(diǎn),該點(diǎn)可以是隨機(jī)生成的,也可以是目標(biāo)類別的一個(gè)已知樣本。對(duì)于非目標(biāo)攻擊(untargetedattack),攻擊點(diǎn)通常選擇在目標(biāo)類別的內(nèi)部;對(duì)于目標(biāo)攻擊(targetedattack),攻擊點(diǎn)可能是一個(gè)被錯(cuò)誤分類的樣本。第2步:逼近決策邊界。攻擊者通過逐步調(diào)整輸入點(diǎn),使其逐漸靠近決策邊界。這可以通過以下方法實(shí)現(xiàn):10.2模型屬性竊取算法

第3步:二分搜索(BinarySearch)。通過二分搜索逐步逼近決策邊界。第4步:梯度估計(jì)。利用目標(biāo)模型的輸出標(biāo)簽估計(jì)梯度方向,從而更高效地逼近決策邊界。第5步:生成對(duì)抗樣本。一旦找到?jīng)Q策邊界,攻擊者可以生成對(duì)抗樣本,這些樣本在決策邊界附近,能夠被目標(biāo)模型錯(cuò)誤分類。這些對(duì)抗樣本可以用于進(jìn)一步分析目標(biāo)模型的結(jié)構(gòu)或進(jìn)行后續(xù)攻擊。10.2模型屬性竊取算法

第6步:優(yōu)化攻擊效率。為了減少查詢次數(shù),攻擊者可以采用批量查詢策略(BatchQueries),通過批量查詢減少單次查詢的開銷。也可以通過幾何級(jí)數(shù)調(diào)整步長優(yōu)化攻擊效率,這一在每次迭代中,都能夠根據(jù)梯度方向調(diào)整步長,直到找到有效的對(duì)抗樣本。內(nèi)容提綱10.3模型功能竊取算法10.2模型屬性竊取算法10.1模型竊取概述10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊10.5模型竊取的防護(hù)小結(jié)10.3模型功能竊取算法

模型功能竊取算法

不同于模型屬性竊取,模型功能竊取主要通過向黑盒模型發(fā)起查詢并獲取相應(yīng)結(jié)果,進(jìn)而構(gòu)建一個(gè)與目標(biāo)模型具有相同行為模式的替代模型來實(shí)現(xiàn)攻擊目標(biāo)。本小節(jié)所討論的模型竊取攻擊主要指竊取模型功能的攻擊。黑盒模型竊取的攻擊過程如圖所示?;谘趴杀染仃嚨哪P透`取

基于雅可比矩陣的模型竊取方法核心在于利用雅可比矩陣來指導(dǎo)合成數(shù)據(jù)的生成,從而訓(xùn)練出一個(gè)能夠逼近目標(biāo)模型決策邊界的替代模型。通過這種方式,攻擊者可以生成對(duì)抗樣本,這些樣本不僅能夠誤導(dǎo)替代模型,還能夠以較高的概率誤導(dǎo)目標(biāo)模型。10.3模型功能竊取算法

10.3模型功能竊取算法

10.3模型功能竊取算法

二.基于深度學(xué)習(xí)的模型竊取

基于深度學(xué)習(xí)的探索性機(jī)器學(xué)習(xí)攻擊,通過以黑盒形式輪詢?nèi)我夥诸惼?,并使用返回的?biāo)簽構(gòu)建功能等效的機(jī)器來推斷任意分類器的功能。通常,構(gòu)建分類器既昂貴又耗時(shí),因?yàn)檫@需要收集訓(xùn)練數(shù)據(jù)、選擇合適的機(jī)器學(xué)習(xí)算法以及優(yōu)化底層超參數(shù)。10.3模型功能竊取算法

該方法的核心是通過以下三個(gè)步驟實(shí)現(xiàn)對(duì)目標(biāo)分類器的竊?。旱?步:查詢目標(biāo)分類器。攻擊者向目標(biāo)分類器發(fā)送輸入數(shù)據(jù),并獲取分類器返回的標(biāo)簽。第2步:收集數(shù)據(jù)。攻擊者收集這些輸入數(shù)據(jù)及其對(duì)應(yīng)的標(biāo)簽,作為訓(xùn)練數(shù)據(jù)。第3步:訓(xùn)練深度學(xué)習(xí)分類器。使用收集到的數(shù)據(jù)訓(xùn)練一個(gè)深度學(xué)習(xí)模型,優(yōu)化其超參數(shù),使其能夠模擬目標(biāo)分類器的行為。10.3模型功能竊取算法

三.基于強(qiáng)化學(xué)習(xí)的模型竊取

基于強(qiáng)化學(xué)習(xí)的模型竊取是一種針對(duì)黑盒機(jī)器學(xué)習(xí)模型的攻擊方法。其核心思想是利用強(qiáng)化學(xué)習(xí)(ReinforcementLearning,RL)框架,通過智能體(Agent)與環(huán)境(目標(biāo)模型)的交互,逐步學(xué)習(xí)最優(yōu)的攻擊策略,從而實(shí)現(xiàn)對(duì)目標(biāo)模型的竊取或欺騙。這種方法特別適用于黑盒攻擊場景,即攻擊者無法直接訪問目標(biāo)模型的內(nèi)部結(jié)構(gòu)或訓(xùn)練數(shù)據(jù),只能通過輸入輸出對(duì)來推斷模型的行為。10.3模型功能竊取算法

基于主動(dòng)學(xué)習(xí)的模型功能竊取

基于主動(dòng)學(xué)習(xí)的模型竊取是一種針對(duì)黑盒機(jī)器學(xué)習(xí)模型的攻擊方法,旨在通過有限的查詢次數(shù)高效地重建目標(biāo)模型的功能。主動(dòng)學(xué)習(xí)的核心思想是通過智能地選擇最具有信息價(jià)值的樣本進(jìn)行查詢,從而減少所需的標(biāo)注數(shù)據(jù)量并提高模型訓(xùn)練效率。在模型竊取場景中,攻擊者利用主動(dòng)學(xué)習(xí)框架,從目標(biāo)模型中獲取少量但高價(jià)值的輸入輸出對(duì),進(jìn)而訓(xùn)練一個(gè)功能上等效的“克隆模型”(CloneModel)。10.3模型功能竊取算法

基于主動(dòng)學(xué)習(xí)的模型竊取方法主要依賴于以下幾個(gè)關(guān)鍵原理:1.樣本選擇策略主動(dòng)學(xué)習(xí)通過選擇具有高不確定性的樣本進(jìn)行查詢,這些樣本通常位于模型決策邊界附近,能夠提供最多的“信息量”。例如,攻擊者可以通過計(jì)算樣本的置信度邊際(Margin)、最大置信度(MaxConfidence)或置信度向量的熵(Entropy)來評(píng)估樣本的不確定性。選擇高不確定性的樣本進(jìn)行查詢,可以更有效地模擬目標(biāo)模型的行為。10.3模型功能竊取算法

2.合成數(shù)據(jù)生成為了進(jìn)一步提高攻擊效率,攻擊者可以生成合成數(shù)據(jù)來擴(kuò)充樣本池。這些合成數(shù)據(jù)需要滿足“真實(shí)性”(Authenticity)和“查詢價(jià)值”(QueryValue)兩個(gè)原則。真實(shí)性要求合成樣本與真實(shí)數(shù)據(jù)在分布上盡可能接近,以避免被目標(biāo)模型檢測到異常;查詢價(jià)值則要求樣本能夠提供足夠的信息來優(yōu)化克隆模型。10.3模型功能竊取算法

3.迭代優(yōu)化

基于主動(dòng)學(xué)習(xí)的模型竊取是一個(gè)迭代過程。攻擊者從少量真實(shí)數(shù)據(jù)開始,逐步生成新的合成樣本,查詢目標(biāo)模型獲取標(biāo)簽,并將這些樣本及其標(biāo)簽加入樣本池,用于訓(xùn)練克隆模型。通過不斷迭代,克隆模型逐漸逼近目標(biāo)模型的行為。10.3模型功能竊取算法

4.克隆模型的訓(xùn)練

克隆模型的目標(biāo)是盡可能準(zhǔn)確地模仿目標(biāo)模型的預(yù)測行為,包括正確和錯(cuò)誤的決策。攻擊者利用從目標(biāo)模型獲取的硬標(biāo)簽(HardLabels)來訓(xùn)練克隆模型,從而在有限的查詢次數(shù)下實(shí)現(xiàn)高效的功能竊取。10.3模型功能竊取算法

內(nèi)容提綱10.3模型功能竊取算法10.2模型屬性竊取算法10.1模型竊取概述10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊10.5模型竊取的防護(hù)小結(jié)

實(shí)踐目的:

本實(shí)踐旨在通過模擬模型竊取攻擊,幫助學(xué)生理解機(jī)器學(xué)習(xí)模型的安全性問題,并掌握相關(guān)的攻擊與防御技術(shù)。通過實(shí)踐,學(xué)生將學(xué)習(xí)如何利用有限的查詢信息重建目標(biāo)模型,并分析模型竊取的可行性與影響。同時(shí),實(shí)踐還將引導(dǎo)學(xué)生思考如何設(shè)計(jì)更魯棒的模型以抵御此類攻擊,以及如何在技術(shù)發(fā)展中平衡創(chuàng)新與安全。10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊實(shí)踐環(huán)境:Python版本:3.9或者更高版本Pytorch:1.11.0所需安裝庫:timm0.6.0、matplotlib3.5.0、tqdm4.60.0。數(shù)據(jù)集:CIFAR10、MNIST運(yùn)行平臺(tái):PyCharmCommunityEdition2021.3.3在命令行或終端中安裝實(shí)踐環(huán)境并下載相關(guān)包:torch2.4.1、timm0.6.0、matplotlib3.5.0、tqdm4.60.0。10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊實(shí)踐步驟:該案例執(zhí)行的黑盒攻擊一般步驟如圖所示:10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊第1步:數(shù)據(jù)準(zhǔn)備與模型初始化。代碼首先導(dǎo)入了必要的庫,包括PyTorch、Timm(用于加載預(yù)訓(xùn)練模型)、數(shù)據(jù)集加載工具(MNIST和CIFAR-10)以及數(shù)據(jù)預(yù)處理工具。第2步:訓(xùn)練函數(shù)。training_knockoff函數(shù)用于訓(xùn)練knockoff模型。它接受victim模型、knockoff模型、查詢次數(shù)num_queries和數(shù)據(jù)加載器data_loader作為輸入。10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊第3步:定義測試函數(shù)。testing_knockoff函數(shù)用于評(píng)估knockoff模型的性能。它接受victim模型、knockoff模型和數(shù)據(jù)加載器作為輸入。第4步:模型訓(xùn)練與保存。代碼通過循環(huán)對(duì)不同查詢次數(shù)num_query進(jìn)行實(shí)踐。第5步:模型測試與結(jié)果可視化。代碼通過循環(huán)加載保存的knockoff模型權(quán)重,并分別在CIFAR-10測試集、合并的MNIST和CIFAR-10測試集以及MNIST測試集上進(jìn)行測試。10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊

實(shí)踐核心代碼

首先我們設(shè)置隨機(jī)種子,并定義查詢次數(shù)為10k,20k,30k,40k,50k。設(shè)置隨機(jī)種子用于確保實(shí)踐結(jié)果的可重復(fù)性。利用不同的查詢次數(shù)模擬不同預(yù)算下的模型竊取效果。10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊

之后使用timm分別創(chuàng)建一個(gè)ResNet-18預(yù)訓(xùn)練模型和未預(yù)訓(xùn)練模型,并將創(chuàng)建的模型作為實(shí)踐的基本模型架構(gòu)。10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊

先對(duì)CIFAR-10和MNIST數(shù)據(jù)集進(jìn)行預(yù)處理,包括調(diào)整圖像大小、將灰度圖像轉(zhuǎn)換成三通道圖像等。然后使用ConcatDataset將上述兩個(gè)數(shù)據(jù)集合并為一個(gè)訓(xùn)練集和一個(gè)測試集,最后加載數(shù)據(jù)集。10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊

隨后創(chuàng)建數(shù)據(jù)加載器為訓(xùn)練和測試階段準(zhǔn)備數(shù)據(jù),定義損失函數(shù)和優(yōu)化器,用于設(shè)置訓(xùn)練替代模型所需的優(yōu)化工具。之后定義替代模型訓(xùn)練函數(shù),以此通過有限的查詢次數(shù)訓(xùn)練替代模型。10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊

為了測試替代模型的性能,計(jì)算其與預(yù)訓(xùn)練模型輸出一致的比例,實(shí)踐設(shè)置了替代模型測試函數(shù),用于評(píng)估替代模型對(duì)目標(biāo)模型的模仿效果。10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊

最后通過遍歷不同的查詢次數(shù),訓(xùn)練替代模型,保存每個(gè)查詢次數(shù)下訓(xùn)練好的替代模型參數(shù),在每次實(shí)踐后重制替代模型為初始狀態(tài)。10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊

實(shí)踐結(jié)果

圖10-10展示了模型竊取實(shí)踐中,替代模型在不同查詢次數(shù)下對(duì)三個(gè)測試數(shù)據(jù)集的準(zhǔn)確率變化。10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊內(nèi)容提綱10.3模型功能竊取算法10.2模型屬性竊取算法10.1模型竊取概述10.4實(shí)踐案例:黑盒環(huán)境下的模型竊取攻擊10.5模型竊取的防護(hù)小結(jié)10.5模型竊取的防護(hù)

隨著模型竊取攻擊的日益增長,如何防御模型竊取攻擊已經(jīng)成為了一個(gè)焦點(diǎn)問題。模型竊取攻擊會(huì)直接損害模型所有者的經(jīng)濟(jì)利益。訓(xùn)練一個(gè)高性能模型通常需要耗費(fèi)大量時(shí)間和資源,而攻擊者通過竊取技術(shù)便能

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論