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 é ReLU(x)=max(0,x)\operatorname{ReLU}(x)=\max(0,x). 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 xΦ(x)x\Phi(x), onde Φ\Phi é 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 xσ(x)x\sigma(x). É outra activation suave e não monotônica com região negativa pequena. SwiGLU usa SiLU numa gated linear unit. Uma forma comum é

SwiGLU(x)=SiLU(xWg)(xWv),\operatorname{SwiGLU}(x)=\operatorname{SiLU}(xW_g)\odot(xW_v),

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

1. Qual é a derivada da ReLU para uma entrada estritamente negativa?
Resposta e explicação

Zero — Uma unidade que permanece negativa não recebe gradiente local por esse caminho ReLU.

2. O que distingue uma activation da família GLU?
Resposta e explicação

Uma branch projetada controla outra por multiplicação — O gate multiplicativo torna a transmissão de features dependente da entrada.

Conclua o teach-back e acerte o quiz para finalizar a aula.

Fontes

  1. Dan Hendrycks e Kevin Gimpel (2016). Gaussian Error Linear Units (GELUs).
  2. Noam Shazeer (2020). GLU Variants Improve Transformer.