◇ OpenCyber Academy
Pesquisa doutoral · Capítulo 4 · Português

Capítulo 4 — Replicação da linha de base e piloto

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

Capítulo 4 — Replicação da linha de base e piloto

Mapa da aula

Aula 04 publicada. Mapa, exemplo, EX021.

flowchart TD
  N0["4.1 Replicar primeiro"]
  N1["4.2 A publicação piloto"]
  N2["4.3 Células pequenas"]
  N3["4.4 Contabilidade do orçamento"]
  N4["Laboratório — Ruído de Laplace em contagens de orige"]
  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 Replicar primeiro"]
  N1["4.2 A publicação piloto"]
  N2["4.3 Células pequenas"]
  N3["4.4 Contabilidade do orçamento"]
  N4["Laboratório — Ruído de Laplace em contagens de orige"]
  N5["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> Q["EX021"]
[4.1 Replicar primeiro]
    |
    v
[4.2 A publicação piloto]
    |
    v
[4.3 Células pequenas]
    |
    v
[4.4 Contabilidade do orçamento]
    |
    v
[Laboratório — Ruído de Laplace em contagens de orige]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX021]

Objetivos de aprendizagem

Você vai (1) replicar um resultado conhecido antes de estendê-lo; (2) implementar o mecanismo de Laplace sobre contagens; (3) interpretar o custo de precisão do épsilon nas células pequenas.

4.1 Replicar primeiro

Antes de confiar no próprio código, Ines replica uma propriedade de manual descrita por Dwork e Roth (2014): para o ruído de Laplace com escala de um sobre épsilon, o erro absoluto esperado é igual a um sobre épsilon. Se sua implementação produzisse uma média diferente, todos os resultados posteriores ficariam sob suspeita. Ela sorteia muitas amostras de ruído para cada épsilon e compara o erro absoluto médio com a teoria. A replicação é um passo pequeno, mas o Prof. Aaltonen insiste que ela apareça na tese, porque os examinadores precisam de evidência de que o instrumento funciona antes de considerar o que ele mede no contexto do transporte.

4.2 A publicação piloto

O piloto usa 100 contagens sintéticas de origem e destino, entre zero e 400 viagens por dia. Para cada épsilon da grade 0,1, 0,5, 1,0 e 2,0, o laboratório acrescenta ruído de Laplace vinte vezes a cada contagem. O erro absoluto médio é 9,91 com épsilon 0,1, 1,98 com 0,5, 0,98 com 1,0 e 0,51 com 2,0, muito próximo de um sobre épsilon. A replicação é aprovada. Ines observa que esses erros absolutos parecem minúsculos ao lado de contagens de várias centenas de viagens, e é exatamente por isso que o passo seguinte examina as células pequenas em separado, em vez de confiar em uma média. As células pequenas recebem verificações próprias.

4.3 Células pequenas

Os planejadores se preocupam sobretudo com as linhas pouco movimentadas, em que poucas viagens decidem se um ônibus continua a circular. O piloto contém cinco células com menos de vinte viagens por dia. Nelas, o erro relativo médio é de 94,1% com épsilon 0,1, 22,0% com 0,5, 9,3% com 1,0 e 5,0% com 2,0. Com épsilon 0,1, o número publicado é quase só ruído. Ines espera, portanto, que os planejadores rejeitem valores baixos de épsilon para as linhas pequenas, e acrescenta uma análise secundária pré-registrada que informa os erros separadamente para células pequenas e grandes, para que uma média não possa esconder o problema.

4.4 Contabilidade do orçamento

Cada tabela publicada gasta parte de um orçamento de privacidade, porque responder a várias consultas sobre os mesmos passageiros tem efeito cumulativo. Dwork e Roth descrevem como os valores de épsilon se combinam pela composição. A Valemont quer tabelas diárias durante um ano, então Ines precisa decidir se o épsilon igual a um vale por tabela, por dia ou por ano. Ela registra essa decisão no protocolo como uma pergunta explícita ao encarregado de proteção de dados da autoridade, porque ela muda a força da garantia em ordens de grandeza, e adverte que um épsilon por tabela repetido diariamente não pode ser descrito honestamente como uma proteção anual forte.

Laboratório — Ruído de Laplace em contagens de origem e destino

# Laplace mechanism on 100 synthetic origin-destination counts (sensitivity 1); error by epsilon.
import random, math
r = random.Random(3)
true = [r.randint(0, 400) for _ in range(100)]
def lap(b):
    u = r.random() - 0.5
    return -b * math.copysign(1, u) * math.log(1 - 2 * abs(u))
for eps in [0.1, 0.5, 1.0, 2.0]:
    errs = [abs(lap(1 / eps)) for _ in true for _ in range(20)]
    small = [t for t in true if t < 20]
    rel = sum(abs(lap(1 / eps)) / max(t, 1) for t in small for _ in range(20)) / (20 * len(small))
    print(f"epsilon {eps:3.1f}  mean abs error {sum(errs)/len(errs):5.2f}  mean relative error on {len(small)} small cells {rel:6.1%}")

Execute com python3 lab_laplace.py. Saída verificada:

epsilon 0.1  mean abs error  9.91  mean relative error on 5 small cells  94.1%
epsilon 0.5  mean abs error  1.98  mean relative error on 5 small cells  22.0%
epsilon 1.0  mean abs error  0.98  mean relative error on 5 small cells   9.3%
epsilon 2.0  mean abs error  0.51  mean relative error on 5 small cells   5.0%

Exemplo resolvido

Ines replica o erro de um sobre épsilon do mecanismo de Laplace (0,98 com épsilon 1,0), depois encontra um erro relativo de 94,1% nas células pequenas com épsilon 0,1 e leva a contabilidade do orçamento ao protocolo como uma decisão a tomar.

Caso sintético. As contagens são sintéticas e geradas com semente fixa; Dwork, McSherry, Nissim e Smith (2006) e Dwork e Roth (2014) são reais.

Erros e limites

Cinco células pequenas são poucas para estimativas precisas. Publicações reais também exigem pós-processamento, como o arredondamento de contagens negativas, que o piloto omite.

Exercícios

Síntese

O capítulo 4 replica o mecanismo e expõe o erro em células pequenas e a contabilidade do orçamento. O capítulo 5 conduz o estudo principal com um ataque independente.

Continue estudando — aula 04 (capítulo 04 de 08)

← Capítulo 03 · Índice das aulas · Capítulo 05 →

Continue para a próxima aula já escrita.