O Support Vector Machine é sensível à correlação entre os atributos?

11

Gostaria de treinar um SVM para classificar casos (TRUE / FALSE) com base em 20 atributos. Eu sei que alguns desses atributos são altamente correlacionados. Portanto, minha pergunta é: o SVM é sensível à correlação ou redundância entre os recursos? Alguma referência?

user7064
fonte
Meu palpite seria não, pois gerar uma separação com base em uma variável tornaria as outras variáveis ​​correlacionadas fracas em relação a outras separações. Pode haver alguma instabilidade em relação a qual variável é escolhida, no entanto.
Mandata
Você está falando de um kernel linear SVM, RBF ou ...?
Dougal 5/05
Hmmmm, eu não sei ... a resposta depende disso?
User7064 5/05
Sim absolutamente. Você pode criar um kernel para lidar explicitamente com as correlações, se desejar.
Dougal 5/05
11
@ Dougal: Se existem métodos para eliminar o efeito da correlação, isso não implica que o SVM padrão seja sensível à correlação?
cfh 5/05

Respostas:

12

Núcleo linear: O efeito aqui é semelhante ao da multicolinearidade na regressão linear. Seu modelo aprendido pode não ser particularmente estável contra pequenas variações no conjunto de treinamento, porque diferentes vetores de peso terão resultados semelhantes. As previsões do conjunto de treinamento, no entanto, serão razoavelmente estáveis, e também testarão as previsões se vierem da mesma distribuição.

Kernel RBF: O kernel RBF apenas analisa as distâncias entre os pontos de dados. Portanto, imagine que você tenha 11 atributos, mas um deles é repetido 10 vezes (um caso bastante extremo). Então esse atributo repetido contribuirá 10 vezes mais para a distância que qualquer outro atributo, e o modelo aprendido provavelmente será muito mais impactado por esse recurso.

Uma maneira simples de descontar correlações com um kernel RBF é usar a distância de Mahalanobis: , em que é um estimativa da matriz de covariância da amostra. Equivalentemente, mapeie todos os seus vetores para e use o kernel RBF regular, onde é tal que , por exemplo, a decomposição de Cholesky . SxCxCS - 1 =CTCS - 1d(x,y)=(xy)TS1(xy)SxCxCS1=CTCS1

Dougal
fonte
Esta é uma resposta muito interessante; Eu gostaria de ler mais sobre como mitigar esses tipos de problemas. Você pode adicionar uma referência ou duas?
Sycorax diz Restabelecer Monica
Não conheço uma boa mão, mas vou procurar um pouco, talvez hoje à noite.
Dougal 5/05
Impressionante! Caixa de entrada me se você encontrar um artigo legal. Fico feliz que meu (+1) possa colocar você acima de 3k. (-:
Sycorax diz Restabelecer Monica
11
A matriz inversa da covariância na distância de Mahalanobis é uma chave. Se você pode estimar com segurança, isso pode ser contabilizado.
Vladislavs Dovgalecs