Zubnet AIAprenderWiki › Softmax
Fundamentos

Softmax

Também conhecido como: Função Softmax, Exponenciais Normalizadas
Uma função que converte um vetor de números brutos (logits) em uma distribuição de probabilidade — todos os valores se tornam positivos e somam 1. Softmax amplifica as diferenças entre valores: a maior entrada recebe a maior probabilidade, e entradas menores recebem probabilidades exponencialmente menores. Aparece em mecanismos de attention, saídas de classificação e predição de tokens.

Por que isso importa

Softmax está em todo lugar na IA moderna. Cada vez que um modelo de linguagem prediz o próximo token, softmax converte as saídas brutas do modelo em probabilidades. Cada head de attention usa softmax para computar pesos de attention. Cada classificador usa softmax para produzir probabilidades de classe. Entender softmax ajuda a compreender temperatura, amostragem top-p e por que modelos são "confiantes" mesmo quando estão errados.

Em profundidade

A fórmula: softmax(x_i) = exp(x_i) / ∑ exp(x_j). A exponencial amplifica as diferenças: se um logit é 10 e outro é 5, a razão após softmax não é 2:1 mas aproximadamente 150:1. Esse comportamento de "o vencedor leva quase tudo" é por que modelos tendem a ser confiantes — softmax naturalmente produz distribuições com picos em vez de uniformes.

Temperatura e Softmax

Temperatura é aplicada dividindo os logits antes do softmax: softmax(x_i / T). Temperatura T=1 é o padrão. T<1 aguiza a distribuição (mais confiante, mais determinístico). T>1 a achata (mais uniforme, mais aleatório). É exatamente assim que o parâmetro "temperatura" nas APIs de LLMs funciona — é um escalar aplicado aos logits antes do softmax final que seleciona o próximo token.

Estabilidade Numérica

Um detalhe prático de implementação: calcular exp(x) para valores grandes de x causa overflow. A correção padrão é subtrair o valor máximo de todos os logits antes de aplicar softmax: softmax(x_i - max(x)). Isso não muda o resultado (a constante subtraída se cancela na razão) mas mantém os números em uma faixa manejável. Toda implementação de softmax em produção faz isso, e é o tipo de detalhe que importa quando se constrói do zero.

Conceitos relacionados

← Todos os termos
← Sobreajuste Sparse Autoencoder →