O que é uma classe SVM e como funciona?

14

Eu estava usando uma classe SVM , implementada no scikit-learn, para o meu trabalho de pesquisa. Mas não tenho um bom entendimento disso.

Alguém pode dar uma explicação simples e boa de uma classe SVM ?

Nilani Algiriyage
fonte

Respostas:

18

O problema solucionado pelo One Class SVM, como diz a documentação, é a detecção de novidades . O documento original que descreve como usar SVMs para esta tarefa é " Método de vetor de suporte para detecção de novidades ".

A idéia da detecção de novidade é detectar eventos raros, ou seja, eventos que acontecem raramente e, portanto, dos quais você tem muito poucas amostras. O problema é que a maneira usual de treinar um classificador não funcionará.

Então, como você decide o que é um novo padrão? Muitas abordagens são baseadas na estimativa da densidade de probabilidade dos dados. Novidade corresponde àquelas amostras em que a densidade de probabilidade é "muito baixa". Quão baixo depende da aplicação.

Agora, os SVMs são métodos de margem máxima, ou seja, não modelam uma distribuição de probabilidade. Aqui, a idéia é encontrar uma função que seja positiva para regiões com alta densidade de pontos e negativa para pequenas densidades.

Os detalhes são apresentados no artigo. ;) Se você realmente pretende ler o documento, entenda primeiro as configurações do algoritmo SVM básico para classificação. Tornará muito mais fácil entender os limites e a motivação do algoritmo.

jpmuc
fonte
O papel que você vinculou ao papel original para SVMs de uma classe?
user3731622
sim, mas por que isso importa?
Jpmuc 27/09/19
Eu estava apenas tentando rastrear as origens do SVM de uma classe.
user3731622
0

Você pode usar o One Class SVM para algum pipeline do Active Learning de alguma maneira semi-supervisionada.

Ex: como o SVM lida com um método de margem máxima, conforme descrito anteriormente, você pode considerar essas regiões de margem como limites para alguma classe específica e executar a nova identificação.

Flavio
fonte
A postagem está faltando em detalhes, você declara que é usada em pipelines de aprendizado ativos, mas não está claro por que ou como. Qual o papel que desempenha e por que é relevante para esse uso?
ReneBt 28/02