Qual é a diferença entre Máquinas de vetores de suporte e Análise discriminante linear?
Qual é a diferença entre Máquinas de vetores de suporte e Análise discriminante linear?
Respostas:
LDA: Supõe: os dados são normalmente distribuídos. Todos os grupos são distribuídos de forma idêntica, caso os grupos possuam matrizes de covariância diferentes, a LDA se torna Análise Quadrática Discriminante. O LDA é o melhor discriminador disponível, caso todas as premissas sejam realmente atendidas. QDA, a propósito, é um classificador não linear.
SVM: generaliza o hiperplano de separação ideal (OSH). O OSH assume que todos os grupos são totalmente separáveis, o SVM utiliza uma 'variável de folga' que permite uma certa quantidade de sobreposição entre os grupos. O SVM não faz nenhuma suposição sobre os dados, o que significa que é um método muito flexível. Por outro lado, a flexibilidade dificulta a interpretação dos resultados de um classificador SVM, em comparação com o LDA.
A classificação SVM é um problema de otimização, a LDA possui uma solução analítica. O problema de otimização para o SVM possui uma formulação dupla e primária que permite ao usuário otimizar o número de pontos de dados ou o número de variáveis, dependendo de qual método é o mais viável computacionalmente. O SVM também pode usar kernels para transformar o classificador SVM de um classificador linear em um classificador não linear. Use seu mecanismo de pesquisa favorito para pesquisar 'truque do kernel do SVM' e ver como o SVM usa os kernels para transformar o espaço dos parâmetros.
A LDA utiliza todo o conjunto de dados para estimar matrizes de covariância e, portanto, é um pouco propenso a discrepâncias. O SVM é otimizado em um subconjunto de dados, que são os pontos de dados que ficam na margem de separação. Os pontos de dados usados para otimização são chamados vetores de suporte, porque determinam como o SVM discrimina entre os grupos e, portanto, suportam a classificação.
Até onde eu sei, o SVM realmente não discrimina bem entre mais de duas classes. Uma alternativa robusta e discrepante é usar a classificação logística. O LDA lida bem com várias classes, desde que as suposições sejam atendidas. Acredito, no entanto (aviso: alegação terrivelmente infundada), que vários benchmarks antigos descobriram que o LDA geralmente tem um desempenho muito bom sob muitas circunstâncias e que o LDA / QDA geralmente é usado como método na análise inicial.
Em resumo: LDA e SVM têm muito pouco em comum. Felizmente, ambos são tremendamente úteis.
O SVM se concentra apenas nos pontos difíceis de classificar, o LDA se concentra em todos os pontos de dados. Esses pontos difíceis estão próximos do limite de decisão e são chamados de vetores de suporte . O limite de decisão pode ser linear, mas também, por exemplo, um núcleo RBF ou um núcleo polinomial. Onde LDA é uma transformação linear para maximizar a separabilidade.
A LDA assume que os pontos de dados têm a mesma covariância e a densidade de probabilidade é normalmente distribuída. SVM não tem essa suposição.
LDA é generativo, SVM é discriminativo.
As máquinas de vetores de suporte encontram um separador linear (combinação linear, hiperplano) que separa as classes com o menor erro e escolhe o separador com a margem máxima (a largura que o limite pode ser aumentado antes de atingir um ponto de dados).
Por exemplo, qual separador linear melhor separa as classes?
Aquele com a margem máxima:
A análise discriminante linear encontra os vetores médios de cada classe e, em seguida, encontra a direção da projeção (rotação) que maximiza a separação de médias:
Também leva em consideração a variação dentro da classe para encontrar uma projeção que minimize a sobreposição de distribuições (covariância) enquanto maximiza a separação de meios: