Mielőtt belevágnánk az FGSM támadás kódjának megírásába, egy stabil és reprodukálható fejlesztői környezetet kell létrehoznunk. Ez a lépés elengedhetetlen a professzionális munkában: elkerüljük vele a csomagütközéseket, és biztosítjuk, hogy a kódunk más gépeken is ugyanúgy fusson. Az alábbiakban végigvezetlek a szükséges eszközök telepítésén és konfigurálásán.
A Munkakörnyezet Alappillérei
A laborunk a Python ökoszisztémára épül, amely a gépi tanulás de facto szabványa. A következő komponensekre lesz szükségünk:
Python 3.8+
Az alap programozási nyelv. Győződj meg róla, hogy egy modern verzió van telepítve a rendszeredre.
Virtuális környezet (venv)
A Python beépített eszköze, amellyel izolált környezeteket hozhatunk létre. Így a projekt-specifikus csomagok nem keverednek a globális Python telepítéssel.
PyTorch
Egy nyílt forráskódú gépi tanulási keretrendszer, amely rugalmasságot és sebességet biztosít a modellek építéséhez és a tenzorműveletekhez. A gradiensek számításához elengedhetetlen.
Torchvision
A PyTorch kiegészítő csomagja, amely népszerű adathalmazokat (mint a CIFAR-10), modellarchitektúrákat (mint a ResNet) és képfeldolgozási transzformációkat tartalmaz.
NumPy & Matplotlib
Előbbi a hatékony numerikus számításokhoz, utóbbi pedig az eredmények, például a perturbált képek vizualizálásához szükséges.
A Virtuális Környezet Létrehozása
Első lépésként hozz létre egy projektkönyvtárat, majd azon belül egy virtuális környezetet. Nyiss egy terminált vagy parancssort, és navigálj a kívánt helyre.
mkdir fgsm_lab && cd fgsm_lab
python3 -m venv venv
Ezzel létrejött a venv nevű könyvtár, ami a mi izolált Python környezetünket tartalmazza. A következő lépés az aktiválása:
# Linux vagy macOS esetén:
source venv/bin/activate
# Windows (Command Prompt) esetén:
venv\Scripts\activate.bat
# Windows (PowerShell) esetén:
venv\Scripts\Activate.ps1
Sikeres aktiválás után a parancssorod elején meg kell jelennie a (venv) prefixnek. Innentől minden `pip` paranccsal telepített csomag ebbe az izolált környezetbe kerül.
Szükséges Csomagok Telepítése
Most, hogy az izolált környezet aktív, telepítsük a szükséges Python csomagokat a pip segítségével. A PyTorch telepítésekor érdemes a hivatalos weboldalról (pytorch.org) a rendszerednek és a hardverednek (CPU vagy CUDA-képes GPU) megfelelő parancsot kimásolni. Itt egy általános, CPU-alapú példát mutatok:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
pip install numpy matplotlib
A telepítés befejeztével a környezetünk készen áll a kód implementációjára. Ellenőrizheted a telepített csomagokat a pip list paranccsal.
Környezetünk készenlétben
Ezen a ponton egy tiszta, izolált Python környezettel rendelkezel, amely tartalmazza az összes szükséges függőséget az FGSM támadás megvalósításához és teszteléséhez. Megteremtettük az alapot, amelyre a következő fejezetben a konkrét kódot építjük. Ez a módszeres előkészület garantálja, hogy a kísérleteink megbízhatóak és megismételhetők lesznek.