20.1.1 Ellenséges példák létezésének matematikája

2025.10.06.
AI Biztonság Blog

Nehezen érthető, hogy egy szinte láthatatlan, apró zaj hozzáadása egy képhez miért késztet egy csúcskategóriás neurális hálót arra, hogy egy pandát gibbonnak nézzen. A laikus magyarázat gyakran a modellek túlzott komplexitására vagy „törékenységére” hivatkozik. 

Kapcsolati űrlap

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

A valóság azonban ennél sokkal alapvetőbb és matematikailag megmagyarázhatóbb. 

Az ellenséges példák nem afféle hibák, hanem logikus következményei annak, ahogy a modellek magas dimenziós terekben működnek.

A kulcs a látszólagos paradoxon feloldásához a linearitásban rejlik. Bár a neurális hálók globálisan rendkívül nemlineáris függvényeket képeznek le, lokálisan, a döntési határok közelében meglepően lineárisan viselkednek. Ez a lokális linearitás, párosulva az adatpontok rendkívül magas dimenziószámával (pl. egy csupán 224×224-es kép több mint 150 000 dimenzióval rendelkezik), teremti meg a tökéletes táptalajt az ellenséges támadásokhoz.

A linearitás és a magas dimenziók együttes hatása

Képzelj el egy egyszerű lineáris modellt, amelynek kimenetét a súlyvektor (w) és a bemeneti vektor (x) skaláris szorzata adja: wTx. Ahhoz, hogy a modell klasszifikációját megváltoztassuk, ezt az értéket kell módosítanunk. Amikor egy ellenséges perturbációt (η) adunk a bemenethez, az új bemenet x' = x + η lesz. Vizsgáljuk meg, hogyan változik a modell kimenete:

wTx’ = wT(x + η) = wTx + wTη

A kimenet megváltozása pontosan wTη. Itt jön a csavar. Bár azt szeretnénk, hogy a perturbáció, η, kicsi legyen (pl. a végtelen-normája, ||η||, ne haladjon meg egy apró ε értéket), a wTη szorzat ettől még lehet nagy.

Gondolj bele: ha a bemenetnek n dimenziója van, és a súlyvektor átlagos abszolút értéke m, akkor a wTη szorzat akár n * m * ε is lehet. Egy több ezer vagy millió dimenziós térben ez a hatás összeadódik. Sok apró, alig észrevehető változtatás együttesen egy jelentős elmozdulást okoz a modell aktivációjában, elegendőt ahhoz, hogy átlökje a döntési határon!

Döntési határ x (eredeti) w (súlyvektor) η (perturbáció) x’ (ellenséges) „Panda” osztály „Gibbon” osztály
Egy ellenséges példa létrehozása. A perturbációt (η) a súlyvektor (w) irányába választjuk, hogy maximális hatást érjünk el. Ez az apró, célzott elmozdulás áttolja az eredeti pontot (x) a döntési határon, létrehozva az ellenséges példát (x’).

A Fast Gradient Sign Method (FGSM) matematikája

A leghíresebb és legegyszerűbb támadási módszer, az FGSM, pontosan erre a logikára épül. Célja, hogy a wTη szorzatot maximalizálja, miközben η normája korlátos. A skaláris szorzat akkor maximális, ha a két vektor párhuzamos. Ezért az optimális perturbáció η iránya megegyezik a súlyvektor w irányával.

Hogy η normáját ε alatt tartsuk a végtelen-norma metrikában (azaz minden egyes komponense kisebb, mint ε), a legegyszerűbb választás:

η = ε · sign(w)

Ahol a sign() függvény a súlyvektor minden elemének előjelét adja vissza (+1, -1 vagy 0). A neurális hálók esetében w helyett a költségfüggvény (J) bemenet szerinti gradiensét (x J(θ, x, y)) használjuk, mivel ez mutatja meg, hogy a bemenet mely irányú megváltoztatása növeli leginkább a hibát.

# Pszeudokód az FGSM perturbáció kiszámítására
function fgsm_perturbation(model, loss_function, x, y_true, epsilon):

# Engedélyezzük a gradiensek számítását a bemenetre nézve
x.requires_grad = True

# Előre terjesztés
prediction = model(x)
loss = loss_function(prediction, y_true)

# Visszaterjesztés a költség gradienseinek kiszámításához
model.zero_grad()
loss.backward()

# A gradiens előjelének begyűjtése
gradient_sign = x.grad.sign()

# A perturbáció létrehozása
perturbation = epsilon * gradient_sign
return perturbation

Következtetések az AI Red Teaming számára

Ennek a matematikai háttérnek a megértése kulcsfontosságú az AI Red Teaming szakértők számára. Nem véletlenszerű „glitcheket” keresünk, hanem a modellek működésének egy fundamentális tulajdonságát használjuk ki!

  • Univerzalitás: Mivel a probléma a magas dimenziós terek lineáris viselkedéséből fakad, szinte minden jelenlegi mélytanulási architektúra sebezhető, függetlenül attól, hogy képfelismerésről, nyelvi modellezésről vagy hangfeldolgozásról van szó.
  • Szisztematikusság: A támadások nem próbálgatáson alapulnak, hanem matematikailag megalapozott optimalizációs problémaként foghatók fel. A gradiensek célzott kihasználása hatékony és megismételhető támadásokat tesz lehetővé.
  • Védekezés nehézsége: A probléma alapvető természete miatt a védekezés is rendkívül nehéz. Egy egyszerű „foltozás” nem lehetséges. A robusztusság növelése gyakran a pontosság rovására megy, ami egy klasszikus biztonsági kompromisszumot (trade-off) eredményez.

Az ellenséges példák létezése tehát nem a mesterséges intelligencia kudarcának jele, hanem mély matematikai jelenség, amely a magas dimenziókban rejlő lehetőségeket és egyben veszélyeket is megmutatja! 

A feladat AI red teamerként az, hogy ezt a jelenséget megértsük, kihasznájuk, és segítsünk olyan rendszereket építeni, amelyek jobban ellenállnak neki!