Glossário

Softmax

Descobre como o Softmax transforma pontuações em probabilidades para tarefas de classificação em IA, potenciando o reconhecimento de imagens e o sucesso da PNL.

Treina os modelos YOLO simplesmente
com Ultralytics HUB

Aprende mais

Na aprendizagem automática, em particular nas redes neuronais, o Softmax é uma função de ativação fundamental, normalmente utilizada na camada de saída de modelos concebidos para tarefas de classificação multi-classe. O seu papel principal é converter um vetor de pontuações de saída brutas, muitas vezes referidas como logits, numa distribuição de probabilidade. Essa transformação garante que os valores de saída sejam não-negativos e somados a um, permitindo que sejam interpretados como a confiança ou a probabilidade do modelo para cada classe potencial.

Como funciona a Softmax

A função Softmax opera em um vetor de pontuações de valor real geradas pela camada anterior de uma rede neural. Primeiro, exponencia cada pontuação, tornando todos os valores positivos. Em seguida, normaliza essas pontuações exponenciadas, dividindo cada uma delas pela soma de todas as pontuações exponenciadas no vetor. Essa etapa de normalização garante que os valores de saída resultantes formem coletivamente uma distribuição de probabilidade válida, em que cada valor representa a probabilidade de a entrada pertencer a uma classe específica, e a soma de todas as probabilidades é igual a 1. Isso torna o resultado do modelo facilmente interpretável para a tomada de decisões.

Aplicações da Softmax

O Softmax é indispensável em cenários em que uma entrada tem de ser atribuída a uma de várias categorias mutuamente exclusivas. Eis algumas aplicações importantes:

Softmax vs. Outras Funções de Ativação

É importante distinguir o Softmax de outras funções de ativação utilizadas em redes neuronais:

  • ReLU (Unidade Linear Retificada): A ReLU e suas variantes (como a Leaky ReLU) são usadas principalmente nas camadas ocultas de uma rede para introduzir não-linearidade, ajudando o modelo a aprender padrões complexos. Elas não produzem distribuições de probabilidade.
  • Sigmoide: A função Sigmoide produz um valor entre 0 e 1, muitas vezes interpretado como uma probabilidade. Normalmente, é usada para problemas de classificação binária (um nó de saída) ou problemas de classificação com vários rótulos (vários nós de saída, cada um tratado de forma independente). Ao contrário da Softmax, os resultados da Sigmoide para várias classes não somam necessariamente 1.
  • Tanh (Tangente hiperbólica): Semelhante à Sigmoide, mas com valores de saída entre -1 e 1, a Tanh também é usada em camadas ocultas para introduzir não-linearidade.

Papel na avaliação do modelo

Os resultados de probabilidade gerados pelo Softmax são essenciais para avaliar o desempenho dos modelos de classificação. Essas probabilidades são usadas para calcular métricas cruciais, como exatidão, precisão, recuperação e a pontuação F1. Estas métricas fornecem informações sobre o desempenho do modelo, orientando processos como a afinação de hiperparâmetros e a avaliação geral do modelo. Estruturas como PyTorch e TensorFlow fornecem implementações eficientes da função Softmax.

Em resumo, o Softmax é um componente crítico na arquitetura dos modelos de classificação multi-classe, permitindo resultados probabilísticos interpretáveis em diversos campos da IA, desde a visão computacional à PNL. Para gerir o ciclo de vida dos modelos que utilizam o Softmax, plataformas como o Ultralytics HUB oferecem ferramentas para formação, implementação e monitorização.

Lê tudo