Diferença entre ep-SVR e nu-SVR (e SVR de mínimos quadrados)

11

Estou tentando descobrir qual SVR é adequado para esse tipo de dados.

Conheço 4 tipos de SVRs:

  • epsilon
  • nu
  • mínimos quadrados e
  • linear.

Entendo que o SVR linear é mais ou menos como o laço com L1 Reg, mas qual é a diferença entre as três técnicas restantes?

Sharath Chandra
fonte

Respostas:

11

No -SVR, o parâmetro é usado para determinar a proporção do número de vetores de suporte que você deseja manter em sua solução em relação ao número total de amostras no conjunto de dados. No -SVR, o parâmetro é introduzido na formulação do problema de otimização e é estimado automaticamente (idealmente) para você.ν ν ϵνννϵ

No entanto, no -SVR, você não tem controle sobre quantos vetores de dados do conjunto de dados se tornam vetores de suporte, podem ser alguns, podem ser muitos. No entanto, você terá controle total de quanto erro permitirá que seu modelo tenha, e qualquer coisa além do especificado será penalizado na proporção de , que é o parâmetro de regularização.£ CϵϵC

Dependendo do que eu quero, eu escolho entre os dois. Se estou realmente desesperado por uma solução pequena (menos vetores de suporte), escolho -SVR e espero obter um modelo decente. Mas se eu realmente quiser controlar a quantidade de erros no meu modelo e buscar o melhor desempenho, escolho -SVR e espero que o modelo não seja muito complexo (muitos vetores de suporte).ϵνϵ

Pablo Rivas
fonte
5

A diferença entre -SVR e -SVR é como o problema de treinamento é parametrizado. Ambos usam um tipo de perda de dobradiça na função de custo. O parâmetro em -SVM pode ser usado para controlar a quantidade de vetores de suporte no modelo resultante. Dados os parâmetros apropriados, o mesmo problema é resolvido. 1ν ν νϵννν

SVR de mínimos quadrados difere dos outros dois usando resíduos quadrados na função de custo em vez de perda de dobradiça.

1 : C.-C. Chang e C.-J. Lin. Regressão do vetor Training -support: Teoria e algoritmosν . Neural Computation, 14 (8): 1959-1977, 2002.

Marc Claesen
fonte
Obrigado pela sua resposta Marc. Então, podemos distinguir o método adequado com base no conjunto de dados que temos? Se sim, você pode me dar algumas dicas? Eu tenho 40000 amostras com 200 saídas distintas. Portanto, pode-se pensar em 200 conjuntos de 200 amostras únicas. No entanto, a entrada para todos os 40000 é diferente, apenas a saída é exclusiva para 200 amostras.
precisa saber é o seguinte
0

Eu gosto das respostas de Pablo e Marc. Um ponto adicional:

No artigo citado por Marc está escrito (seção 4)

"A motivação de -SVR é que pode não ser fácil decidir o parâmetro . Portanto, aqui estamos interessados ​​no possível intervalo de . Como esperado, os resultados mostram que está relacionado aos valores-alvo .νϵϵϵy

[...]

Como o intervalo efetivo de é afetado pelos valores-alvo , uma maneira de resolver essa dificuldade para -SVM é escalando os valores-alvo antes de treinar os dados. Por exemplo, se todos os valores de destino forem redimensionados para , o intervalo efetivo de será , o mesmo que o de . Então pode ser mais fácil escolher ".ϵyϵ[1,+1]ϵ[0,1]νϵ

Isso me leva a pensar que deveria ser mais fácil escalar suas variáveis ​​de destino e usar -SVR, do que tentar decidir se deseja usar ou SVR.ϵϵν

O que você acha?

spec3
fonte