adversarial attack
Et adversarisk angreb er en bevidst, lille perturbation af et input til en AI-model, der får modellen til at lave en fejl.
Kort fortalt
Kort fortalt: et angreb, hvor man laver en næsten usynlig ændring i et billede eller en tekst, så en AI-model fejlklassificerer det.
- Kategori
- begreb
- Niveau
- øvet
- Udtale
- /ˌædvərˈsɛriəl əˈtæk/
Betydninger
1- 1
En bevidst, minimal ændring af et input, der får en AI-model til at producere et forkert output, mens ændringen er umærkelig for mennesker.
- Forskerne demonstrerede et adversarisk angreb, hvor en lille støj på et panda-billede fik modellen til at klassificere det som en gibbon. — Goodfellow et al., 2014
- Adversarial attacks udgør en sikkerhedstrussel mod AI-systemer, især når angriberen har adgang til modelparametrene (white-box).
Hvornår bruges det
Adversarial attacks bruges til at teste og evaluere robustheden af neurale netværk, især inden for sikkerhedskritiske systemer som selvkørende biler eller ansigtsgenkendelse. De er også centrale i udviklingen af modstandsdygtige modeller gennem adversarial træning.
Formel
x_adv = x + ε·sign(∇_x J(θ, x, y))Kodeeksempel
import torch
import torch.nn.functional as F
def fgsm_attack(model, x, y, epsilon=0.01):
x.requires_grad = True
output = model(x)
loss = F.cross_entropy(output, y)
model.zero_grad()
loss.backward()
perturbation = epsilon * x.grad.sign()
return x + perturbationSimpel FGSM-implementering (Fast Gradient Sign Method) til at generere et adversarisk eksempel.
Oprindelse
Termen 'adversarial' kommer af engelsk 'adversary' (modstander) og refererer til, at angrebet er konstrueret af en modstander. Begrebet blev introduceret af Szegedy et al. i 2013.