6.1.4. Metrikák és értékelés

2025.10.06.
AI Biztonság Blog

A támadás elindítása csak a fél siker. Az igazi munka annak megértésében rejlik, hogy a támadás mennyire volt hatékony, és a modell mennyire sebezhető. A számok nélküli red teaming csak tapogatózás a sötétben. Ez a fejezet arról szól, hogyan kapcsoljuk fel a villanyt.

Kapcsolati űrlap

AI Biztonság kérdésed van? Itt elérsz minket:

Miután sikeresen implementáltál egy támadást az ART segítségével (ahogy az előző fejezetekben láttuk), a következő logikus kérdés merül fel: „És most mi van?”. 

Honnan tudod, hogy a generált adverzariális példa valóban hatásos? Mennyire kellett módosítani az eredeti bemenetet? Mennyire áll ellen a modellünk egy adott támadástípusnak? Ezekre a kérdésekre a metrikák adják meg a választ. Az értékelés nem egy opcionális lépés, hanem az ai red teaming ciklus magja.

A mérés két oldala: Támadás és Védelem

Az ART-ban és általában az adverzariális gépi tanulásban a metrikákat két fő kategóriába sorolhatjuk. Az egyik a támadások sikerességét méri, a másik pedig a modell általános robusztusságát. Bár a kettő összefügg, nem ugyanazt jelentik!

  • Támadási metrikák: Egy adott támadási kísérlet hatékonyságát számszerűsítik. (Pl. „Ez az FGSM támadás 85%-os sikerrel járt ezen az adathalmazon.”)
  • Robusztussági metrikák: A modell általános ellenálló képességét mérik, gyakran több támadás vagy egy teljes teszthalmaz kontextusában. (Pl. „A modellünk robusztussága 0.4, ha maximum 0.1 L-infinity perturbációt engedélyezünk.”)

Támadásspecifikus metrikák: A siker anatómiája

Amikor egy konkrét támadást futtatsz, több dimenzió mentén is értékelned kell az eredményt. Nem elég, ha a modell rossz döntést hoz; az sem mindegy, milyen áron.

Félreosztályozási arány (Misclassification Rate)

Ez a legalapvetőbb metrika. Egyszerűen azt méri, hogy a generált ellenséges példák hány százalékát osztályozta félre a modell. Egy célzott támadásnál azt is nézheted, hogy a példák hány százaléka kapta meg a kívánt célcímkét.

Perturbáció mértéke

Talán a legfontosabb metrika a félreosztályozási arány mellett. Azt mutatja meg, hogy mennyire kellett megváltoztatni az eredeti bemenetet a siker érdekében. Egy jó adverzariális támadás minimális, emberi szemmel észrevehetetlen változtatással éri el a célját. 

A perturbációt leggyakrabban Lp normákkal mérjük:

  • L0 norma: A megváltoztatott pixelek/jellemzők száma. Akkor hasznos, ha a változtatások számát akarod korlátozni.
  • L2 norma: A változtatások euklideszi távolsága. A perturbáció teljes „energiáját” méri. Kisebb, de sok helyen elszórt zajt eredményez.
  • L (L-infinity) norma: A legnagyobb egyedi változtatás mértéke egy pixelen/jellemzőn. Ez biztosítja, hogy egyetlen ponton se legyen kiugróan nagy a módosítás.

Az ART számos funkciót biztosít ezek mérésére, de a lényeg: minél kisebb a perturbáció mértéke egy sikeres támadásnál, annál erősebb a támadás.

Számítási költség és lekérdezések száma

Főleg black-box támadásoknál kritikus metrika. Azt méri, hogy a támadónak hányszor kellett interakcióba lépnie a modellel (lekérdezést küldenie) a sikeres adverzariális példa létrehozásához. 

Egy hatékony támadás kevés lekérdezésből is működik, ami a valós világban nehezebben detektálhatóvá teszi.

A modell robusztusságának mérése

Egyetlen támadás sikere még nem jelenti azt, hogy a modell teljesen védtelen. A teljes képhez a modell általános ellenálló képességét kell felmérnünk. Itt jönnek képbe a robusztussági metrikák.

Empirikus robusztusság (Empirical Robustness)

Ez a leggyakoribb megközelítés. Lényegében arról van szó, hogy a modellt leteszteljük egy előre definiált adathalmazon, egy vagy több ismert támadási módszerrel, rögzített paraméterek (pl. perturbációs büdzsé) mellett. Az eredmény a modell pontossága ezeken az adverzariális példákon. Ez egy gyakorlatias, de nem teljes körű bizonyíték a modell biztonságáról, hiszen csak az alkalmazott támadások ellen nyújt képet.

Példa empirikus robusztussági összehasonlításra (ε=8/255)
Modell Eredeti pontosság (CIFAR-10) Pontosság FGSM támadás után Pontosság PGD támadás után
Standard ResNet18 94.5% 15.2% 0.1%
Adverzariálisan tréningezett ResNet18 87.1% 55.8% 48.3%

Attack-Specific Evasion Rate (ASER)

Az ASER azt méri, hogy egy adott támadás milyen sikerességi rátával képes félrevezetni a modellt egy teszthalmazon. Ez lényegében a félreosztályozási arány egy specifikus támadásra és adathalmazra vetítve. Az ART art.metrics.evasion attack success rate függvénye pontosan ezt számolja ki.

Metrikák implementációja az ART-ban

Az elmélet után nézzük a gyakorlatot. Az ART `art.metrics` modulja számos beépített eszközt kínál a fenti metrikák egyszerű kiszámításához. Ezek használata általában rendkívül egyszerű: bemenetként megkapják a modell predikcióit és a valós címkéket, majd visszaadják a kívánt értéket.

# Importáljuk a szükséges metrika függvényeket
from art.metrics import classification_accuracy, clever_u, clever_t

# Tegyük fel, vannak eredeti és adverzariális predikcióink
# y_true: a valós címkék
# predictions_clean: a modell predikciói a tiszta adaton
# predictions_adv: a modell predikciói az adverzariális adaton

# Pontosság kiszámítása
accuracy_clean = classification_accuracy(y_true, predictions_clean)
accuracy_adv = classification_accuracy(y_true, predictions_adv)

print(f"Eredeti pontosság: {accuracy_clean * 100:.2f}%")
print(f"Pontosság támadás után: {accuracy_adv * 100:.2f}%")

# A modell robusztussága (a támadás sikertelensége)
robustness = accuracy_adv / accuracy_clean if accuracy_clean > 0 else 0.0
print(f"Relatív robusztusság: {robustness:.2f}")

A fenti példa a legegyszerűbb esetet mutatja be. Az ART ennél komplexebb metrikákat is kínál, mint például a CLEVER score, ami egy támadás-agnosztikus robusztussági metrika. A lényeg, hogy nem kell nulláról implementálnod ezeket a számításokat; a keretrendszer hatékony és validált eszközöket ad a kezedbe.

Eredeti Bemenet Támadás (pl. ART FGSM) Adversariális Példa Célmodell Értékelés (Metrikák)

A metrikák és az értékelés nem csupán a riportok szépítésére szolgálnak. Ezek a te iránytűid a red teaming folyamat során. Segítenek megérteni a támadások erősségeit és gyengeségeit, azonosítani a modell legsebezhetőbb pontjait, és objektíven mérni a bevezetett védelmi mechanizmusok hatékonyságát. A következő fejezetben ezeket az elveket konkrét, futtatható kódpéldákon keresztül fogjuk a gyakorlatba átültetni.