版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第二章生成對抗網(wǎng)絡(luò)的安全應(yīng)用2.1生成對抗網(wǎng)絡(luò)原理簡介本章介紹
生成對抗網(wǎng)絡(luò)(GenerativeAdversarialNetworks,GANs)是一種非監(jiān)督學(xué)習(xí)方法,其通過對抗訓(xùn)練生成器和判別器兩個神經(jīng)網(wǎng)絡(luò)相互博弈的方式實現(xiàn)。在實踐中講述了兩個實踐案例,一個是基于生成對抗網(wǎng)絡(luò)的sin曲線樣本模擬,另一個是基于對抗性攻擊無數(shù)據(jù)替代訓(xùn)練的模型竊取。了解生成對抗網(wǎng)絡(luò)GANs的原理。掌握生成對抗網(wǎng)絡(luò)GANs的訓(xùn)練步驟。熟悉利用生成對抗網(wǎng)絡(luò)模擬sin曲線樣本的方法。認(rèn)知深度神經(jīng)網(wǎng)絡(luò)。熟悉基于對抗性攻擊無數(shù)據(jù)替代訓(xùn)練的模型竊取方法。內(nèi)容提綱3.生成對抗網(wǎng)絡(luò)的應(yīng)用2.生成對抗網(wǎng)絡(luò)原理1.生成對抗網(wǎng)絡(luò)概述4.生成對抗網(wǎng)絡(luò)的訓(xùn)練步驟1.生成對抗網(wǎng)絡(luò)概述生成對抗網(wǎng)絡(luò)GANs是一種用于生成模型的機(jī)器學(xué)習(xí)框架,由IanGoodfellow和他的團(tuán)隊于2014年提出。GANs由兩個主要組成部分組成:生成器(Generator)和判別器(Discriminator),
生成器:試圖生成與真實數(shù)據(jù)相似的新樣本。
判別器:則試圖區(qū)分生成器生成的樣本和真實數(shù)據(jù)樣本。內(nèi)容提綱3.生成對抗網(wǎng)絡(luò)的應(yīng)用2.生成對抗網(wǎng)絡(luò)原理1.生成對抗網(wǎng)絡(luò)概述4.生成對抗網(wǎng)絡(luò)的訓(xùn)練步驟2.生成對抗網(wǎng)絡(luò)原理
GANs的基本原理是通過競爭的方式訓(xùn)練生成器G和判別器D,以不斷提升生成器生成樣本的質(zhì)量。生成器接收一個隨機(jī)噪聲向量作為輸入,并嘗試生成看起來像真實數(shù)據(jù)的樣本。判別器則接收生成器生成的樣本和真實數(shù)據(jù)樣本,并嘗試區(qū)分它們。2.生成對抗網(wǎng)絡(luò)原理生成器和判別器通過反復(fù)迭代的對抗過程進(jìn)行訓(xùn)練,其中生成器試圖欺騙判別器,而判別器試圖準(zhǔn)確識別生成器生成的樣本。GANs的優(yōu)點是能夠生成逼真的樣本,無需顯式地定義樣本的概率分布,它們在圖像生成、視頻生成、文本生成等任務(wù)上取得了顯著的成果。2.生成對抗網(wǎng)絡(luò)原理生成對抗網(wǎng)絡(luò)的原理結(jié)構(gòu)如圖所示。生成對抗網(wǎng)絡(luò)的目標(biāo)是要學(xué)習(xí)到訓(xùn)練數(shù)據(jù)的具體分布。為了學(xué)習(xí)到這個分布,首先定義一個輸入噪聲變量Z,接下來將其映射到數(shù)據(jù)空間G。這里的G就是一個由多層感知網(wǎng)絡(luò)構(gòu)成的生成模型。此外,定義一個判別器D,用來判斷輸入的數(shù)據(jù)是來自生成模型還是訓(xùn)練數(shù)據(jù)。D的輸出是訓(xùn)練數(shù)據(jù)的概率。2.生成對抗網(wǎng)絡(luò)原理生成對抗網(wǎng)絡(luò)也有各種改進(jìn)模型:1.條件生成對抗網(wǎng)絡(luò)2.深度卷積生成對抗網(wǎng)絡(luò)3.半監(jiān)督生成對抗網(wǎng)絡(luò)4.信息生成對抗網(wǎng)絡(luò)3.生成對抗網(wǎng)絡(luò)的應(yīng)用生成對抗網(wǎng)絡(luò)的應(yīng)用非常廣泛。以下是一些典型的應(yīng)用場景:第一,圖像生成。生成對抗網(wǎng)絡(luò)可用于生成逼真的人臉或風(fēng)景等圖像,甚至還可以用于藝術(shù)創(chuàng)作和特效圖形生成。GANs能夠?qū)W習(xí)特定類型的圖像信息分布,如人臉、室內(nèi)外場景、藝術(shù)品等,并生成新圖像,這些新圖像在視覺上與訓(xùn)練集中的真實圖像難以區(qū)分。這種圖像生成能力使GANs成為新藝術(shù)品創(chuàng)造、游戲或虛擬環(huán)境設(shè)計的重要工具。3.生成對抗網(wǎng)絡(luò)的應(yīng)用用收藏齊白石作品(齊白石作品如圖所示)的書畫收藏家和假畫販子的例子來說明。假畫販子相當(dāng)于是生成器,他們希望能夠模仿大師真跡偽造出以假亂真的假畫,騙過收藏家,從而賣出高價;書畫收藏家(判別器)則希望將贗品和真跡區(qū)分開,讓真跡流傳于世。齊白石畫蝦可以說是畫壇一絕,歷來為世人所追捧。3.生成對抗網(wǎng)絡(luò)的應(yīng)用其它應(yīng)用:圖像修復(fù)、視頻生成、自然語言處理、醫(yī)學(xué)影像、風(fēng)格轉(zhuǎn)換、數(shù)據(jù)增強(qiáng)4.生成對抗網(wǎng)絡(luò)的訓(xùn)練步驟有11步:小結(jié)簡單介紹了生成對抗網(wǎng)絡(luò)及其應(yīng)用感謝同學(xué)們的收聽!致謝李劍博士,教授,博士生導(dǎo)師網(wǎng)絡(luò)空間安全學(xué)院lijian@January23,2025第二章生成對抗網(wǎng)絡(luò)的安全應(yīng)用實踐2-1基于生成對抗網(wǎng)絡(luò)的sin曲線樣本模擬本章介紹
本實踐內(nèi)容主要是Python語言編程來實現(xiàn)使用生成對抗網(wǎng)絡(luò)模擬sin曲線樣本。本實踐內(nèi)容是用來完成一個最基本的對抗生成網(wǎng)絡(luò)模型,感興趣的學(xué)生可以使用其它改進(jìn)的生成對抗網(wǎng)絡(luò)模型來學(xué)習(xí)。1.實踐目的理解生成對抗網(wǎng)絡(luò)GANs的基本原理:通過實現(xiàn)一個簡單的GANs模型,學(xué)習(xí)GANs的基本概念和工作原理,包括生成器和判別器的角色,生成器生成樣本,判別器評估樣本真實性,以及通過對抗訓(xùn)練優(yōu)化GANs模型。熟悉GANs模型的組成部分和結(jié)構(gòu):通過編寫代碼實現(xiàn)生成器和判別器模型,了解它們的結(jié)構(gòu)和參數(shù)設(shè)置,以及如何將它們組合成一個完整的生成對抗網(wǎng)絡(luò)模型。實踐訓(xùn)練和優(yōu)化GANs模型:通過調(diào)整超參數(shù)、損失函數(shù)和優(yōu)化器等設(shè)置,觀察生成器和判別器在訓(xùn)練過程中的變化,最后通過可視化圖像保存訓(xùn)練結(jié)果,直觀地觀察生成器的學(xué)習(xí)效果和生成樣本的質(zhì)量。2.實踐內(nèi)容生成對抗網(wǎng)絡(luò)GANs包含一個生成模型G和一個判別模型D,其流程如圖所示。
本實踐例子要求編寫代碼實現(xiàn)簡單的GANs模型,用于生成偽造樣本。其中真實樣本為二維數(shù)據(jù),是x2=sin(x1),x1∈[-3,3]曲線上的隨機(jī)點。最終得到2000至8000次迭代中每增加2000次迭代后的樣本散點圖。8000次迭代完成后生成的偽造樣本與真實的正弦函數(shù)貼合度很高。3.實踐環(huán)境 python版本:3.10.12或以上版本 深度學(xué)習(xí)框架:tensorflow2.15.0,keras2.15.0
其他庫版本:numpy1.25.2,matplotlib3.7.1
運(yùn)行平臺:jupyternotebook keras官方文檔:https://keras-zh.readthedocs.io/why-use-keras/ tensorflow中的keras文檔:/guide/keras?hl=zh-cn4.實踐前準(zhǔn)備工作每個學(xué)生一臺安裝有pycharm或者可以在線運(yùn)行python(或者jupyternotebook)文件的筆記本電腦,并提供給每個學(xué)生樣例代碼。5.實踐步驟(1)導(dǎo)入必要的庫。深度學(xué)習(xí)程序依賴于這些庫提供的功能和工具。(例如:numpy是Python中基于數(shù)組對象的科學(xué)計算庫。)5.實踐步驟(2)定義生成器函數(shù)。生成器的作用是接收一個潛在向量作為輸入,生成與訓(xùn)練數(shù)據(jù)相似的樣本。其目標(biāo)是產(chǎn)生逼真的樣本,使得判別器無法準(zhǔn)確區(qū)分生成樣本與真實樣本。生成器可以看作是一個生成模型,通過學(xué)習(xí)訓(xùn)練數(shù)據(jù)的分布特征,生成與之相似的新樣本。5.實踐步驟(3)定義判別器函數(shù)。判別器的作用是接收樣本(包括真實樣本和生成器生成的樣本)作為輸入,并預(yù)測樣本的真實性。其目標(biāo)是對樣本進(jìn)行分類,判斷其是真實的還是生成的。判別器可以看作是一個判別模型,通過學(xué)習(xí)如何區(qū)別真實樣本與生成樣本,并為生成器提供反饋信息,以改善生成樣本的質(zhì)量。5.實踐步驟(4)定義完整GANs模型。5.實踐步驟(5)編寫函數(shù)用于生成真實樣本。5.實踐步驟(6)編寫函數(shù)用于在隱空間中生成隨機(jī)點。隱空間,即潛在空間,是生成模型中用于表示數(shù)據(jù)的低維空間。在這個空間中,數(shù)據(jù)的特征被壓縮,模型可以更容易地生成新樣本。隱空間中的每個點通常對應(yīng)于一個潛在的樣本,通過解碼可以還原為實際的數(shù)據(jù)。通過在潛在空間中采樣不同的點作為生成器的輸入數(shù)據(jù),可以生成多樣化的數(shù)據(jù)樣本。5.實踐步驟(7)編寫函數(shù)令生成器使用隱空間點生成偽造樣本。5.實踐步驟(8)編寫函數(shù)用于評估判別器的性能并繪制結(jié)果。目的是在每個迭代結(jié)束時評估判別器的性能,并可視化真實樣本和偽造樣本的分布情況。5.實踐步驟(9)編寫訓(xùn)練函數(shù)。函數(shù)的目的是通過交替訓(xùn)練生成器和判別器來訓(xùn)練生成對抗網(wǎng)絡(luò)模型。通過不斷優(yōu)化生成器和判別器的參數(shù),使得生成器能夠生成更逼真的偽造樣本,同時判別器能夠更準(zhǔn)確地區(qū)分真實樣本和偽造樣本。通過調(diào)用性能評估函數(shù),可以觀察模型在訓(xùn)練過程中的性能變化,并可視化生成的樣本。5.實踐步驟10.訓(xùn)練模型生成結(jié)果。所有函數(shù)編寫完成后,按照題目要求設(shè)置所有常數(shù),包括樣本維度,隱空間維度,一批樣本的數(shù)量,迭代次數(shù)等。創(chuàng)建生成器,判別器,并進(jìn)一步創(chuàng)建GANs模型,調(diào)用訓(xùn)練函數(shù)訓(xùn)練模型并保存各階段的生成器生成樣本的效果。6.實踐結(jié)果運(yùn)行程序,迭代8000次,得到如下結(jié)果:判別器在真實樣本上的準(zhǔn)確率為53%,而在偽造樣本上的準(zhǔn)確率為58%。6.實踐結(jié)果隨著迭代次數(shù)增加,生成器和判別器逐漸優(yōu)化自己的網(wǎng)絡(luò),使得生成的樣本與真實樣本的重合度提高。雙方達(dá)到動態(tài)平衡時,判別器準(zhǔn)確率接近50%,相當(dāng)于隨機(jī)猜測。進(jìn)一步實驗表明,增加迭代次數(shù)和隱空間維度并不總是能夠提高模型性能,反而可能導(dǎo)致過擬合。因此,在調(diào)整參數(shù)時需謹(jǐn)慎,避免盲目增加參數(shù)導(dǎo)致模型性能下降。7.參考代碼本節(jié)實踐內(nèi)容的Python語言源代碼見教材的網(wǎng)盤。小結(jié)實踐2-1基于生成對抗網(wǎng)絡(luò)的sin曲線樣本模擬感謝同學(xué)們的收聽!致謝李劍博士,教授,博士生導(dǎo)師網(wǎng)絡(luò)空間安全學(xué)院lijian@January23,2025第二章生成對抗網(wǎng)絡(luò)的安全應(yīng)用實踐2-2基于對抗性攻擊無數(shù)據(jù)替代訓(xùn)練的模型竊取本章介紹本實踐內(nèi)容主要是利用專門設(shè)計的生成對抗網(wǎng)絡(luò)GANs來訓(xùn)練替代模型,從而對目標(biāo)模型進(jìn)行竊取。本實踐的難度較大,主要困難在于需要大量的算力資源,感興趣的同學(xué)可以自己購買算力資源進(jìn)行實踐。如果沒有條件,可以使用本教材提供的已經(jīng)訓(xùn)練好的模型進(jìn)行實踐(詳見本教材網(wǎng)盤)。1.實踐概述本實踐使用了一種無數(shù)據(jù)替代訓(xùn)練方法(DaST),無需任何真實數(shù)據(jù)即可獲得對抗性黑盒攻擊的替代模型。為了實現(xiàn)這一目標(biāo),DaST利用專門設(shè)計的生成對抗網(wǎng)絡(luò)(GANs)來訓(xùn)練替代模型。特別是,為生成模型設(shè)計了多分支架構(gòu)和標(biāo)簽控制損失,以處理合成樣本分布不均勻的問題。然后,替代模型通過生成模型生成的合成樣本進(jìn)行訓(xùn)練,這些樣本隨后由被攻擊模型進(jìn)行標(biāo)記。實踐表明,DaST生成的替代模型與使用相同訓(xùn)練集(被攻擊模型的訓(xùn)練集)訓(xùn)練的基線模型相比,可以達(dá)到具有競爭力的表現(xiàn)。此外,為了評估所提方法在實際任務(wù)中的實用性,本實踐內(nèi)容設(shè)計攻擊了MicrosoftAzure平臺上的在線機(jī)器學(xué)習(xí)模型。該遠(yuǎn)程模型對偽造的98.35%的對抗樣本進(jìn)行了錯誤分類。1.實踐概述本實踐內(nèi)容主要是對抗性無數(shù)據(jù)模仿,它主要涉及對抗性輸入的生成和利用,這是一種專門設(shè)計的輸入,旨在確保被誤分類以躲避檢測。它的流程如圖所示:3.對抗性攻擊對抗性攻擊就是通過對抗性例子來攻擊神經(jīng)網(wǎng)絡(luò)。根據(jù)對抗性攻擊的特點和攻擊效果,對抗性攻擊可分為黑盒攻擊和白盒攻擊、單步攻擊和迭代攻擊、目標(biāo)攻擊和非目標(biāo)攻擊、特定擾動和通用擾動等。本實踐主要涉及到以下兩種攻擊:1.白盒攻擊:攻擊者可以獲得目標(biāo)模型的完整結(jié)構(gòu)和參數(shù),包括訓(xùn)練數(shù)據(jù)、梯度信息和激活函數(shù)等。
2.黑盒攻擊:攻擊者無法訪問深度神經(jīng)網(wǎng)絡(luò)模型,從而無法獲取模型結(jié)構(gòu)和參數(shù),只能通過將原始數(shù)據(jù)輸入到目標(biāo)模型中來獲取目標(biāo)模型的輸出結(jié)果,并根據(jù)結(jié)果來想方設(shè)法進(jìn)行攻擊。4.對抗性生成器-分類器訓(xùn)練使用無數(shù)據(jù)替代訓(xùn)練(DaST)方法進(jìn)行對抗生成器-分類器訓(xùn)練的過程不需要任何真實數(shù)據(jù),主要通過生成模型??來創(chuàng)造合成訓(xùn)練數(shù)據(jù),以此來訓(xùn)練替代模型??。具體步驟如下:1.生成合成數(shù)據(jù):生成模型??從輸入空間隨機(jī)采樣噪聲向量??,并生成數(shù)據(jù)。2.模型訓(xùn)練:生成的數(shù)據(jù)被用來探測被攻擊模型??的輸出。替代模型??則使用這些由??生成的數(shù)據(jù)和??的輸出作為訓(xùn)練對來進(jìn)行訓(xùn)練。3.目標(biāo)和損失函數(shù):生成模型??的目標(biāo)是創(chuàng)造出能夠探索??與??之間差異的新樣本,而??的目標(biāo)是模仿??的輸出。4.標(biāo)簽控制的數(shù)據(jù)生成:為了解決生成的樣本分布不均勻和類別單一的問題,實踐設(shè)計了一個多分支架構(gòu)和標(biāo)簽控制損失,使得生成模型??能夠產(chǎn)生具有隨機(jī)標(biāo)簽的合成樣本。5.標(biāo)簽可控的數(shù)據(jù)生成這種方法允許生成模型(G)產(chǎn)生帶有隨機(jī)標(biāo)簽的合成樣本,這些標(biāo)簽是被攻擊模型(T)賦予的。核心思想是通過多分支架構(gòu)和標(biāo)簽控制損失(label-controlloss),來改善合成樣本的分布不均勻問題。具體步驟如下:1.多分支架構(gòu):2.標(biāo)簽控制損失3.訓(xùn)練過程4.模型優(yōu)化6.實踐目的1.驗證DaST方法的有效性2.評估不同模型架構(gòu)的影響3.實踐在現(xiàn)實世界任務(wù)中的實用性4.探索無數(shù)據(jù)訓(xùn)練的潛力5.提高對抗樣本的轉(zhuǎn)移性7.實踐環(huán)境 Python版本:3.9或者更高的版本 Pytorch1.11.0 Cuda:11.3.1 GPU:A40(AUTODL云服務(wù)器,若無條件,可直接對本地已訓(xùn)練好的模型進(jìn)行評估)
所需安裝庫:numpy1.21.5,matplotlib3.4.3,pyqt55.15.2
數(shù)據(jù)集:MNIST、CIFA
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 校園環(huán)境整治制度
- 景區(qū)環(huán)境衛(wèi)生清掃制度
- 預(yù)防接種異常反應(yīng)制度
- 2026廣東佛山市順德區(qū)順盛投資開發(fā)有限公司招聘1人備考題庫及1套完整答案詳解
- 2026中國太平洋保險股份有限公司銅陵支公司團(tuán)政業(yè)務(wù)部招聘2人備考題庫(安徽)及1套參考答案詳解
- 銷售公司制度
- 宗教團(tuán)體財務(wù)制度
- 村廟財務(wù)制度
- 2025廣西南寧經(jīng)濟(jì)技術(shù)開發(fā)區(qū)國凱路幼兒園招聘編外人員備考題庫及答案詳解參考
- 財務(wù)制度匯款流程
- 心衰護(hù)理疑難病例討論
- 化工廠用電安全講課
- 部編版九年級語文上冊全冊書教案教學(xué)設(shè)計(含教學(xué)反思)
- 2023年魯迅美術(shù)學(xué)院附屬中學(xué)(魯美附中)中考招生語文試卷
- 工廠網(wǎng)絡(luò)設(shè)計方案
- 福建省泉州市2023-2024學(xué)年高一上學(xué)期期末教學(xué)質(zhì)量監(jiān)測政治試題
- 日文常用漢字表
- JCT947-2014 先張法預(yù)應(yīng)力混凝土管樁用端板
- QC003-三片罐206D鋁蓋檢驗作業(yè)指導(dǎo)書
- 高血壓達(dá)標(biāo)中心標(biāo)準(zhǔn)要點解讀及中心工作進(jìn)展-課件
- 某經(jīng)濟(jì)技術(shù)開發(fā)區(qū)突發(fā)事件風(fēng)險評估和應(yīng)急資源調(diào)查報告
評論
0/150
提交評論