Fundamentos
Funções de activation: ReLU, GELU e SwiGLU
Activations moldam sinais e gradientes; variantes com gates gastam mais parâmetros para controlar a transmissão de features.
Atualizada em
1
Conceito
Uma função de activation fica entre mapas afins aprendidos e torna a composição não linear. Ela também controla quais sinais e gradientes atravessam a rede. Uma boa activation é barata, previsível na escala esperada e favorável à otimização. A curva sozinha não decide seus efeitos: inicialização, normalização, largura, kernels e orçamento de parâmetros interagem com a escolha.
ReLU é . Entradas positivas passam; negativas viram zero. A função é contínua, barata e linear por partes. No lado positivo, sua derivada é um; no negativo, zero. Exatamente em zero, o software adota uma convenção. ReLU evita a saturação ampla de sigmoid e tanh em entradas positivas, o que ajudou redes profundas.
Saída zero pode gerar activations esparsas, mas o gradiente zero do lado negativo traz risco. Se a pre-activation de uma unidade permanece negativa em todos os exemplos relevantes, o gradiente por aquele caminho some e a unidade pode “morrer”. Bias, learning rate, escala e inicialização influenciam isso. Leaky ReLU preserva uma pequena inclinação negativa, trocando esparsidade rígida por possibilidade de recuperação.
GELU aplica um gate suave dependente de magnitude, normalmente , onde é a função de distribuição normal padrão. Diferente de ReLU, produz pequenas saídas negativas e faz transição suave ao redor de zero. Implementações podem usar aproximação. A fórmula sugere a intuição de ponderar suavemente entradas, mas GELU é determinística na inferência comum.
SiLU, também chamada swish nessa forma, calcula . É outra activation suave e não monotônica com região negativa pequena. SwiGLU usa SiLU numa gated linear unit. Uma forma comum é
seguida por projeção de saída. Uma branch decide quanto da branch de conteúdo passa, tornando o gating aprendido e dependente da entrada.
Comparar SwiGLU com MLP de ReLU ou GELU exige orçamentos iguais. SwiGLU usa projeções de entrada adicionais; manter largura idêntica aumenta parâmetros e compute. Arquiteturas ajustam a largura intermediária para comparar totais. Um ganho com contagem diferente não pode ser atribuído limpidamente à activation. A disponibilidade de kernels também muda tempo real, mesmo com FLOPs parecidos.
Activations influenciam distribuições ao longo da profundidade. Entradas grandes amplificam saídas ou gradientes; regiões saturadas suprimem aprendizagem; médias não nulas deslocam camadas seguintes. Normalização e residual paths limitam efeitos em Transformers. Precisão mista acrescenta questões: formulações estáveis e kernels fundidos evitam overflow, rounding e tráfego de memória desnecessário.
A pergunta correta não é “qual activation é a melhor?”, mas “nesta arquitetura e orçamento, que comportamento ela permite e o que o experimento controlou?”. ReLU oferece baseline transparente. GELU fornece gating suave usado em várias famílias. SwiGLU acrescenta seleção multiplicativa aprendida, comum em blocos feed-forward modernos. As três moldam a função e o caminho de otimização; nenhuma explica sozinha a inteligência do modelo.
Compare sempre a fórmula e o dtype exatos da implementação. Uma aproximação e um kernel fundido podem diferir da curva simbólica mesmo compartilhando o nome. Registre também activations por camada: porcentagem de zeros em ReLU, magnitudes extremas e distribuição dos gates. Esses dados mostram se a função opera no regime pretendido ou se a escala anterior a empurrou para uma região quase inativa.
2
Como explicar para uma criança de cinco anos
Um estúdio passa cada microfone por um tipo de gate. ReLU é um noise gate rígido: sinal negativo fecha, positivo passa. GELU é um gate suave que atenua níveis incertos. SwiGLU separa o canal: um caminho leva conteúdo e outro controla quanto passa. A escolha muda tanto o som adiante quanto o feedback que as pessoas recebem ao ajustar equipamentos anteriores.
3
Ensine de volta
Compare ReLU, GELU e SwiGLU no comportamento forward, nos gradientes e no custo de parâmetros.
Mínimo: 80 caracteres e 15 palavras. Seu texto fica somente neste navegador.
Salvo somente neste dispositivo.
Ver uma resposta-modelo
ReLU calcula max(0,x), é barata e gera zeros esparsos, mas tem gradiente zero no lado negativo. GELU escala entradas suavemente conforme a magnitude, permitindo pequenas saídas negativas e derivadas suaves. SwiGLU usa duas projeções, aplica SiLU como gate numa branch, multiplica pela outra e projeta de volta; acrescenta capacidade de gating e muda a conta de parâmetros e compute. Nenhuma é universalmente melhor.
4
Teste seu entendimento
Conclua o teach-back e acerte o quiz para finalizar a aula.
Fontes
- Dan Hendrycks e Kevin Gimpel (2016). Gaussian Error Linear Units (GELUs).
- Noam Shazeer (2020). GLU Variants Improve Transformer.