Respuesta corta: puedes, pero no deberías. Utilice LIBSVM en su lugar.
Respuesta larga:
La capacitación de una máquina de vectores de soporte implica resolver un problema de optimización convexa. Este problema puede reformularse de muchas formas, dos de las más comunes son las denominadas formulaciones “primarias” y “duales”. En la formulación primaria, usted optimiza directamente sobre los términos pesos y sesgo b de la SVM, mientras que en la dual optimiza un problema aparentemente no relacionado sobre algunos coeficientes alfa dobles, pero que también puede usarse indirectamente para obtener predicciones de la SVM en la predicción tiempo, incluso si no tiene los pesos w.
- ¿Es CLRS realmente una 'introducción'? Si es así, ¿qué sigue?
- ¿Qué es la representación de colas usando array?
- ¿Por qué la complejidad temporal no devuelve el tiempo de ejecución exacto de un algoritmo?
- Cómo resolver la pregunta 'Mango Plantation' en Codechef
- ¿Cómo realizo la codificación de huffman usando lista enlazada?
Pegasos es esencialmente un algoritmo de optimización de Descenso de Subgradiente Estocástico (+ algunos trucos) que resuelve la formulación primaria, optimizando directamente los pesos w. Sin embargo, cuando se usa el truco del kernel, los pesos vivirán en el espacio del kernel, lo que en general significa que no puede tener una representación directa de ellos. Por lo tanto, es mucho más fácil resolver la formulación dual, donde aún puede optimizar sobre los coeficientes alfa dobles.
El artículo de Pegasos (http://ttic.uchicago.edu/~nati/P…) presenta una forma de modificar el algoritmo para resolver un SVM kernelized. Sin embargo, al hacerlo, el método pierde la mayor parte de su rendimiento y, por lo tanto, es mejor atenerse a los algoritmos que se desarrollaron específicamente para SVM kernelized. LIBSVM y su implementación del método de optimización secuencial mínima es probablemente la mejor opción allí