Difusão Prof. Anderson Rocha Tavares Bloco 4 · Slide 1 / 3
A U-Net: Um Autoencoder com Memória
Bloco 4 — A Arquitetura por Trás da Difusão
🏗️ Lendo o Diagrama
📐
O que é 256×256?

É a resolução espacial do mapa de ativações naquele nível — começa igual ao tamanho da imagem de entrada. A cada Pool↓, cai pela metade: 256 → 128 → 64 → 32 → 16.

🎛️
O que é 64ch?

Sim — são 64 filtros convolucionais. Cada filtro detecta um padrão diferente (bordas, texturas…). O encoder dobra os canais a cada nível enquanto reduz a resolução: 64 → 128 → 256 → 512 → 1024ch.

🗜️
Compressão do Gargalo

Entrada: 256×256×3 = 196.608 valores. Gargalo: 16×16×1024 = 262.144 valores. Surpresa: o tensor do gargalo é maior em valores brutos! A compressão é espacial — cada célula 16×16 precisa capturar o contexto de uma região 16×16 da entrada.

🔄
Pool↓ vs Up↑ — Opostos

Pool↓ (max/avg pooling) descarta pixels, reduzindo a resolução pela metade — operação sem pesos.
UpConv (convolução transposta) faz o inverso: aprende a expandir, dobrando a resolução. Tem pesos treináveis — é como uma "deconvolução".

🔤 O formato do diagrama lembra um U — daí o nome. É um autoencoder com atalhos (skip connections) entre os dois lados.
📐 Diagrama U-Net
ENCODER DECODER 🖼️ x_t (entrada ruidosa) 256×256×3 (RGB) 🎯 ε̂ (ruído previsto) Enc 1 — Conv×2 256×256 · 64ch Pool↓ Enc 2 — Conv×2 128×128 · 128ch Pool↓ Enc 3 — Conv×2 64×64 · 256ch Pool↓ Enc 4 — Conv×2 32×32 · 512ch Gargalo 16×16 · 1024ch Dec 1 — UpConv 32×32 · 512ch Up↑ Dec 2 — UpConv 64×64 · 256ch Up↑ Dec 3 — UpConv 128×128 · 128ch Up↑ Dec 4 — UpConv 256×256 · 64ch Skip Connection Encoder Decoder Gargalo