Capítulo 3 — Segurança de IA e aprendizado de máquina: evidências especializadas
Mapa da aula
Aula 03 publicada. Mapa, exemplo, EX011.
flowchart TD
N0["3.1 Tipos de evidência"]
N1["3.2 Taxas e intervalos"]
N2["3.3 Avaliações fracas"]
N3["3.4 Evidências de privacidade e de envenenamento"]
N4["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4
N4 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX011"]
Desenho lógico
flowchart LR
N0["3.1 Tipos de evidência"]
N1["3.2 Taxas e intervalos"]
N2["3.3 Avaliações fracas"]
N3["3.4 Evidências de privacidade e de envenenamento"]
N4["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> Q["EX011"]
[3.1 Tipos de evidência]
|
v
[3.2 Taxas e intervalos]
|
v
[3.3 Avaliações fracas]
|
v
[3.4 Evidências de privacidade e de envenenamento]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX011]
Objetivos de aprendizagem
Você vai (1) distinguir os tipos de evidência de segurança de IA e sua força; (2) relatar taxas de sucesso de ataque com intervalos de confiança; (3) reconhecer avaliações fracas, incluindo ataques não adaptativos; (4) interpretar medições de privacidade e de envenenamento; e (5) redigir uma declaração de evidência que um revisor possa verificar.
3.1 Tipos de evidência
Da mais fraca para a mais forte: alegações do fornecedor; documentação dos controles; revisão de configuração; testes não adaptativos com conjuntos fixos; testes adaptativos feitos por pessoas que conhecem a defesa; red teaming independente; e resultados monitorados em produção. Cada uma tem seu lugar, mas uma afirmação deve citar evidências compatíveis com sua força. "O modelo resiste à injeção" exige testes adaptativos; "o agente não consegue reembolsar mais de €20" pode ser demonstrado por revisão de configuração somada a testes do serviço de política, porque a imposição do limite não depende do modelo. A declaração de evidência de Amira, no exemplo resolvido abaixo, credita a configuração e os testes do serviço de política.
3.2 Taxas e intervalos
Relate sucessos sobre tentativas com um intervalo de 95% (o de Wilson é um bom padrão). Três sucessos em 20 tentativas (15%) dão aproximadamente 5–36%; a mesma taxa em 2.000 tentativas dá 13,5–16,6%. Compare defesas no mesmo conjunto de testes e relate a diferença com um intervalo. Varie as sementes aleatórias e relate a dispersão.
"""Lab S: reporting attack-success rates honestly: Wilson intervals,
seed variation and a paired bootstrap. Synthetic trial outcomes only."""
import math, random
def wilson(k, n, z=1.96):
p = k/n; d = 1 + z*z/n
c = (p + z*z/(2*n))/d; h = z*math.sqrt(p*(1-p)/n + z*z/(4*n*n))/d
return c - h, c + h
for k, n in ((3, 20), (30, 200), (300, 2000)):
lo, hi = wilson(k, n); print(f"successes={k}/{n} rate={k/n:.3f} wilson95=[{lo:.3f}, {hi:.3f}]")
# five seeds of a synthetic defence evaluation: per-seed attack success rate
rates = []
for seed in range(5):
r = random.Random(seed); rates.append(sum(r.random() < 0.12 for _ in range(200))/200)
m = sum(rates)/5; sd = math.sqrt(sum((x-m)**2 for x in rates)/4)
print("per-seed rates:", " ".join(f"{x:.3f}" for x in rates), f"mean={m:.3f} sd={sd:.3f}")
# paired bootstrap: baseline vs defence on the same 300 synthetic prompts
r = random.Random(42)
base = [r.random() < 0.30 for _ in range(300)]
defn = [b and r.random() < 0.6 for b in base] # defence blocks ~40% of successes
diffs = []
for _ in range(2000):
idx = [r.randrange(300) for _ in range(300)]
diffs.append(sum(base[i] for i in idx)/300 - sum(defn[i] for i in idx)/300)
diffs.sort()
print(f"baseline_asr={sum(base)/300:.3f} defended_asr={sum(defn)/300:.3f} "
f"reduction_ci95=[{diffs[50]:.3f}, {diffs[1949]:.3f}]")
Saída esperada:
successes=3/20 rate=0.150 wilson95=[0.052, 0.360]
successes=30/200 rate=0.150 wilson95=[0.107, 0.206]
successes=300/2000 rate=0.150 wilson95=[0.135, 0.166]
per-seed rates: 0.110 0.130 0.135 0.105 0.145 mean=0.125 sd=0.017
baseline_asr=0.350 defended_asr=0.190 reduction_ci95=[0.120, 0.203]
O resultado de 41 em 300 obtido por Amira é relatado dessa forma, com um intervalo de cerca de 10–18%, para que o conselho veja tanto a taxa quanto sua incerteza. Informe o número de tentativas ao lado de cada taxa e diga se os casos eram adaptativos.
3.3 Avaliações fracas
Carlini et al. (arXiv:1902.06705) listam falhas comuns em avaliações de robustez; Athalye et al. (arXiv:1802.00420) mostraram que defesas baseadas em gradientes ofuscados foram quebradas por ataques adaptados. Sinais de alerta: apenas cadeias de ataque públicas e fixas; o defensor escreveu todos os testes; nenhuma linha de base; amostras minúsculas; sucesso medido pelas palavras do modelo e não pelo que aconteceu (uma chamada de ferramenta, uma liberação de dados). A alegação de "99%" do fornecedor, no exemplo resolvido abaixo, mostra vários desses sinais ao mesmo tempo: apenas cadeias públicas, um conjunto escrito pelo fornecedor e sucesso medido pela saída do classificador.
3.4 Evidências de privacidade e de envenenamento
A inferência de pertencimento (Shokri et al., arXiv:1610.05820) é medida como vantagem do ataque ou AUC sobre conjuntos equilibrados de membros e não membros; a privacidade diferencial (Abadi et al., arXiv:1607.00133) dá um limite formal em vez de uma medição. Evidências de envenenamento relatam tanto a acurácia limpa quanto o sucesso do ataque, porque backdoors (Gu et al., arXiv:1708.06733) podem deixar a acurácia limpa inalterada. Para o FraudScore, evidência de envenenamento significaria testar faturas-gatilho sintéticas além da acurácia limpa, como a equipe de Amira faz no capítulo de avaliação. Um único número de acurácia limpa não revelaria um backdoor.
3.5 Exemplo resolvido (caso sintético da Corvane)
Um fornecedor afirma que seu filtro de injeção "bloqueia 99% dos ataques". Amira pede o conjunto de testes: 500 cadeias públicas, não adaptativas, medidas pela saída do classificador. Sua equipe constrói 300 casos adaptativos contra o Dispatch Copilot e mede chamadas de ferramenta: o filtro sozinho deixa passar 41 chamadas nocivas (13,7%, intervalo ≈ 10,2–18,0%). Com o serviço de política de reembolso, 0 de 300 chegam ao pagamento (limite superior ≈ 1%). A declaração de evidência dela credita o serviço de política, não o filtro. A diferença entre 13,7% e 0 em 300 mostra por que medir efeitos importa: o filtro muda o texto, o serviço de política muda os resultados. Amira mantém o filtro apenas como sinal.
3.6 Erros e limites
Três erros são comuns: citar taxas sem tentativas ou intervalos; aceitar resultados não adaptativos para ameaças adaptativas; e medir texto em vez de efeitos. Cada erro leva os leitores a confiar no controle errado. Uma taxa sem tentativas nem intervalo não pode ser comparada nem verificada. Resultados não adaptativos dizem pouco sobre atacantes que conhecem a defesa; os 99% do fornecedor caíram para 13,7% quando a equipe de Amira adaptou os ataques. Medir as palavras do modelo em vez das chamadas de ferramenta deixa escapar danos que acontecem de qualquer forma. Revise cada declaração de evidência à luz desses três pontos e corrija-a antes de relatá-la.
Exercícios
- EX011 — Ordenar evidências. Ordene cinco evidências sobre o Dispatch Copilot da mais fraca para a mais forte. Rubrica: 3 = ordenação sensata, com justificativas; 2 = deslizes menores; 1 = deslizes graves; 0 = nenhuma.
- EX012 — Intervalo. Usando a saída do laboratório, explique por que 3/20 e 300/2000 sustentam afirmações diferentes. Rubrica: 3 = larguras dos intervalos e força da afirmação; 2 = só as larguras; 1 = vago; 0 = errado.
- EX013 — Sinais de alerta. Encontre três sinais de alerta na alegação do fornecedor. Rubrica: 3 = três corretos; 2 = dois; 1 = um; 0 = nenhum.
- EX014 — Métricas de backdoor. Por que relatar juntos a acurácia limpa e o sucesso do ataque? Rubrica: 3 = um backdoor pode manter a acurácia limpa; ambos são necessários; 2 = parcial; 1 = vago; 0 = errado.
- EX015 — Declaração de evidência. Escreva uma declaração de evidência em duas frases para o controle de reembolso. Rubrica: 3 = tentativas, resultado, limite, condições; 2 = falta um; 1 = vago; 0 = nenhuma.
Síntese
Evidências especializadas são graduadas por força, relatadas com intervalos, obtidas de forma adaptativa e medidas por efeitos. Credite as afirmações aos controles que as evidências de fato sustentam.
Continue estudando — capítulo 03 de 12
← Capítulo 02 (rascunho) · Índice de capítulos do curso · Capítulo 04 (rascunho) →