Mapa da aula
Aula 14 publicada. Mapa, exemplo, EX040.
flowchart TD
N0["14.1 Princípios"]
N1["14.2 Ataques de privacidade contra o aprendizado de"]
N2["14.3 Técnicas de reforço da privacidade"]
N3["14.4 Avaliação de riscos de privacidade"]
N4["14.4b Prompts e logs"]
N5["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5
N5 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX040"]
Desenho lógico
flowchart LR
N0["14.1 Princípios"]
N1["14.2 Ataques de privacidade contra o aprendizado de"]
N2["14.3 Técnicas de reforço da privacidade"]
N3["14.4 Avaliação de riscos de privacidade"]
N4["14.4b Prompts e logs"]
N5["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> Q["EX040"]
[14.1 Princípios]
|
v
[14.2 Ataques de privacidade contra o aprendizado de]
|
v
[14.3 Técnicas de reforço da privacidade]
|
v
[14.4 Avaliação de riscos de privacidade]
|
v
[14.4b Prompts e logs]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX040]
Objetivos de aprendizagem
Você vai (1) explicar os princípios de proteção de dados e o conceito de dado pessoal; (2) descrever ataques de privacidade contra o aprendizado de máquina (inferência de pertencimento, extração de dados, inferência de atributos); (3) aplicar técnicas de reforço da privacidade; e (4) avaliar os riscos de privacidade de um sistema de IA.
14.1 Princípios
Leis de proteção de dados como o RGPD da UE (no Brasil, a LGPD, Lei nº 13.709/2018) exigem base legal, limitação da finalidade, minimização dos dados, exatidão, limitação da conservação, segurança e responsabilização. Dados de saúde são uma categoria especial, com regras mais rígidas. No Ask Lumen, limitação da finalidade significa que os logs de conversas guardados para revisão de qualidade não são reaproveitados para treinar modelos de marketing; minimização significa que o prompt inclui apenas o necessário para responder; limitação da conservação significa que os logs são apagados ao fim do prazo de retenção. Como dados de saúde são uma categoria especial, a base legal e as salvaguardas da LCH ficam documentadas em sua avaliação de impacto antes de qualquer novo uso.
14.2 Ataques de privacidade contra o aprendizado de máquina
A inferência de pertencimento decide se um registro estava nos dados de treinamento (Shokri et al., arXiv:1610.05820). A extração de dados de treinamento recupera texto memorizado por modelos generativos (Carlini et al., arXiv:2012.07805). A inferência de atributos adivinha atributos sensíveis a partir das saídas do modelo. O sobreajuste aumenta esses riscos; o laboratório mostra o pertencimento vazando de um modelo que memoriza e diminuindo à medida que ele generaliza.
"""Lab M: membership inference against an overfit 1-nearest-neighbour 'model'
that returns a confidence score. Synthetic records only; teaching model."""
import random, math
rng = random.Random(5)
def rec():
y = rng.random() < 0.5
return [rng.gauss(0.6 if y else -0.6, 1.0) for _ in range(4)], int(y)
members = [rec() for _ in range(150)]; nonmembers = [rec() for _ in range(150)]
def confidence(x, y, k):
# k-NN vote share for the true label, computed over the training set
d = sorted((sum((a-b)**2 for a, b in zip(x, m)), my) for m, my in members)
return sum(1 for _, my in d[:k] if my == y)/k
def auc(pos, neg):
s = sum((p > n) + 0.5*(p == n) for p in pos for n in neg)
return s/(len(pos)*len(neg))
for k in (1, 5, 25):
pos = [confidence(x, y, k) for x, y in members]
neg = [confidence(x, y, k) for x, y in nonmembers]
best = max(sum(p >= t for p in pos)/len(pos) - sum(n >= t for n in neg)/len(neg)
for t in sorted(set(pos + neg)))
print(f"k={k:2d} attack_auc={auc(pos, neg):.3f} best_advantage={best:.3f}")
Saída esperada:
k= 1 attack_auc=0.600 best_advantage=0.200
k= 5 attack_auc=0.521 best_advantage=0.073
k=25 attack_auc=0.520 best_advantage=0.060
O Lab M torna o efeito mensurável: com k igual a 1, o ataque atinge uma AUC de 0.600, enquanto com k igual a 25 ela cai para 0.520, perto do acaso. Calcular a média sobre mais vizinhos, como faz um modelo que generaliza, reduz o que a saída revela sobre pacientes individuais.
14.3 Técnicas de reforço da privacidade
Minimize e pseudonimize os dados; elimine registros de treinamento duplicados; limite o detalhe das saídas (rótulos em vez de confianças); aplique privacidade diferencial durante o treinamento (Abadi et al., arXiv:1607.00133); controle quem pode consultar os modelos; e nunca coloque dados pessoais em prompts sem necessidade. Cada técnica ataca uma parte do risco. A eliminação de duplicatas remove registros repetidos, que os modelos tendem a memorizar. Devolver rótulos em vez de confianças remove o sinal que o ataque do Lab M usa. A privacidade diferencial limita quanto um único registro pode afetar o modelo treinado, com algum custo em acurácia. Os controles de consulta limitam quem pode sondar o modelo. A mudança da LCH no NoShow usou quatro dessas técnicas juntas.
14.4 Avaliação de riscos de privacidade
Pergunte: quais dados pessoais entram no treinamento, na recuperação, nos prompts e nos logs? Quem pode consultar o modelo, e o que as saídas revelam? O que acontece se os logs vazarem? Uma avaliação de impacto sobre a proteção de dados documenta as respostas e os controles. No NoShow, as respostas mostraram que dados pessoais entravam no treinamento, que qualquer funcionário podia consultar qualquer identificador de paciente e que as saídas davam probabilidades precisas. Cada achado levou a um controle: consultas restritas, saídas por categoria e atributos minimizados. A avaliação é atualizada quando o sistema muda, e não arquivada uma vez e esquecida.
14.4b Prompts e logs
Se funcionários colam dados de pacientes num assistente de IA, esses dados podem ser armazenados pelo provedor ou aparecer em logs. Configure a retenção e a recusa ao uso para treinamento quando o provedor oferecer essas opções, oculte identificadores antes do envio sempre que possível e treine os funcionários sobre o que pode ser compartilhado. A ocultação pode ser automatizada para identificadores estruturados, como números de pacientes, mas o texto livre exige cuidado: um paciente pode digitar um diagnóstico ou o nome de um parente em qualquer ponto de uma mensagem.
14.5 Exemplo resolvido (caso sintético da LCH)
A API do NoShow devolvia uma probabilidade precisa para qualquer identificador de paciente. Rina mostrou, com dados sintéticos, que a confiança diferia entre pacientes do conjunto de treinamento e pacientes novos, o que permitia a inferência de pertencimento ("esta pessoa foi atendida na LCH no ano passado?"). A LCH mudou a API para devolver apenas uma categoria de lembrete a funcionários autorizados e retreinou o modelo com atributos minimizados e sem duplicatas. Devolver uma categoria em vez de uma probabilidade removeu a maior parte do sinal, e limitar o acesso a funcionários autorizados reduziu quem podia sequer fazer a pergunta.
14.6 Erros e limites
Três erros são comuns: tratar modelos como se não contivessem dados pessoais; saídas de confiança detalhadas para públicos amplos; e logs cheios de dados pessoais sem limite de retenção. Modelos treinados com registros de pacientes carregam informações sobre esses registros, como mostra a inferência de pertencimento. Escores de confiança detalhados para públicos amplos dão aos atacantes o sinal de que precisam. Logs cheios de dados pessoais sem limite de retenção tornam-se um depósito de informações sensíveis que cresce a cada dia. As mudanças da LCH no NoShow e suas regras de retenção de logs tratam os três, e a avaliação de impacto registra por quê.
Exercícios
- EX040 — Leitura do laboratório. Que AUC e que vantagem o laboratório informa com k = 1, e o que isso significa? Rubrica: 3 = 0.600 e 0.200; a memorização vaza o pertencimento; 2 = os números; 1 = vago; 0 = errado.
- EX041 — Pertencimento sensível. Por que o pertencimento aos dados de treinamento do NoShow é sensível? Rubrica: 3 = revela que a pessoa foi paciente (informação de saúde); 2 = parcial; 1 = vago; 0 = errado.
- EX042 — Técnicas. Liste quatro técnicas de reforço da privacidade para o NoShow. Rubrica: 3 = quatro pertinentes; 2 = três; 1 = uma ou duas; 0 = nenhuma.
Síntese
Modelos podem revelar seus dados de treinamento. Princípios de proteção de dados, saídas atentas à privacidade e técnicas como a minimização e a privacidade diferencial reduzem o risco.
Continue estudando — capítulo 14 de 40
← Capítulo 13 (rascunho) · Índice de capítulos do curso · Capítulo 15 (rascunho) →