Vídeo: Lecture 03 -The Linear Model I 2024
A máquina de vetor de suporte (SVM) é um algoritmo de classificação de dados de análise preditiva que atribui novos elementos de dados para uma das categorias rotuladas. O SVM é, na maioria dos casos, um classificador binário ; assume que os dados em questão contém dois possíveis valores-alvo.
Outra versão do algoritmo SVM, multiclass SVM, aumenta SVM para ser usado como classificador em um conjunto de dados que contém mais de uma classe (agrupamento ou categoria). O SVM foi usado com sucesso em muitas aplicações, como reconhecimento de imagem, diagnóstico médico e análise de texto.
Suponha que você esteja projetando um modelo de análise preditiva que reconheça e preveja automaticamente o nome de um objeto em uma imagem. Este é essencialmente o problema do reconhecimento de imagem - ou, mais especificamente, reconhecimento de rosto: você deseja que o classificador reconheça o nome de uma pessoa em uma foto.
Bem, antes de abordar esse nível de complexidade, considere uma versão mais simples do mesmo problema: suponha que você tenha fotos de pedaços individuais de frutas e que você gostaria que seu classificador preveja que tipo de fruta aparece na imagem. Suponha que você tenha apenas dois tipos de frutas: maçãs e peras, uma por imagem.
Dada uma nova imagem, você gostaria de prever se a fruta é uma maçã ou uma pera - sem olhar para a foto. Você quer que o SVM classifique cada imagem como maçã ou pera. Como com todos os outros algoritmos, o primeiro passo é treinar o classificador.
Suponha que você tenha 200 fotos de diferentes maçãs e 200 fotos de peras. O passo de aprendizagem consiste em alimentar essas imagens ao classificador para que ele aprenda como é uma maçã e como é uma pera. Antes de entrar neste primeiro passo, você precisa transformar cada imagem em uma matriz de dados, usando (digamos) o pacote estatístico R.
Uma maneira simples de representar uma imagem como números em uma matriz é procurar formas geométricas dentro da imagem (como círculos, linhas, quadrados ou retângulos) e também as posições de cada instância de cada forma geométrica. Esses números também podem representar coordenadas desses objetos dentro da imagem, conforme planejado em um sistema de coordenadas.
Como você pode imaginar, representar uma imagem como uma matriz de números não é exatamente uma tarefa direta. Toda uma área de pesquisa é dedicada à representação de imagens.
O seguinte mostra como uma máquina de vetor de suporte pode prever a classe de uma fruta (rotulando-a matematicamente como maçã ou pera ), com base no que o algoritmo aprendeu no passado.
Suponha que você tenha convertido todas as imagens em matrizes de dados. Em seguida, a máquina de vetor de suporte leva duas entradas principais:
-
Dados anteriores (treinamento): Este conjunto de matrizes corresponde a imagens de maçãs e peras previamente vistas.
-
Os novos dados (não vistos) consistem em uma imagem convertida em uma matriz. O objetivo é prever automaticamente o que está na imagem - uma maçã ou uma pera.
O vetor de suporte usa uma função matemática, muitas vezes chamada de função do kernel , que é uma função matemática que combina os novos dados com a melhor imagem dos dados de treinamento para prever o rótulo da imagem desconhecida (maçã ou pera).
Em comparação com outros classificadores, as máquinas de vetor de suporte produzem previsões robustas e precisas, são menos afetadas por dados ruidosos e são menos propensas a superação. Tenha em mente, no entanto, que as máquinas de vetor de suporte são mais adequadas para a classificação binária - quando você tem apenas duas categorias (como maçã ou pera).