Dados los vectores de soporte de un SVM lineal, ¿cómo puedo calcular la ecuación del límite de decisión?
fuente
Dados los vectores de soporte de un SVM lineal, ¿cómo puedo calcular la ecuación del límite de decisión?
The Elements of Statistical Learning , de Hastie et al., Tiene un capítulo completo sobre clasificadores de vectores de soporte y SVM (en su caso, comience la página 418 en la segunda edición). Otro buen tutorial es Support Vector Machines en R , de David Meyer.
De la ayuda ksvm()
en línea de en el paquete kernlab R, pero vea también kernlab: un paquete S4 para métodos de kernel en R , aquí hay un ejemplo de juguete:
set.seed(101)
x <- rbind(matrix(rnorm(120),,2),matrix(rnorm(120,mean=3),,2))
y <- matrix(c(rep(1,60),rep(-1,60)))
svp <- ksvm(x,y,type="C-svc")
plot(svp,data=x)
Tenga en cuenta que, en aras de la claridad, no consideramos muestras de entrenamiento y prueba. Los resultados se muestran a continuación, donde el sombreado de color ayuda a visualizar los valores de decisión ajustados; valores alrededor de 0 están en el límite de decisión.
Llamar attributes(svp)
le proporciona atributos a los que puede acceder, por ejemplo
alpha(svp) # support vectors whose indices may be
# found with alphaindex(svp)
b(svp) # (negative) intercept
Entonces, para mostrar el límite de decisión, con su margen correspondiente, intentemos lo siguiente (en el espacio reescalado), que se inspira en gran medida de un tutorial sobre SVM realizado hace algún tiempo por Jean-Philippe Vert :
plot(scale(x), col=y+2, pch=y+2, xlab="", ylab="")
w <- colSums(coef(svp)[[1]] * x[unlist(alphaindex(svp)),])
b <- b(svp)
abline(b/w[1],-w[2]/w[1])
abline((b+1)/w[1],-w[2]/w[1],lty=2)
abline((b-1)/w[1],-w[2]/w[1],lty=2)
Y aquí está:
Es una combinación lineal de los vectores de soporte donde los coeficientes están dados por los multiplicadores de Lagrange correspondientes a estos vectores de soporte.
[ASK QUESTION]
en en la parte superior de la página y pregúntela allí, entonces podemos ayudarlo adecuadamente. Como es nuevo aquí, puede leer nuestra página de recorrido , que contiene información para nuevos usuarios.