Sintonize na YOLO Vision 2025!
25 de setembro de 2025
10:00 — 18:00 BST
Evento híbrido
Yolo Vision 2024
Glossário

Máquina de Vetores de Suporte (SVM)

Descubra o poder das Máquinas de Vetores de Suporte (SVMs) para classificação, regressão e detecção de outliers, com aplicações e insights do mundo real.

A Máquina de Vetores de Suporte (SVM) é um algoritmo de aprendizado supervisionado poderoso e versátil usado tanto para tarefas de classificação quanto de regressão. Em sua essência, uma SVM encontra um hiperplano ou limite de decisão ideal que melhor separa os pontos de dados em diferentes classes. O que torna a SVM particularmente eficaz é seu objetivo de maximizar a margem—a distância entre o hiperplano de separação e os pontos de dados mais próximos de qualquer classe. Este princípio, detalhado no artigo fundamental de Cortes e Vapnik, ajuda a melhorar a capacidade de generalização do modelo, tornando-o menos propenso a overfitting.

Como Funcionam as SVMs

O algoritmo funciona plotando cada item de dados como um ponto em um espaço n-dimensional (onde n é o número de características). A classificação é então realizada encontrando o hiperplano que cria a melhor separação entre as classes.

  • Hiperplano: Esta é a fronteira de decisão. Em um conjunto de dados com duas características, é uma linha; com três, é um plano. Para mais características, torna-se um hiperplano.
  • Vetores de Suporte: São os pontos de dados que estão mais próximos do hiperplano. Eles são críticos porque definem a margem, e removê-los alteraria a posição do hiperplano. Uma excelente visualização de vetores de suporte pode ser encontrada nas notas de aula CS229 de Stanford.
  • Margem: A margem é a distância entre os vetores de suporte e o hiperplano. O objetivo do SVM é encontrar o hiperplano que maximize essa margem, criando a separação mais robusta possível.
  • O Truque do Kernel: Para dados que não são linearmente separáveis, os SVMs usam uma técnica chamada truque do kernel. Este método poderoso envolve transformar os dados em um espaço de dimensão superior onde um separador linear pode ser encontrado sem calcular explicitamente as coordenadas dos dados nesse novo espaço. Kernels populares como a Função de Base Radial (RBF) podem lidar com relacionamentos não lineares muito complexos. Você pode explorar um guia para SVM kernels para obter mais detalhes.

Aplicações no Mundo Real

SVMs são eficazes em muitos domínios, especialmente para problemas com dados de alta dimensionalidade.

  • Bioinformática: Em genômica e proteômica, os SVMs são usados para classificar proteínas e analisar dados de expressão gênica. Por exemplo, eles podem ajudar na identificação de subtipos de câncer com base em dados de microarray, uma tarefa que envolve milhares de recursos. Isso os torna uma ferramenta vital em IA para saúde.
  • Classificação de Imagens: Antes do domínio das redes neurais profundas, os SVMs eram um modelo de alto desempenho para classificação de imagens. Eles têm sido usados com sucesso para tarefas como reconhecimento de dígitos manuscritos em conjuntos de dados como o MNIST e reconhecimento de objetos no Caltech-101.
  • Classificação de Texto: Em Processamento de Linguagem Natural (PNL), os SVMs são eficazes para tarefas como detecção de spam e análise de sentimento. Eles podem gerenciar eficientemente os espaços de características de alta dimensão criados por métodos de vetorização de texto.

SVM vs. Outros Algoritmos

Comparado a algoritmos mais simples como Regressão Logística, os SVMs visam maximizar a margem em vez de apenas encontrar um limite separador, o que pode levar a uma melhor generalização. Ao contrário de métodos baseados em árvores, como Árvores de Decisão ou Random Forests, os SVMs constroem um único hiperplano ideal (possivelmente em um espaço de alta dimensão). Enquanto os modelos modernos de aprendizado profundo, como o Ultralytics YOLO, se destacam na extração de características automática de dados brutos (como pixels em visão computacional (CV)), os SVMs geralmente exigem uma engenharia de características cuidadosa, mas podem ter um desempenho excepcionalmente bom em conjuntos de dados menores ou tipos específicos de dados estruturados onde as características são bem definidas. Você pode encontrar muitos desses conjuntos de dados no Repositório de Machine Learning da UCI.

Implementações populares incluem LibSVM e o módulo SVM em scikit-learn. Embora o SVM não seja tipicamente o núcleo das estruturas de CV modernas como PyTorch ou TensorFlow, ele pode ser integrado em fluxos de trabalho mais amplos. O treinamento e o gerenciamento de tais modelos, juntamente com vários outros, podem ser simplificados usando plataformas como o Ultralytics HUB, que simplifica o ciclo de vida do MLOps desde a rotulagem de dados até o ajuste de hiperparâmetros e a implantação final do modelo.

Junte-se à comunidade Ultralytics

Junte-se ao futuro da IA. Conecte-se, colabore e cresça com inovadores globais

Junte-se agora
Link copiado para a área de transferência