OpenCyber Academy
Mestrado · Capítulo 4 · Português
Código do curso: OCA-181Capítulo 04: OCA-181-C004

Capítulo 4 — Segurança de IA e aprendizado de máquina: explicações concorrentes

Ensino gratuito e aberto para quem deseja proteger pessoas e tecnologias. Não é preciso criar uma conta para estudar ou consultar as respostas.

Mapa da aula

Aula 04 publicada. Mapa, exemplo, EX021.

flowchart TD
  N0["4.1 Por que as explicações concorrentes importam"]
  N1["4.2 Um catálogo de alternativas em segurança de IA"]
  N2["4.3 Ablações e controles"]
  N3["4.4 Raciocinar sobre mecanismos com os laboratórios"]
  N4["4.6 Atividades práticas"]
  N5["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5
  N5 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX021"]

Desenho lógico

flowchart LR
  N0["4.1 Por que as explicações concorrentes importam"]
  N1["4.2 Um catálogo de alternativas em segurança de IA"]
  N2["4.3 Ablações e controles"]
  N3["4.4 Raciocinar sobre mecanismos com os laboratórios"]
  N4["4.6 Atividades práticas"]
  N5["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> Q["EX021"]
[4.1 Por que as explicações concorrentes importam]
    |
    v
[4.2 Um catálogo de alternativas em segurança de IA]
    |
    v
[4.3 Ablações e controles]
    |
    v
[4.4 Raciocinar sobre mecanismos com os laboratórios]
    |
    v
[4.6 Atividades práticas]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX021]

Objetivos de aprendizagem

Você vai (1) listar explicações alternativas para um efeito de segurança observado; (2) desenhar ablações e controles que as separem; (3) reconhecer fatores de confusão típicos dos experimentos de segurança de IA (sobreajuste, vazamento de dados, mudança de distribuição, artefatos de avaliação, ataques fracos); (4) usar os laboratórios de envenenamento e de evasão para raciocinar sobre mecanismos; e (5) enunciar conclusões no nível que a evidência sustenta.

4.1 Por que as explicações concorrentes importam

Um efeito observado — "a deduplicação reduziu a vantagem da inferência de pertencimento" — pode ter várias causas. A deduplicação poderia reduzir especificamente a memorização de registros repetidos; poderia simplesmente reduzir o tamanho efetivo do conjunto de treino e, com isso, alterar o sobreajuste; poderia mudar o equilíbrio entre classes; ou o ataque poderia ser mais fraco contra o novo modelo por razões que nada têm a ver com privacidade. Uma dissertação que nomeia e testa essas alternativas é muito mais forte do que uma que apenas relata o efeito. A discussão no seminário de Leo levantou a explicação do sobreajuste antes que ele tivesse qualquer dado.

4.2 Um catálogo de alternativas em segurança de IA

Seis alternativas se repetem. Generalização vs. mecanismo específico: o vazamento de privacidade se correlaciona com a diferença entre treino e teste, então compare os tratamentos com diferenças de generalização equiparadas, ou inclua um controle que mude o tamanho dos dados sem deduplicar. Vazamento: duplicatas entre as partições de treino e de teste inflam a acurácia e confundem as métricas de privacidade (Kapoor e Narayanan, arXiv:2207.07048). Mudança de distribuição: se membros e não membros diferem na distribuição, os ataques detectam a mudança, não o pertencimento. Ataque fraco ou mal ajustado: uma defesa "funciona" porque o ataque não foi adaptado (Athalye et al., arXiv:1802.00420); use um ataque mais forte ou calibrado como controle. Artefatos de avaliação: escolha de métrica ou limiares ajustados no conjunto de teste. Aleatoriedade: uma única semente pode produzir um efeito aparente.

4.3 Ablações e controles

Uma ablação remove ou varia um componente para ver a sua contribuição. O plano de Leo acrescenta uma quarta condição: a remoção aleatória do mesmo número de registros que a deduplicação removeria. Se a remoção aleatória der o mesmo ganho de privacidade, a explicação é o tamanho do conjunto de dados; se a deduplicação der mais, as duplicatas importam. Ele também acrescenta um ataque de controle calibrado com modelos de referência, sabidamente mais forte com FPR baixa do que um simples limiar de confiança. Escreva o resultado esperado de cada condição antes de executar.

4.4 Raciocinar sobre mecanismos com os laboratórios

O laboratório de envenenamento oferece um contraste nítido. Inverter os rótulos de até 40% de uma classe quase não altera um modelo de centroide mais próximo (0.965 → 0.945), porque os centroides fazem a média de muitos pontos; um backdoor que usa uma característica-gatilho separada atinge 98% de sucesso do ataque com 80 pontos, enquanto a acurácia limpa fica em 0.968. O mecanismo — uma direção de característica nova, sem outro uso — explica por que as métricas limpas não o percebem. Uma explicação concorrente ("o modelo é simplesmente impreciso") é descartada pela acurácia limpa inalterada. Para Leo, a analogia é que registros duplicados podem dar ao modelo uma via específica para memorizá-los.

"""Lab P: label-flip poisoning and a backdoor trigger on a toy nearest-centroid
classifier (synthetic data, stdlib only). Teaching model only."""
import random
rng = random.Random(11)
def point(label, trigger=False):
    cx = 1.0 if label else -1.0
    x = [rng.gauss(cx, 0.8), rng.gauss(cx, 0.8), 0.0]
    if trigger: x[2] = 5.0          # third feature is the 'trigger'
    return x, label
clean = [point(i % 2) for i in range(400)]
test = [point(i % 2) for i in range(400)]
def fit(data):
    c = {}
    for lab in (0, 1):
        pts = [x for x, y in data if y == lab]
        c[lab] = [sum(p[i] for p in pts)/len(pts) for i in range(3)]
    return c
def pred(c, x):
    d = {k: sum((x[i]-v[i])**2 for i in range(3)) for k, v in c.items()}
    return min(d, key=d.get)
def accuracy(c, data): return sum(pred(c, x) == y for x, y in data)/len(data)
print("label-flip poisoning (flip a fraction of class-1 labels to 0):")
for frac in (0.0, 0.1, 0.2, 0.3, 0.4):
    data = [(x, y) for x, y in clean]; ones = [i for i, (x, y) in enumerate(data) if y == 1]
    for i in ones[:int(frac*len(ones))]: data[i] = (data[i][0], 0)
    print(f"  flipped={frac:.1f} clean_test_accuracy={accuracy(fit(data), test):.3f}")
print("backdoor: add n triggered class-1 points labelled 0")
trig_test = [point(1, trigger=True) for _ in range(200)]
for n in (0, 10, 40, 80):
    data = clean + [(point(1, trigger=True)[0], 0) for _ in range(n)]
    c = fit(data)
    asr = sum(pred(c, x) == 0 for x, _ in trig_test)/len(trig_test)
    print(f"  poison_points={n:3d} clean_accuracy={accuracy(c, test):.3f} attack_success={asr:.3f}")

Saída esperada:

label-flip poisoning (flip a fraction of class-1 labels to 0):
  flipped=0.0 clean_test_accuracy=0.965
  flipped=0.1 clean_test_accuracy=0.965
  flipped=0.2 clean_test_accuracy=0.953
  flipped=0.3 clean_test_accuracy=0.950
  flipped=0.4 clean_test_accuracy=0.945
backdoor: add n triggered class-1 points labelled 0
  poison_points=  0 clean_accuracy=0.965 attack_success=0.075
  poison_points= 10 clean_accuracy=0.963 attack_success=0.145
  poison_points= 40 clean_accuracy=0.963 attack_success=0.685
  poison_points= 80 clean_accuracy=0.968 attack_success=0.980

4.5 Exemplo resolvido (caso sintético da Harbourline)

Nos dados do piloto, sob o ataque calibrado, a deduplicação reduziu a TPR com FPR de 1% de 6,1% para 3,4%. A remoção aleatória do mesmo número de registros a reduziu para 5,6%. A diferença entre a deduplicação e a remoção aleatória (2,2 pontos) é a parte plausivelmente atribuível à remoção das duplicatas; os 0,5 ponto restantes são explicados pelo tamanho. O ataque simples por limiar de confiança ficou perto do seu piso em todas as condições (o piloto do Capítulo 5 descreve isso), de modo que só o ataque calibrado conseguiu separá-las. A frase de conclusão de Leo mudou de "a deduplicação protege a privacidade" para "a maior parte da redução observada no vazamento de pertencimento é atribuível à remoção de registros duplicados, e não ao conjunto de treino menor, sob o ataque avaliado".

4.6 Atividades práticas

  1. Liste cinco explicações concorrentes para o seu resultado esperado. 2. Desenhe uma ablação e um controle para cada uma das duas mais plausíveis. 3. Reescreva a sua conclusão esperada no nível de evidência que você terá. Para a lista, use o catálogo acima e acrescente qualquer explicação específica do seu sistema. Para as ablações, mude uma coisa de cada vez e diga que resultado sustentaria cada explicação. Para a conclusão, escreva a frase que você conseguiria defender se o efeito principal aparecesse e compare-a com a frase revisada de Leo, que nomeia o ataque e o que foi descartado.

4.7 Erros e limites

Quatro erros se repetem, e cada um deixa uma explicação concorrente sobreviver; confira o seu plano quanto aos quatro:

Exercícios

Síntese

Efeitos precisam de explicações, e explicações precisam de testes. Ablações, controles e ataques mais fortes separam mecanismos de artefatos, e as conclusões resultantes são mais estreitas, porém defensáveis.

Continue estudando — capítulo 04 de 08

← Capítulo 03 (rascunho) · Índice de capítulos do curso · Capítulo 05 (rascunho) →

Respostas comentadas

EX021. A avaliação usou prompts de jailbreak mais fracos ou diferentes; o guardrail recusa em excesso (inclusive prompts benignos); a distribuição dos prompts difere entre as condições; artefatos do juiz ou da semente.

EX022. Remova o mesmo número de registros ao acaso (vários sorteios). Se o ganho de privacidade for igual ao da deduplicação, o tamanho do conjunto o explica; se a deduplicação ganhar mais, remover as duplicatas importa.

EX023. Os centroides fazem a média de centenas de pontos, então uma minoria de rótulos invertidos os desloca pouco; o backdoor usa uma terceira característica que é zero nos dados limpos, criando uma direção nova que os dados limpos não conseguem contrabalançar.

EX024. Acurácia limpa 0.968; sucesso do ataque 0.980.

EX025. Um ataque fraco pode fazer qualquer defesa parecer eficaz; um ataque calibrado e mais forte (sobretudo com FPR baixa) mostra se a redução sobrevive.

EX026. "Sob um ataque calibrado de inferência de pertencimento, a maior parte da redução observada no vazamento foi atribuível à remoção de registros duplicados, e não ao conjunto de treino menor."