Capítulo 6 — Coleta e análise de dados
Mapa da aula
Aula 06 publicada. Mapa, exemplo, EX033.
flowchart TD
N0["6.1 Execução do estudo principal"]
N1["6.2 Comparação por bootstrap"]
N2["Laboratório — Comparação das políticas por bootstrap"]
N3["6.3 Verificações das rivais"]
N4["6.4 O tradeoff da complexidade"]
N5["6.5 Apresentar os resultados com honestidade"]
N6["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6
N6 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX033"]
Desenho lógico
flowchart LR
N0["6.1 Execução do estudo principal"]
N1["6.2 Comparação por bootstrap"]
N2["Laboratório — Comparação das políticas por bootstrap"]
N3["6.3 Verificações das rivais"]
N4["6.4 O tradeoff da complexidade"]
N5["6.5 Apresentar os resultados com honestidade"]
N6["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> Q["EX033"]
[6.1 Execução do estudo principal]
|
v
[6.2 Comparação por bootstrap]
|
v
[Laboratório — Comparação das políticas por bootstrap]
|
v
[6.3 Verificações das rivais]
|
v
[6.4 O tradeoff da complexidade]
|
v
[6.5 Apresentar os resultados com honestidade]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX033]
Objetivos de aprendizagem
Você vai (1) rodar a simulação principal e coletar os resultados de forma reprodutível; (2) comparar as políticas com intervalos de confiança por bootstrap; (3) avaliar as verificações das rivais; (4) apresentar os resultados sem exagerá-los.
6.1 Execução do estudo principal
Kenji roda duzentas redes em cada um de três tamanhos, aplicando as políticas plana, por zonas, por identidade e de arestas aleatórias, com os parâmetros das rivais variados como planejado. Cada execução grava sua configuração, sua semente e seus resultados num arquivo, e o script de nova execução confirma que uma amostra aleatória das execuções se reproduz exatamente. Ele resiste à vontade de olhar os resultados enquanto as execuções ainda estão incompletas, porque espiar cedo tende a moldar as decisões posteriores. Quando todas as execuções terminam, ele calcula primeiro a comparação principal pré-especificada, antes de qualquer análise exploratória, e registra a hora em que fez isso.
6.2 Comparação por bootstrap
A comparação principal é a diferença média de servidores alcançáveis entre as políticas por zonas e por identidade nas mesmas redes. Kenji usa bootstrap: reamostra as redes com reposição muitas vezes, recalcula a diferença média a cada vez e toma os noventa e cinco por cento centrais desses valores como intervalo de confiança. O bootstrap exige poucas premissas sobre a forma dos dados. O laboratório abaixo aplica esse procedimento a resultados pareados sintéticos de um tamanho de rede e também compara a identidade com o controle de arestas aleatórias, relatando os dois intervalos e o número médio de regras.
Laboratório — Comparação das políticas por bootstrap
# Bootstrap CIs for paired synthetic results (servers reachable) across 200 generated networks.
import random, statistics
random.seed(42)
nets = []
for _ in range(200):
zone = random.randint(4, 9); ident = max(0, zone - random.choice([1, 2, 2, 3, 3, 4]))
ctrl = max(ident, ident + random.choice([0, 1, 2, 2, 3]))
nets.append((zone, ident, ctrl, random.randint(18, 26), random.randint(60, 75)))
def boot(diffs, B=4000):
m = [statistics.mean(random.choices(diffs, k=len(diffs))) for _ in range(B)]; m.sort()
return statistics.mean(diffs), m[int(.025 * B)], m[int(.975 * B)]
for name, i in [("zone - identity", 0), ("control - identity", 2)]:
est, lo, hi = boot([n[i] - n[1] for n in nets])
print(f"{name:20} mean {est:.2f} 95% CI [{lo:.2f}, {hi:.2f}]")
print(f"mean rules: zone {statistics.mean(n[3] for n in nets):.1f}, identity {statistics.mean(n[4] for n in nets):.1f}")
Execute com python3 lab_compare.py. Saída verificada:
zone - identity mean 2.43 95% CI [2.29, 2.56]
control - identity mean 1.56 95% CI [1.42, 1.71]
mean rules: zone 22.2, identity 67.7
6.3 Verificações das rivais
O controle de arestas aleatórias alcança visivelmente mais servidores do que a identidade, então a estrutura, e não só o número de arestas, explica boa parte do benefício. A vantagem se mantém entre os tamanhos de rede, embora diminua no menor tamanho que restou. Permitir que as identidades alcancem até quatro servidores reduz a vantagem, mas não a elimina. A cópia de modelos é a rival mais forte: quando um terço das estações herda um conjunto amplo de regras, a maior parte da vantagem desaparece. A configuração incorreta em cinco por cento estreita a diferença, mas a deixa acima do limiar de reversão de Kenji. Ele relata cada verificação de rival numa tabela com seu resultado.
6.4 O tradeoff da complexidade
As políticas por identidade exigem muito mais regras de permissão do que as políticas por zonas: no laboratório, cerca de três vezes mais, em média. Kenji apresenta o alcance e o número de regras lado a lado, para que os leitores vejam o tradeoff, e não só o ganho de segurança. Ele não afirma saber quantas regras uma organização consegue gerenciar, mas observa que o resultado da cópia de modelos sugere que as organizações muitas vezes lidam com a complexidade das regras copiando-as, o que mina o benefício. Isso liga os resultados quantitativos de volta ao princípio da economia de mecanismo discutido no seminário.
6.5 Apresentar os resultados com honestidade
O capítulo de resultados de Kenji declara os efeitos com intervalos, explica o que cada verificação mostrou e rotula qualquer análise exploratória. Ele evita dizer que a segmentação por identidade é segura ou que a segmentação por zonas é insegura. Escreve que, sob as premissas do modelo, a segmentação baseada em identidade reduziu o alcance no pior caso a partir de uma única estação comprometida, em comparação com a segmentação por zonas, que boa parte desse ganho dependeu de evitar regras amplas copiadas de modelos e que ela exigiu cerca de três vezes mais regras. Essa frase é mais longa do que uma manchete, mas cada palavra está apoiada num resultado relatado.
Exemplo resolvido
Kenji roda seiscentas redes, calcula intervalos por bootstrap para zonas menos identidade e controle aleatório menos identidade, relata as verificações das rivais numa tabela e apresenta o alcance com o número de regras.
Caso sintético. Todos os resultados vêm de simulações sintéticas.
Erros e limites
Os intervalos por bootstrap descrevem a variação entre as redes geradas, e não a incerteza sobre empresas reais. Os achados exploratórios precisam de confirmação.
Exercícios
-
EX033 — Espiar cedo. Por que evitar olhar os resultados antes do fim das execuções? Rubrica: 3 = espiar cedo tende a moldar as decisões posteriores;; 2 = viés;; 1 = sem motivo;; 0 = nenhuma.
-
EX034 — Etapas do bootstrap. Descreva o bootstrap que Kenji usa. Rubrica: 3 = reamostrar as redes com reposição, recalcular a diferença média, tomar os 95% centrais;; 2 = parcial;; 1 = vago;; 0 = nenhuma.
-
EX035 — Intervalos do laboratório. Que diferenças médias o laboratório relatou para zonas menos identidade e controle menos identidade? Rubrica: 3 = cerca de 2,4 e 1,6 servidor, ambos os intervalos acima de zero;; 2 = um;; 1 = errado;; 0 = nenhuma.
-
EX036 — Rival mais forte. Que verificação de rival removeu a maior parte da vantagem? Rubrica: 3 = a cópia de regras amplas de modelos para um terço das estações;; 2 = modelo;; 1 = tamanho;; 0 = nenhuma.
-
EX037 — Razão de regras. Quantas vezes mais regras, aproximadamente, as políticas por identidade exigiram em relação às por zonas no laboratório? Rubrica: 3 = cerca de três vezes mais;; 2 = razão;; 1 = menos;; 0 = nenhuma.
-
EX038 — Frase apoiada. Por que Kenji evita chamar de segura a segmentação por identidade? Rubrica: 3 = os resultados só sustentam um alcance modelado menor sob premissas, com condições;; 2 = condicional;; 1 = é segura;; 0 = nenhuma.
Síntese
Uma análise cuidadosa relata comparações pré-especificadas com intervalos, testa cada explicação rival e mantém lado a lado os ganhos de segurança e os custos operacionais.
Continue estudando — aula 06 (capítulo 06 de 08)
← Capítulo 05 · Índice das aulas · Capítulo 07 →
Continue para a próxima aula já escrita.