◇ OpenCyber Academy
Engenharia · Capítulo 6 · Português

Capítulo 6 — Cálculo II

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 6 — Cálculo II

Mapa da aula

Aula 06 publicada. Mapa, exemplo, EX016.

flowchart TD
  N0["6.1 Derivadas parciais e gradientes"]
  N1["6.2 A regra da cadeia multivariada"]
  N2["6.3 Aproximação de Taylor e mudança no pior caso"]
  N3["6.4 Constantes de Lipschitz"]
  N4["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4
  N4 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX016"]

Desenho lógico

flowchart LR
  N0["6.1 Derivadas parciais e gradientes"]
  N1["6.2 A regra da cadeia multivariada"]
  N2["6.3 Aproximação de Taylor e mudança no pior caso"]
  N3["6.4 Constantes de Lipschitz"]
  N4["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> Q["EX016"]
[6.1 Derivadas parciais e gradientes]
    |
    v
[6.2 A regra da cadeia multivariada]
    |
    v
[6.3 Aproximação de Taylor e mudança no pior caso]
    |
    v
[6.4 Constantes de Lipschitz]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX016]

Objetivos de aprendizagem

Você vai (1) calcular derivadas parciais e gradientes de funções de várias variáveis; (2) usar a regra da cadeia em composições (a base da retropropagação); (3) aplicar aproximações de Taylor para estimar mudanças na saída; e (4) relacionar normas de gradiente e constantes de Lipschitz à robustez.

6.1 Derivadas parciais e gradientes

Para f(x₁, …, xₙ), a derivada parcial ∂f/∂xᵢ mantém as outras variáveis fixas. O gradiente ∇f as reúne num vetor que aponta na direção de maior crescimento. Para uma pontuação linear s = w·x + b, ∇ₓ s = w: os pesos são o gradiente em relação à entrada, e é por isso que modelos lineares são fáceis de atacar ao longo de sign(w). Num modelo linear, a direção de ataque fica, portanto, visível nos próprios pesos. Quem os obtiver, por exemplo a partir de um arquivo de modelo vazado, sabe exatamente quais atributos empurrar e em que direção. Em modelos não lineares o gradiente muda de entrada para entrada, mas o mesmo raciocínio vale localmente em torno de cada uma.

6.2 A regra da cadeia multivariada

Redes neurais são composições f = f_L ∘ … ∘ f₁. A regra da cadeia multiplica matrizes jacobianas camada por camada; a retropropagação calcula esse produto de forma eficiente, da saída para trás. O mesmo algoritmo dá gradientes em relação às entradas, que os ataques de caixa-branca usam. A retropropagação economiza trabalho ao reutilizar produtos intermediários, de modo que calcular o gradiente para todas as entradas custa mais ou menos o mesmo que uma passada direta. Essa eficiência é o motivo de os ataques de caixa-branca serem baratos: um atacante com o arquivo do modelo consegue calcular em milissegundos a direção mais danosa para qualquer entrada. Proteger os pesos do modelo é, portanto, parte da defesa contra evasão, e não apenas uma questão de propriedade intelectual.

6.3 Aproximação de Taylor e mudança no pior caso

Taylor de primeira ordem: f(x + δ) ≈ f(x) + ∇f(x)·δ. Se um atacante pode mudar cada atributo em no máximo ε (um orçamento L∞), a maior mudança de primeira ordem é ε·‖∇f(x)‖₁, atingida com δ = ε·sign(∇f(x)) — exatamente o passo do FGSM (Goodfellow et al., arXiv:1412.6572). Sob um orçamento L2, a pior mudança é ε·‖∇f(x)‖₂. As normas importam: um gradiente com muitas componentes pequenas ainda pode ter uma norma L1 grande em altas dimensões, o que é uma das explicações para a vulnerabilidade adversarial de modelos de alta dimensão. A aproximação só é precisa para ε pequeno, então engenheiros a usam como estimativa rápida e depois testam o modelo real com perturbações efetivas.

6.4 Constantes de Lipschitz

Uma função é L-Lipschitz se |f(x) − f(y)| ≤ L‖x − y‖. Se a margem de um classificador em x é m e sua pontuação é L-Lipschitz, nenhuma perturbação menor que m/L consegue inverter a decisão — um certificado. Calcular um L justo para redes profundas é difícil, e é por isso que métodos certificados como o randomized smoothing (Cohen et al., arXiv:1902.02918) usam argumentos probabilísticos. Um certificado é mais forte do que um resultado de teste: garante que nenhum ataque dentro do raio pode ter sucesso, por mais engenhoso que seja. Limites folgados ainda dão certificados válidos, mas o raio garantido pode ficar pequeno demais para importar.

6.5 Exemplo resolvido (caso sintético da NRS)

A pontuação de anomalia de rolamentos do Pulse é s = 0.9·t + 0.4·v − 0.2·h + c (temperatura, vibração, umidade, normalizadas). Com ε = 0.1 por atributo, a pior mudança de primeira ordem é 0.1 × (0.9 + 0.4 + 0.2) = 0.15. Sam compara isso com a margem típica (0.3) e conclui que um atacante que falsifica sensores, limitado a ±0.1, não consegue esconder um rolamento claramente quente, mas consegue esconder os limítrofes. Os pesos dão diretamente a pior direção: aumentar a umidade e reduzir a temperatura e a vibração, cada uma em 0.1. Uma margem de 0.3 é o dobro da pior mudança, então rolamentos claramente quentes continuam sinalizados, mas qualquer rolamento cuja pontuação esteja a menos de 0.15 do limiar poderia ser escondido. Sam registra essa faixa como risco residual e sugere cruzar as leituras limítrofes com um segundo sensor.

6.6 Erros e limites

Três erros são comuns: usar estimativas de primeira ordem longe do ponto em que elas são precisas; confundir orçamentos L1, L2 e L∞; e tratar um gradiente local como limite global. Estimativas de primeira ordem funcionam perto do ponto medido e ficam pouco confiáveis para mudanças maiores, em que a curvatura domina. Misturar normas produz limites errados por um fator que cresce com o número de atributos. Um gradiente local nada diz sobre entradas distantes, por isso Sam sempre combina as estimativas com testes usando perturbações reais e declara a norma do orçamento em todo resultado que relata.

Exercícios

Síntese

Gradientes e normas transformam "mudança pequena" num número. Eles explicam por que os ataques funcionam, como os piores casos são limitados e por que certificados são possíveis, mas difíceis, para modelos profundos.

Continue estudando — capítulo 06 de 50

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