En el aprendizaje automático , una máquina de vectores de soporte ( SVM ) o red de vectores de soporte [ 1 ] es un modelo supervisado de margen máximo con algoritmos de aprendizaje asociados que analizan datos para análisis de clasificación y regresión . Desarrolladas en los Laboratorios Bell de AT&T , [ 1 ] [ 2 ] las SVM son uno de los modelos más estudiados, basándose en marcos de aprendizaje estadístico de la teoría VC propuestos por Vapnik (1982, 1995) y Chervonenkis (1974).
Además de realizar la clasificación lineal , las SVM pueden realizar eficientemente la clasificación no lineal utilizando el truco del kernel , representando los datos solo a través de un conjunto de comparaciones de similitud por pares entre los puntos de datos originales utilizando una función kernel, que los transforma en coordenadas en un espacio de características de mayor dimensión . Por lo tanto, las SVM utilizan el truco del kernel para mapear implícitamente sus entradas a espacios de características de alta dimensión, donde se puede realizar la clasificación lineal. [ 3 ] Al ser modelos de margen máximo, las SVM son resistentes a los datos ruidosos (por ejemplo, ejemplos mal clasificados). Las SVM también se pueden utilizar para tareas de regresión , donde el objetivo se convierte en-sensible.
El algoritmo de agrupamiento de vectores de soporte [ 4 ] , creado por Hava Siegelmann y Vladimir Vapnik , aplica las estadísticas de vectores de soporte, desarrolladas en el algoritmo de máquinas de vectores de soporte, para categorizar datos sin etiquetar. Estos conjuntos de datos requieren enfoques de aprendizaje no supervisado , que intentan encontrar agrupaciones naturales de los datos y, posteriormente, asignar nuevos datos según estas agrupaciones.
La popularidad de las SVM probablemente se deba a su facilidad de análisis teórico y a su flexibilidad para aplicarse a una amplia variedad de tareas, incluidos los problemas de predicción estructurada . No está claro que las SVM tengan un mejor rendimiento predictivo que otros modelos lineales, como la regresión logística y la regresión lineal . [ 5 ]
Motivación

La clasificación de datos es una tarea común en el aprendizaje automático . Supongamos que algunos puntos de datos dados pertenecen cada uno a una de dos clases, y el objetivo es decidir a qué clase pertenecerá un nuevo punto de datos . En el caso de las máquinas de vectores de soporte, un punto de datos se considera como unvector de -dimensiones (una lista denúmeros), y queremos saber si podemos separar dichos puntos con unHiperplano de dimensión . Esto se denomina clasificador lineal . Existen muchos hiperplanos que podrían clasificar los datos. Una opción razonable como el mejor hiperplano es aquel que representa la mayor separación, o margen , entre las dos clases. Por lo tanto, elegimos el hiperplano de manera que la distancia desde este hasta el punto de datos más cercano en cada lado sea máxima. Si existe tal hiperplano, se le conoce como hiperplano de margen máximo y el clasificador lineal que define se conoce como clasificador de margen máximo ; o, equivalentemente, el perceptrón de estabilidad óptima . [ 6 ]
De manera más formal, una máquina de vectores de soporte construye un hiperplano o un conjunto de hiperplanos en un espacio de alta dimensión o de dimensión infinita, que puede usarse para clasificación , regresión u otras tareas como la detección de valores atípicos. [ 7 ] Intuitivamente, una buena separación se logra con el hiperplano que tiene la mayor distancia al punto de datos de entrenamiento más cercano de cualquier clase (el llamado margen funcional), ya que, en general, cuanto mayor sea el margen, menor será el error de generalización del clasificador. [ 8 ] Un error de generalización menor significa que el implementador tiene menos probabilidades de experimentar sobreajuste .
Si bien el problema original puede plantearse en un espacio de dimensión finita, a menudo ocurre que los conjuntos a discriminar no son linealmente separables en ese espacio. Por esta razón, se propuso [ 9 ] que el espacio original de dimensión finita se mapeara a un espacio de dimensión mucho mayor, lo que presumiblemente facilita la separación en ese espacio. Para mantener una carga computacional razonable, los mapeos utilizados por los esquemas SVM están diseñados para garantizar que los productos escalares de pares de vectores de datos de entrada se puedan calcular fácilmente en términos de las variables en el espacio original, definiéndolos en términos de una función kernel.seleccionado para adaptarse al problema. [ 10 ] Los hiperplanos en el espacio de dimensión superior se definen como el conjunto de puntos cuyo producto escalar con un vector en ese espacio es constante, donde dicho conjunto de vectores es un conjunto ortogonal (y por lo tanto mínimo) de vectores que define un hiperplano. Los vectores que definen los hiperplanos pueden elegirse como combinaciones lineales con parámetrosde imágenes de vectores de característicasque ocurren en la base de datos. Con esta elección de un hiperplano, los puntosen el espacio de características que se mapean en el hiperplano se definen por la relación Tenga en cuenta que sise vuelve pequeño a medida quese aleja cada vez más deCada término de la suma mide el grado de proximidad del punto de prueba.al punto de base de datos correspondienteDe esta manera, la suma de los núcleos anteriores se puede utilizar para medir la proximidad relativa de cada punto de prueba a los puntos de datos originados en uno u otro de los conjuntos que se van a discriminar. Nótese el hecho de que el conjunto de puntosComo resultado, la representación en cualquier hiperplano puede ser bastante compleja, lo que permite una discriminación mucho más compleja entre conjuntos que no son convexos en absoluto en el espacio original.
Aplicaciones
Las máquinas de vectores de soporte (SVM) se pueden utilizar para resolver diversos problemas del mundo real:
- Las SVM son útiles en la categorización de texto e hipertexto , ya que su aplicación puede reducir significativamente la necesidad de instancias de entrenamiento etiquetadas tanto en los entornos inductivos como transductivos estándar. [ 11 ] Algunos métodos para el análisis semántico superficial se basan en máquinas de vectores de soporte. [ 12 ]
- La clasificación de imágenes también puede realizarse mediante máquinas de vectores de soporte (SVM). Los resultados experimentales demuestran que las SVM alcanzan una precisión de búsqueda significativamente mayor que los esquemas tradicionales de refinamiento de consultas tras solo tres o cuatro rondas de retroalimentación de relevancia. Esto también se aplica a los sistemas de segmentación de imágenes , incluidos aquellos que utilizan una versión modificada de la SVM que emplea el enfoque privilegiado, como sugirió Vapnik. [ 13 ] [ 14 ]
- Clasificación de datos satelitales como datos SAR usando SVM supervisado. [ 15 ]
- Los caracteres escritos a mano se pueden reconocer usando SVM. [ 16 ] [ 17 ]
- El algoritmo SVM se ha aplicado ampliamente en las ciencias biológicas y otras disciplinas. Se ha utilizado para clasificar proteínas con hasta un 90 % de compuestos clasificados correctamente. Se han sugerido pruebas de permutación basadas en pesos SVM como mecanismo para la interpretación de modelos SVM. [ 18 ] [ 19 ] Los pesos de las máquinas de vectores de soporte también se han utilizado para interpretar modelos SVM en el pasado. [ 20 ] La interpretación post hoc de modelos de máquinas de vectores de soporte para identificar las características utilizadas por el modelo para hacer predicciones es un área de investigación relativamente nueva con especial importancia en las ciencias biológicas.
Historia
El algoritmo SVM original fue inventado por Vladimir N. Vapnik y Alexey Ya. Chervonenkis en 1964. En 1992, Bernhard Boser, Isabelle Guyon y Vladimir Vapnik sugirieron una forma de crear clasificadores no lineales aplicando el truco del kernel a hiperplanos de margen máximo. [ 9 ] La versión de "margen suave", como se usa comúnmente en paquetes de software, fue propuesta por Corinna Cortes y Vapnik en 1993 y publicada en 1995. [ 1 ]
SVM lineal

Se nos proporciona un conjunto de datos de entrenamiento depuntos de la forma donde elson 1 o −1, cada uno indicando la clase a la que pertenece el puntopertenece. Cadaes unVector real de dimensión . Queremos encontrar el "hiperplano de margen máximo" que divide el grupo de puntos.para quédel grupo de puntos para los cuales, que se define de modo que la distancia entre el hiperplano y el punto más cercanoSe maximiza el valor de cualquiera de los dos grupos.
Cualquier hiperplano puede escribirse como el conjunto de puntossatisfactorio dóndees el vector normal (no necesariamente normalizado) al hiperplano. Esto es muy parecido a la forma normal de Hesse , excepto queno es necesariamente un vector unitario. El parámetrodetermina el desplazamiento del hiperplano desde el origen a lo largo del vector normal.
El sesgo también puede definirse de manera que
Márgenes estrictos
Si los datos de entrenamiento son linealmente separables , podemos seleccionar dos hiperplanos paralelos que separen las dos clases de datos, de modo que la distancia entre ellos sea lo mayor posible. La región delimitada por estos dos hiperplanos se denomina "margen", y el hiperplano de margen máximo es el que se encuentra a medio camino entre ellos. Con un conjunto de datos normalizado o estandarizado, estos hiperplanos se pueden describir mediante las ecuaciones
- (Todo lo que se encuentre sobre este límite o por encima de él pertenece a una sola clase, con la etiqueta 1).
y
- (Todo lo que esté sobre o debajo de este límite pertenece a la otra clase, con la etiqueta −1).
Geométricamente, la distancia entre estos dos hiperplanos es, [ 21 ] por lo que para maximizar la distancia entre los planos queremos minimizarLa distancia se calcula utilizando la ecuación de distancia de un punto a un plano . También tenemos que evitar que los puntos de datos caigan en el margen, agregamos la siguiente restricción: para cadacualquiera o Estas restricciones establecen que cada punto de datos debe estar situado en el lado correcto del margen.
Esto se puede reescribir como
Podemos combinar esto para obtener el problema de optimización:
Elyque resuelven este problema determinan el clasificador final,, dóndees la función signo .
Una consecuencia importante de esta descripción geométrica es que el hiperplano de margen máximo está completamente determinado por esosque se encuentran más cerca de él (explicado a continuación). Estosse denominan vectores de soporte .
Margen suave
Para extender SVM a casos en los que los datos no son linealmente separables, la función de pérdida de bisagra resulta útil.
Tenga en cuenta quees el i -ésimo objetivo (es decir, en este caso, 1 o −1), yes la i -ésima salida.
Esta función es cero si se satisface la restricción en (1) , en otras palabras, siSe encuentra en el lado correcto del margen. Para los datos que se encuentran en el lado incorrecto del margen, el valor de la función es proporcional a la distancia al margen.
El objetivo de la optimización es, por lo tanto, minimizar:
donde el parámetrodetermina el equilibrio entre aumentar el tamaño del margen y garantizar que else encuentran en el lado correcto del margen (Nótese que podemos agregar un peso a cualquiera de los términos en la ecuación anterior). Al descomponer la pérdida de bisagra, este problema de optimización se puede formular de la siguiente manera:
Por lo tanto, para valores grandes deSe comportará de forma similar a la SVM de margen rígido, si los datos de entrada son clasificables linealmente, pero aun así aprenderá si una regla de clasificación es viable o no.
núcleos no lineales

El algoritmo original de hiperplano de margen máximo propuesto por Vapnik en 1963 construyó un clasificador lineal . Sin embargo, en 1992, Bernhard Boser , Isabelle Guyon y Vladimir Vapnik sugirieron una forma de crear clasificadores no lineales aplicando el truco del kernel (propuesto originalmente por Aizerman et al. [ 22 ] ) a los hiperplanos de margen máximo. [ 9 ] El truco del kernel, donde los productos escalares se reemplazan por kernels, se deriva fácilmente en la representación dual del problema SVM. Esto permite que el algoritmo ajuste el hiperplano de margen máximo en un espacio de características transformado . La transformación puede ser no lineal y el espacio transformado de alta dimensión; aunque el clasificador es un hiperplano en el espacio de características transformado, puede ser no lineal en el espacio de entrada original.
Cabe destacar que trabajar en un espacio de características de mayor dimensión aumenta el error de generalización de las máquinas de vectores de soporte, aunque con suficientes muestras el algoritmo sigue funcionando bien. [ 23 ]
Algunos ejemplos comunes de núcleos son:
- Polinomial (homogéneo) :Particularmente, cuando, esto se convierte en el núcleo lineal.
- Polinomial (no homogéneo):.
- Función de base radial gaussiana :para. A veces parametrizado usando.
- Función sigmoide ( tangente hiperbólica ):para algunos (no para todos)y.
El núcleo está relacionado con la transformaciónpor la ecuación. El valor w también está en el espacio transformado, con. Los productos escalares con w para la clasificación se pueden calcular nuevamente mediante el truco del kernel, es decir.
Cálculo del clasificador SVM
El cálculo del clasificador SVM (de margen suave) equivale a minimizar una expresión de la forma
Nos centramos en el clasificador de margen suave ya que, como se mencionó anteriormente, elegir un valor suficientemente pequeño paraEsto genera el clasificador de margen rígido para datos de entrada clasificables linealmente. El enfoque clásico, que implica reducir (2) a un problema de programación cuadrática , se detalla a continuación. Posteriormente, se analizarán enfoques más recientes, como el descenso de subgradiente y el descenso de coordenadas.
Primitivo
Minimizar (2) se puede reescribir como un problema de optimización con restricciones y una función objetivo diferenciable de la siguiente manera.
Para cadaintroducimos una variable. Tenga en cuenta quees el número no negativo más pequeño que satisface
Por lo tanto, podemos reescribir el problema de optimización de la siguiente manera:
Esto se conoce como el problema primal .
Dual
Al resolver el dual lagrangiano del problema anterior, se obtiene el problema simplificado.
Esto se denomina problema dual . Dado que el problema de maximización dual es una función cuadrática de laSujeto a restricciones lineales, se puede resolver eficientemente mediante algoritmos de programación cuadrática .
Aquí, las variablesse definen de tal manera que
Además,exactamente cuandose encuentra en el lado correcto del margen, y cuandose encuentra en el límite del margen. De ello se deduce quese puede escribir como una combinación lineal de los vectores de soporte.
El desplazamiento,, se puede recuperar encontrando unen el límite del margen y resolviendo
(Tenga en cuenta quedesde.)
Truco del kernel

Supongamos ahora que queremos aprender una regla de clasificación no lineal que corresponda a una regla de clasificación lineal para los puntos de datos transformados.Además, se nos proporciona una función kernel.lo cual satisface.
Conocemos el vector de clasificaciónen el espacio transformado satisface
donde, else obtienen resolviendo el problema de optimización
Los coeficientesse puede resolver usando programación cuadrática, como antes. Nuevamente podemos encontrar algún índicede tal manera que, de modo quese encuentra en el límite del margen en el espacio transformado y luego resolver
Finalmente,
Métodos modernos
Los algoritmos recientes para encontrar el clasificador SVM incluyen el descenso de subgradiente y el descenso de coordenadas. Ambas técnicas han demostrado ofrecer ventajas significativas sobre el enfoque tradicional al trabajar con conjuntos de datos grandes y dispersos: los métodos de subgradiente son especialmente eficientes cuando hay muchos ejemplos de entrenamiento, y el descenso de coordenadas cuando la dimensión del espacio de características es alta.
Descenso subgradiente
Los algoritmos de descenso de subgradiente para la SVM trabajan directamente con la expresión
Tenga en cuenta quees una función convexa dey. Por lo tanto, los métodos tradicionales de descenso de gradiente (o SGD ) pueden adaptarse, donde en lugar de dar un paso en la dirección del gradiente de la función, se da un paso en la dirección de un vector seleccionado del subgradiente de la función . Este enfoque tiene la ventaja de que, para ciertas implementaciones, el número de iteraciones no escala con, el número de puntos de datos. [ 24 ]
Descenso de coordenadas
Los algoritmos de descenso de coordenadas para el trabajo de SVM provienen del problema dual.
Para cada, iterativamente, el coeficientese ajusta en la dirección de. Luego, el vector de coeficientes resultanteSe proyecta sobre el vector de coeficientes más cercano que satisface las restricciones dadas. (Normalmente se utilizan distancias euclidianas). El proceso se repite hasta obtener un vector de coeficientes casi óptimo. El algoritmo resultante es extremadamente rápido en la práctica, aunque se han demostrado pocas garantías de rendimiento. [ 25 ]
Minimización del riesgo empírico
La máquina de vectores de soporte de margen suave descrita anteriormente es un ejemplo de algoritmo de minimización de riesgo empírico (ERM) para la función de pérdida de bisagra . Desde esta perspectiva, las máquinas de vectores de soporte pertenecen a una clase natural de algoritmos para la inferencia estadística, y muchas de sus características únicas se deben al comportamiento de la función de pérdida de bisagra. Esta perspectiva puede brindar una mayor comprensión de cómo y por qué funcionan las SVM, y nos permite analizar mejor sus propiedades estadísticas.
Minimización de riesgos
En el aprendizaje supervisado, se proporciona un conjunto de ejemplos de entrenamiento.con etiquetasy desea predecirdadoPara ello se formula una hipótesis ,, de tal manera quees una "buena" aproximación de. Una "buena" aproximación se define generalmente con la ayuda de una función de pérdida ,, que caracteriza lo malo que eses como una predicción de. A continuación, nos gustaría elegir una hipótesis que minimice el riesgo esperado :
En la mayoría de los casos, no conocemos la distribución conjunta dedirectamente. En estos casos, una estrategia común es elegir la hipótesis que minimice el riesgo empírico:
Bajo ciertas suposiciones sobre la secuencia de variables aleatorias(por ejemplo, que se generan mediante un proceso de Markov finito), si el conjunto de hipótesis que se consideran es suficientemente pequeño, el minimizador del riesgo empírico se aproximará mucho al minimizador del riesgo esperado comocrece mucho. Este enfoque se llama minimización empírica del riesgo, o ERM.
Regularización y estabilidad
Para que el problema de minimización tenga una solución bien definida, debemos imponer restricciones al conjunto.de hipótesis que se están considerando. Sies un espacio normalizado (como es el caso de SVM), una técnica particularmente efectiva es considerar solo aquellas hipótesispara quéEsto equivale a imponer una penalización de regularización .y resolver el nuevo problema de optimización
Este método se denomina regularización de Tikhonov .
En términos más generales,puede ser una medida de la complejidad de la hipótesis, por lo que se prefieren las hipótesis más simples.
SVM y la pérdida de bisagra
Recordemos que el clasificador SVM (de margen suave)Se elige para minimizar la siguiente expresión:
En vista de lo anterior, vemos que la técnica SVM es equivalente a la minimización del riesgo empírico con regularización de Tikhonov, donde en este caso la función de pérdida es la pérdida de bisagra.
Desde esta perspectiva, SVM está estrechamente relacionado con otros algoritmos de clasificación fundamentales como mínimos cuadrados regularizados y regresión logística . La diferencia entre los tres radica en la elección de la función de pérdida: mínimos cuadrados regularizados equivalen a una minimización del riesgo empírico con la pérdida cuadrática , ; la regresión logística emplea la pérdida logarítmica ,
Funciones objetivo
La diferencia entre la pérdida de bisagra y estas otras funciones de pérdida se expresa mejor en términos de funciones objetivo: la función que minimiza el riesgo esperado para un par dado de variables aleatorias..
En particular, dejemosdenotarcondicionado al evento de queEn el contexto de la clasificación, tenemos:
Por lo tanto, el clasificador óptimo es:
Para la pérdida cuadrática, la función objetivo es la función de esperanza condicional,; Para la pérdida logística, es la función logit,. Si bien ambas funciones objetivo producen el clasificador correcto, comoNos dan más información de la que necesitamos. De hecho, nos dan suficiente información para describir completamente la distribución de.
Por otro lado, se puede comprobar que la función objetivo para la pérdida de bisagra es exactamente. Por lo tanto, en un espacio de hipótesis suficientemente rico —o equivalentemente, para un núcleo elegido apropiadamente— el clasificador SVM convergerá a la función más simple (en términos de) que clasifica correctamente los datos. Esto extiende la interpretación geométrica de SVM: para la clasificación lineal, el riesgo empírico se minimiza mediante cualquier función cuyos márgenes se encuentren entre los vectores de soporte, y el más simple de estos es el clasificador de margen máximo. [ 26 ]
Propiedades
Las SVM pertenecen a una familia de clasificadores lineales generalizados y pueden interpretarse como una extensión del perceptrón . [ 27 ] También pueden considerarse un caso especial de regularización de Tikhonov . Una propiedad especial es que minimizan simultáneamente el error de clasificación empírico y maximizan el margen geométrico ; por lo tanto, también se les conoce como clasificadores de margen máximo .
Meyer, Leisch y Hornik realizaron una comparación del SVM con otros clasificadores. [ 28 ]
Selección de parámetros
La efectividad de SVM depende de la selección del kernel, los parámetros del kernel y el parámetro de margen suave.Una opción común es un núcleo gaussiano, que tiene un único parámetro.. La mejor combinación deya menudo se selecciona mediante una búsqueda en cuadrícula con secuencias de crecimiento exponencial dey, Por ejemplo,;Normalmente, cada combinación de opciones de parámetros se comprueba mediante validación cruzada , y se seleccionan los parámetros con la mejor precisión de validación cruzada. Alternativamente, se puede utilizar trabajo reciente en optimización bayesiana para seleccionary, que a menudo requiere la evaluación de muchas menos combinaciones de parámetros que la búsqueda en cuadrícula. El modelo final, que se utiliza para probar y clasificar nuevos datos, se entrena luego con todo el conjunto de entrenamiento utilizando los parámetros seleccionados. [ 29 ]
Asuntos
Entre las posibles desventajas de la SVM se incluyen los siguientes aspectos:
- Requiere el etiquetado completo de los datos de entrada.
- Probabilidades de pertenencia a clases no calibradas : SVM se basa en la teoría de Vapnik, que evita estimar probabilidades en datos finitos.
- La máquina de vectores de soporte (SVM) solo es directamente aplicable a tareas de dos clases. Por lo tanto, es necesario aplicar algoritmos que reduzcan la tarea multiclase a varios problemas binarios; consulte la sección sobre SVM multiclase .
- Los parámetros de un modelo resuelto son difíciles de interpretar.
Extensiones
SVM multiclase
El método SVM multiclase tiene como objetivo asignar etiquetas a las instancias mediante el uso de máquinas de vectores de soporte, donde las etiquetas se extraen de un conjunto finito de varios elementos.
El enfoque dominante para hacerlo es reducir el problema multiclase único en múltiples problemas de clasificación binaria . [ 30 ] Los métodos comunes para dicha reducción incluyen: [ 30 ] [ 31 ]
- Construir clasificadores binarios que distingan entre una de las etiquetas y el resto ( uno contra todos ) o entre cada par de clases ( uno contra uno ). La clasificación de nuevas instancias para el caso uno contra todos se realiza mediante una estrategia de "el ganador se lo lleva todo", en la que el clasificador con la función de salida más alta asigna la clase (es importante que las funciones de salida estén calibradas para producir puntuaciones comparables). Para el enfoque uno contra uno, la clasificación se realiza mediante una estrategia de votación de "máximo de victorias", en la que cada clasificador asigna la instancia a una de las dos clases, luego el voto para la clase asignada se incrementa en un voto, y finalmente la clase con más votos determina la clasificación de la instancia.
- SVM de grafo acíclico dirigido (DAGSVM) [ 32 ]
- Códigos de salida de corrección de errores [ 33 ]
Crammer y Singer propusieron un método SVM multiclase que transforma el problema de clasificación multiclase en un único problema de optimización, en lugar de descomponerlo en múltiples problemas de clasificación binaria. [ 34 ] Véase también Lee, Lin y Wahba [ 35 ] [ 36 ] y Van den Burg y Groenen. [ 37 ]
Máquinas de vectores de soporte transductivas
Las máquinas de vectores de soporte transductivas extienden las SVM en el sentido de que también pueden tratar datos parcialmente etiquetados en el aprendizaje semisupervisado siguiendo los principios de la transducción . Aquí, además del conjunto de entrenamiento, al alumno también se le da un conjunto
de ejemplos de prueba a clasificar. Formalmente, una máquina de vectores de soporte transductiva se define mediante el siguiente problema de optimización primal: [ 38 ]
Minimizar (en)
sujeto a (por cualquiery cualquier)
y
Las máquinas de vectores de soporte transductivas fueron introducidas por Vladimir N. Vapnik en 1998.
SVM estructurado
La máquina de vectores de soporte estructurada es una extensión del modelo SVM tradicional. Mientras que el modelo SVM está diseñado principalmente para tareas de clasificación binaria, clasificación multiclase y regresión, la SVM estructurada amplía su aplicación para manejar etiquetas de salida estructuradas generales, por ejemplo, árboles de análisis sintáctico, clasificación con taxonomías, alineación de secuencias y muchas más. [ 39 ]
Regresión

En 1996 , Vladimir N. Vapnik , Harris Drucker, Christopher JC Burges, Linda Kaufman y Alexander J. Smola propusieron una versión de SVM para regresión . [ 40 ] Este método se denomina regresión de vectores de soporte (SVR). El modelo producido por la clasificación de vectores de soporte (como se describió anteriormente) depende únicamente de un subconjunto de los datos de entrenamiento, ya que la función de coste para construir el modelo no tiene en cuenta los puntos de entrenamiento que se encuentran fuera del margen. De forma análoga, el modelo producido por SVR depende únicamente de un subconjunto de los datos de entrenamiento, ya que la función de coste para construir el modelo ignora cualquier dato de entrenamiento cercano a la predicción del modelo. Suykens y Vandewalle propusieron otra versión de SVM conocida como máquina de vectores de soporte de mínimos cuadrados (LS-SVM). [ 41 ]
Entrenar el SVR original significa resolver [ 42 ]
- minimizar
- sujeto a
dóndees una muestra de entrenamiento con valor objetivoEl producto interno más la intersecciónes la predicción para esa muestra, yes un parámetro libre que sirve como umbral: todas las predicciones deben estar dentro de unrango de las predicciones verdaderas. Generalmente se agregan variables de holgura para tener en cuenta los errores y permitir la aproximación en caso de que el problema anterior sea inviable.
SVM bayesiano
En 2011, Polson y Scott demostraron que la SVM admite una interpretación bayesiana mediante la técnica de aumento de datos . [ 43 ] En este enfoque, la SVM se considera un modelo gráfico (donde los parámetros están conectados mediante distribuciones de probabilidad). Esta visión ampliada permite la aplicación de técnicas bayesianas a las SVM, como el modelado flexible de características, el ajuste automático de hiperparámetros y la cuantificación predictiva de la incertidumbre . En 2017, Florian Wenzel desarrolló una versión escalable de la SVM bayesiana , lo que permitió la aplicación de las SVM bayesianas a grandes conjuntos de datos . [ 44 ] Florian Wenzel desarrolló dos versiones diferentes: un esquema de inferencia variacional (VI) para la máquina de vectores de soporte (SVM) de núcleo bayesiano y una versión estocástica (SVI) para la SVM bayesiana lineal. [ 45 ]
Implementación
Los parámetros del hiperplano de margen máximo se obtienen resolviendo el problema de optimización. Existen varios algoritmos especializados para resolver rápidamente el problema de programación cuadrática (QP) que surge de las máquinas de vectores de soporte (SVM), que en su mayoría se basan en heurísticas para dividir el problema en partes más pequeñas y manejables.
Otro enfoque consiste en utilizar un método de punto interior que emplea iteraciones tipo Newton para encontrar una solución a las condiciones de Karush-Kuhn-Tucker de los problemas primal y dual. [ 46 ] En lugar de resolver una secuencia de problemas descompuestos, este enfoque resuelve directamente el problema completo. Para evitar resolver un sistema lineal que involucre la matriz del núcleo, se suele utilizar una aproximación de bajo rango a la matriz en el método del núcleo.
Otro método común es el algoritmo de optimización mínima secuencial (SMO) de Platt, que descompone el problema en subproblemas bidimensionales que se resuelven analíticamente, eliminando la necesidad de un algoritmo de optimización numérica y el almacenamiento de matrices. Este algoritmo es conceptualmente simple, fácil de implementar, generalmente más rápido y tiene mejores propiedades de escalabilidad para problemas SVM difíciles. [ 47 ]
El caso especial de las máquinas de vectores de soporte lineales se puede resolver de manera más eficiente con el mismo tipo de algoritmos que se utilizan para optimizar su pariente cercano, la regresión logística ; esta clase de algoritmos incluye el descenso de subgradiente (por ejemplo, PEGASOS [ 48 ] ) y el descenso de coordenadas (por ejemplo, LIBLINEAR [ 49 ] ). LIBLINEAR tiene algunas propiedades atractivas en cuanto al tiempo de entrenamiento. Cada iteración de convergencia toma un tiempo lineal con respecto al tiempo que se tarda en leer los datos de entrenamiento, y las iteraciones también tienen una propiedad de convergencia Q-lineal , lo que hace que el algoritmo sea extremadamente rápido.
Las SVM de núcleo general también se pueden resolver de manera más eficiente utilizando el descenso de subgradiente (por ejemplo, P-packSVM [ 50 ] ), especialmente cuando se permite la paralelización .
Las máquinas de vectores de soporte (SVM) basadas en kernels están disponibles en muchos conjuntos de herramientas de aprendizaje automático, incluidos LIBSVM , MATLAB , SAS , SVMlight, kernlab , scikit-learn , Shogun , Weka , Shark , JKernelMachines , OpenCV y otros.
Se recomienda encarecidamente el preprocesamiento de datos (estandarización) para mejorar la precisión de la clasificación. [ 51 ] Existen varios métodos de estandarización, como min-max, normalización por escala decimal y puntuación Z. [ 52 ] La resta de la media y la división por la varianza de cada característica se utilizan habitualmente para SVM. [ 53 ]
Véase también
- Tabulación adaptativa in situ
- Máquinas del núcleo
- núcleo de Fisher
- Escala de Platt
- Núcleo polinomial
- Análisis predictivo
- Perspectivas de regularización en máquinas de vectores de soporte
- Máquina de vectores de relevancia , un modelo probabilístico de núcleo disperso idéntico en forma funcional a SVM.
- Optimización mínima secuencial
- Cartografía espacial
- Winnow (algoritmo)
- Red de funciones de base radial
Referencias
- 1 2 3 Cortes, Corinna ; Vapnik, Vladimir (1995). "Redes de vectores de soporte" (PDF) . Machine Learning . 20 (3): 273– 297. CiteSeerX 10.1.1.15.9362 . doi : 10.1007/BF00994018 . S2CID 206787478 .
- ↑ Vapnik, Vladimir N. (1997). "El método de vectores de soporte" . En Gerstner, Wulfram; Germond, Alain; Hasler, Martin; Nicoud, Jean-Daniel (eds.). Redes neuronales artificiales — ICANN'97 . Lecture Notes in Computer Science. Vol. 1327. Berlín, Heidelberg: Springer. pp. 261–271 . doi : 10.1007/BFb0020166 . ISBN 978-3-540-69620-9.
- ↑ Awad, Mariette; Khanna, Rahul (2015). «Máquinas de vectores de soporte para clasificación». Efficient Learning Machines . Apress. pp. 39–66 . doi : 10.1007/978-1-4302-5990-9_3 . ISBN 978-1-4302-5990-9.
- ^ Ben-Hur, Asa; Cuerno, David; Siegelmann, Hava; Vapnik, Vladimir N.""Agrupamiento mediante máquinas de vectores de soporte" (2001);". Revista de Investigación en Aprendizaje Automático . 2 : 125–137 .
- ↑ Huang, HH; Xu, T.; Yang, J. (2014). "Comparación de la regresión logística, las máquinas de vectores de soporte y los métodos de clasificación permanente en la predicción de la hipertensión" . BMC Proceedings . 8 (Supl . 1): S96. doi : 10.1186/1753-6561-8-S1-S96 . PMC 4143639. PMID 25519351 .
- ↑ Opper, M; Kinzel, W; Kleinz, J; Nehl, R (1990). "Sobre la capacidad del perceptrón óptimo para generalizar" . Journal of Physics A: Mathematical and General . 23 (11): L581. Bibcode : 1990JPhA...23L.581O . doi : 10.1088/0305-4470/23/11/012 .
- ↑ "1.4. Máquinas de vectores de soporte — documentación de scikit-learn 0.20.2" . Archivado del original el 8 de noviembre de 2017. Consultado el 8 de noviembre de 2017 .
- ↑ Hastie, Trevor ; Tibshirani, Robert ; Friedman, Jerome (2008). Los elementos del aprendizaje estadístico : minería de datos, inferencia y predicción (segunda edición). Nueva York: Springer. pág. 134.
- 1 2 3 Boser, Bernhard E.; Guyon, Isabelle M.; Vapnik, Vladimir N. (1992). "Un algoritmo de entrenamiento para clasificadores de margen óptimo" . Actas del quinto taller anual sobre teoría del aprendizaje computacional – COLT '92 . pág. 144. CiteSeerX 10.1.1.21.3818 . doi : 10.1145/130385.130401 . ISBN 978-0897914970. S2CID 207165665 .
- ↑ Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. (2007). «Sección 16.5. Máquinas de vectores de soporte» . Numerical Recipes: The Art of Scientific Computing (3.ª ed.). Nueva York: Cambridge University Press. ISBN 978-0-521-88068-8Archivado del original el 11 de agosto de 2011 .
- ↑ Joachims, Thorsten (1998). "Clasificación de texto con máquinas de vectores de soporte: aprendizaje con muchas características relevantes". Aprendizaje automático: ECML-98 . Notas de clase en ciencias de la computación. Vol. 1398. Springer. págs. 137–142 . doi : 10.1007/BFb0026683 . ISBN 978-3-540-64417-0.
- ↑ Pradhan, Sameer S.; et al. (2 de mayo de 2004). Análisis semántico superficial mediante máquinas de vectores de soporte . Actas de la Conferencia de Tecnología del Lenguaje Humano del Capítulo Norteamericano de la Asociación de Lingüística Computacional: HLT-NAACL 2004. Asociación de Lingüística Computacional. págs. 233–240 .
- ↑ Vapnik, Vladimir N.: Ponente invitado. Procesamiento y gestión de la información del IPMU 2014).
- ↑ Barghout, Lauren (2015). "Gránulos de información de taxonomía espacial utilizados en la toma de decisiones difusas iterativas para la segmentación de imágenes" (PDF) . Granular Computing and Decision-Making . Studies in Big Data. Vol. 10. pp. 285–318 . doi : 10.1007/978-3-319-16829-6_12 . ISBN 978-3-319-16828-9. S2CID 4154772 . Archivado del original (PDF) el 08-01-2018 . Recuperado el 08-01-2018 .
- ↑ A. Maity (2016). "Clasificación supervisada de datos polarimétricos de RADARSAT-2 para diferentes características del terreno". arXiv : 1608.00501 [ cs.CV ].
- ↑ DeCoste, Dennis (2002). "Entrenamiento de máquinas de vectores de soporte invariantes" (PDF) . Machine Learning . 46 ( 1–3 ): 161–190 . Bibcode : 2002MLear..46..161D . doi : 10.1023/A:1012454411458 . S2CID 85843 .
- ↑ Maitra, DS; Bhattacharya, U.; Parui, SK (agosto de 2015). "Enfoque común basado en CNN para el reconocimiento de caracteres manuscritos de múltiples escrituras". 2015 13.ª Conferencia Internacional sobre Análisis y Reconocimiento de Documentos (ICDAR) . págs. 1021–1025 . doi : 10.1109/ICDAR.2015.7333916 . ISBN 978-1-4799-1805-8. S2CID 25739012 .
- ↑ Gaonkar, B.; Davatzikos, C. (2013). "Estimación analítica de mapas de significación estadística para análisis y clasificación de imágenes multivariadas basados en máquinas de vectores de soporte" . NeuroImage . 78 : 270–283 . doi : 10.1016 /j.neuroimage.2013.03.066 . PMC 3767485. PMID 23583748 .
- ↑ Cuingnet, Rémi; Rosso, Charlotte; Chupin, Marie; Lehéricy, Stéphane; Dormont, Didier; Benali, Habib; Samson, Yves; Colliot, Olivier (2011). "Regularización espacial de SVM para la detección de alteraciones de difusión asociadas con el resultado del accidente cerebrovascular" (PDF) . Medical Image Analysis . 15 (5): 729– 737. doi : 10.1016/j.media.2011.05.007 . PMID 21752695. Archivado del original (PDF) el 22-12-2018 . Recuperado el 08-01-2018 .
- ↑ Statnikov, Alexander; Hardin, Douglas; y Aliferis, Constantin; (2006); "Uso de métodos basados en ponderación SVM para identificar variables causalmente relevantes y no causalmente relevantes" , Sign , 1, 4.
- ↑ "¿Por qué el margen SVM es igual a" . Mathematics Stack Exchange . 30 de mayo de 2015.
- ↑ Aizerman, Mark A.; Braverman, Emmanuel M. y Rozonoer, Lev I. (1964). "Fundamentos teóricos del método de la función potencial en el aprendizaje del reconocimiento de patrones". Automatización y control remoto . 25 : 821–837 .
- ↑ Jin, Chi; Wang, Liwei (2012). Límite de margen PAC-Bayes dependiente de la dimensionalidad . Advances in Neural Information Processing Systems. CiteSeerX 10.1.1.420.3487 . Archivado del original el 2 de abril de 2015.
- ↑ Shalev-Shwartz, Shai; Singer, Yoram; Srebro, Nathan; Cotter, Andrew (2010-10-16). "Pegasos: solucionador de subgradiente estimado primal para SVM". Mathematical Programming . 127 (1): 3– 30. CiteSeerX 10.1.1.161.9629 . doi : 10.1007/s10107-010-0420-4 . ISSN 0025-5610 . S2CID 53306004 .
- ↑ Hsieh, Cho-Jui; Chang, Kai-Wei; Lin, Chih-Jen; Keerthi, S. Sathiya; Sundararajan, S. (2008-01-01). "Un método de descenso de coordenadas dual para SVM lineal a gran escala". Actas de la 25.ª conferencia internacional sobre aprendizaje automático - ICML '08 . Nueva York, NY, EE. UU.: ACM. págs. 408–415 . CiteSeerX 10.1.1.149.5594 . doi : 10.1145/1390156.1390208 . ISBN 978-1-60558-205-4. S2CID 7880266 .
- ↑ Rosasco, Lorenzo; De Vito, Ernesto; Caponnetto, Andrea; Piana, Michele; Verri, Alessandro (1 de mayo de 2004). "¿Son todas las funciones de pérdida iguales?" . Computación neuronal . 16 (5): 1063–1076 . CiteSeerX 10.1.1.109.6786 . doi : 10.1162/089976604773135104 . hdl : 11380/4590 . ISSN 0899-7667 . PMID 15070510 . S2CID 11845688 .
- ↑ R. Collobert y S. Bengio (2004). Vínculos entre perceptrones, MLP y SVM. Actas de la Conferencia Internacional sobre Aprendizaje Automático (ICML).
- ↑ Meyer, David; Leisch, Friedrich; Hornik, Kurt (septiembre de 2003). "La máquina de vectores de soporte bajo prueba". Neurocomputing . 55 ( 1–2 ): 169–186 . doi : 10.1016/S0925-2312(03)00431-4 .
- ↑ Hsu, Chih-Wei; Chang, Chih-Chung y Lin, Chih-Jen (2003). Guía práctica para la clasificación mediante máquinas de vectores de soporte (PDF) (Informe técnico). Departamento de Ciencias de la Computación e Ingeniería de la Información, Universidad Nacional de Taiwán. Archivado (PDF) del original el 25 de junio de 2013.
- 1 2 Duan, Kai-Bo; Keerthi, S. Sathiya (2005). "¿Cuál es el mejor método SVM multiclase? Un estudio empírico" (PDF) . Sistemas de clasificadores múltiples . LNCS . Vol. 3541. pp. 278–285 . CiteSeerX 10.1.1.110.6789 . doi : 10.1007/11494683_28 . ISBN 978-3-540-26306-7Archivado del original (PDF) el 3 de mayo de 2013. Consultado el 18 de julio de 2019 .
- ↑ Hsu, Chih-Wei y Lin, Chih-Jen (2002). "Una comparación de métodos para máquinas de vectores de soporte multiclase" (PDF) . IEEE Transactions on Neural Networks . 13 (2): 415–25 . Bibcode : 2002ITNN...13..415H . doi : 10.1109/72.991427 . PMID 18244442. Archivado del original (PDF) el 3 de mayo de 2013. Recuperado el 8 de enero de 2018 .
- ↑ Platt, John; Cristianini, Nello ; Shawe-Taylor, John (2000). "DAGs de margen amplio para clasificación multiclase" (PDF) . En Solla, Sara A .; Leen, Todd K.; Müller, Klaus-Robert (eds.). Avances en sistemas de procesamiento de información neuronal . MIT Press. págs. 547–553 . Archivado (PDF) del original el 16 de junio de 2012.
- ↑ Dietterich, Thomas G.; Bakiri, Ghulum (1995). "Resolución de problemas de aprendizaje multiclase mediante códigos de salida de corrección de errores" ( PDF) . Journal of Artificial Intelligence Research . 2 : 263–286 . arXiv : cs/9501101 . Bibcode : 1995cs........1101D . doi : 10.1613/jair.105 . S2CID 47109072. Archivado (PDF) del original el 9 de mayo de 2013.
- ↑ Crammer, Koby y Singer, Yoram (2001). "Sobre la implementación algorítmica de máquinas vectoriales basadas en núcleos multiclase" (PDF) . Journal of Machine Learning Research . 2 : 265–292 . Archivado (PDF) del original el 29 de agosto de 2015.
- ↑ Lee, Yoonkyung; Lin, Yi y Wahba, Grace (2001). "Máquinas de vectores de soporte multicategoría" (PDF) . Ciencias de la Computación y Estadística . 33. Archivado del original el 17 de junio de 2013.
- ↑ Lee, Yoonkyung; Lin, Yi; Wahba, Grace (2004). "Máquinas de vectores de soporte multicategoría". Journal of the American Statistical Association . 99 (465): 67– 81. CiteSeerX 10.1.1.22.1879 . doi : 10.1198/016214504000000098 . S2CID 7066611 .
- ^ Van den Burg, Gerrit JJ y Groenen, Patrick JF (2016). "GenSVM: una máquina de vectores de soporte multiclase generalizada" (PDF) . Revista de investigación sobre aprendizaje automático . 17 (224): 1-42 .
- ↑ Joachims, Thorsten. Inferencia transductiva para la clasificación de texto mediante máquinas de vectores de soporte (PDF) . Actas de la Conferencia Internacional de Aprendizaje Automático de 1999 (ICML 1999). págs. 200–209 .
- ↑ "Aprendizaje de máquinas de vectores de soporte para espacios de salida interdependientes y estructurados" (PDF) . www.cs.cornell.edu .
- ↑ Drucker, Harris; Burges, Christ. C.; Kaufman, Linda; Smola, Alexander J.; y Vapnik, Vladimir N. (1997); " Máquinas de regresión de vectores de soporte ", en Advances in Neural Information Processing Systems 9, NIPS 1996 , 155–161, MIT Press.
- ↑ Suykens, Johan AK; Vandewalle, Joos PL; " Clasificadores de máquinas de vectores de soporte de mínimos cuadrados ", Neural Processing Letters , vol. 9, n.º 3, junio de 1999, págs. 293–300.
- ↑ Smola, Alex J.; Schölkopf, Bernhard (2004). "Un tutorial sobre regresión de vectores de soporte" (PDF) . Statistics and Computing . 14 (3): 199– 222. Bibcode : 2004StCom..14..199S . CiteSeerX 10.1.1.41.1452 . doi : 10.1023/B:STCO.0000035301.49549.88 . S2CID 15475. Archivado (PDF) del original el 31 de enero de 2012 .
- ↑ Polson, Nicholas G.; Scott, Steven L. (2011). "Aumento de datos para máquinas de vectores de soporte" . Análisis bayesiano . 6 (1): 1– 23. doi : 10.1214/11-BA601 .
- ↑ Wenzel, Florian; Galy-Fajou, Theo; Deutsch, Matthäus; Kloft, Marius (2017). «Máquinas de vectores de soporte no lineales bayesianas para macrodatos». Aprendizaje automático y descubrimiento de conocimiento en bases de datos . Notas de clase en informática. Vol. 10534. págs. 307–322 . arXiv : 1707.05532 . Bibcode : 2017arXiv170705532W . doi : 10.1007/978-3-319-71249-9_19 . ISBN 978-3-319-71248-2. S2CID 4018290 .
- ↑ Florian Wenzel; Matthäus Deutsch; Théo Galy-Fajou; Marius Kloft; “Inferencia aproximada escalable para la máquina de vectores de soporte no lineal bayesiana”
- ↑ Ferris, Michael C.; Munson, Todd S. (2002). "Métodos de punto interior para máquinas de vectores de soporte masivas" ( PDF) . SIAM Journal on Optimization . 13 (3): 783– 804. CiteSeerX 10.1.1.216.6893 . doi : 10.1137/S1052623400374379 . S2CID 13563302. Archivado (PDF) del original el 4 de diciembre de 2008.
- ↑ Platt, John C. (1998). Optimización mínima secuencial: un algoritmo rápido para entrenar máquinas de vectores de soporte (PDF) . NIPS. Archivado (PDF) del original el 2 de julio de 2015.
- ↑ Shalev-Shwartz, Shai; Singer, Yoram; Srebro, Nathan (2007). Pegasos: Solución subgradiente estimada primal para SVM (PDF) . ICML. Archivado (PDF) del original el 15 de diciembre de 2013.
- ↑ Fan, Rong-En; Chang, Kai-Wei; Hsieh, Cho-Jui; Wang, Xiang-Rui; Lin, Chih-Jen (2008). "LIBLINEAR: Una biblioteca para la clasificación lineal a gran escala" (PDF) . Journal of Machine Learning Research . 9 : 1871–1874 .
- ↑ Allen Zhu, Zeyuan; Chen, Weizhu; Wang, Gang; Zhu, Chenguang; Chen, Zheng (2009). P-packSVM: SVM de núcleo de gradiente primal paralelo (PDF) . ICDM. Archivado (PDF) del original el 7 de abril de 2014.
- ↑ Fan, Rong-En; Chang, Kai-Wei; Hsieh, Cho-Jui; Wang, Xiang-Rui; Lin, Chih-Jen (2008). "LIBLINEAR: Una biblioteca para la clasificación lineal a gran escala". Journal of Machine Learning Research . 9 (agosto): 1871–1874 .
- ↑ Mohamad, Ismail; Usman, Dauda (2013-09-01). "Estandarización y sus efectos en el algoritmo de agrupamiento K-Means" . Research Journal of Applied Sciences, Engineering and Technology . 6 (17): 3299– 3303. doi : 10.19026/rjaset.6.3638 .
- ↑ Fennell, Peter; Zuo, Zhiya; Lerman, Kristina (2019-12-01). "Predicción y explicación de datos de comportamiento con descomposición del espacio de características estructuradas" . EPJ Data Science . 8 23. arXiv : 1810.09841 . doi : 10.1140/epjds/s13688-019-0201-0 .
Lecturas adicionales
- Bennett, Kristin P.; Campbell, Colin (2000). "Máquinas de vectores de soporte: ¿exageración o aleluya?" (PDF) . SIGKDD Explorations . 2 (2): 1– 13. doi : 10.1145/380995.380999 . S2CID 207753020 .
- Cristianini, Nello; Shawe-Taylor, John (2000). Introducción a las máquinas de vectores de soporte y otros métodos de aprendizaje basados en núcleos . Cambridge University Press. ISBN 0-521-78019-5.
- Fradkin, Dmitriy; Muchnik, Ilya (2006). "Máquinas de vectores de soporte para clasificación" (PDF) . En Abello, J.; Carmode, G. (eds.). Métodos discretos en epidemiología . Serie DIMACS en matemáticas discretas e informática teórica. Vol. 70. pp. 13–20 .
- Joachims, Thorsten (1998). «Clasificación de texto con máquinas de vectores de soporte: aprendizaje con muchas características relevantes». En Nédellec, Claire; Rouveirol, Céline (eds.). Aprendizaje automático: ECML-98 . Lecture Notes in Computer Science. Vol. 1398. Berlín, Heidelberg: Springer. pp. 137–142 . doi : 10.1007/BFb0026683 . ISBN 978-3-540-64417-0. S2CID 2427083 .
- Ivanciuc, Ovidiu (2007). "Aplicaciones de las máquinas de vectores de soporte en química" (PDF) . Reviews in Computational Chemistry . Vol. 23. pp. 291–400 . doi : 10.1002/9780470116449.ch6 . ISBN 9780470116449.
- James, Gareth; Witten, Daniela; Hastie, Trevor; Tibshirani, Robert (2013). «Máquinas de vectores de soporte» (PDF) . Introducción al aprendizaje estadístico : con aplicaciones en R. Nueva York: Springer. pp. 337–372 . ISBN 978-1-4614-7137-0.
- Schölkopf, Bernhard; Smola, Alexander J. (2002). Aprendiendo con Kernels . Cambridge, MA: MIT Press. ISBN 0-262-19475-9.
- Steinwart, Ingo; Christmann, Andreas (2008). Máquinas de vectores de soporte . Nueva York: Springer. ISBN 978-0-387-77241-7.
- Theodoridis, Sergios; Koutroumbas, Konstantinos (2009). Reconocimiento de patrones (4.ª ed.). Academic Press. ISBN 978-1-59749-272-0.
Enlaces externos
- libsvm , LIBSVM es una biblioteca popular de aprendices SVM.
- liblinear es una biblioteca para clasificación lineal a gran escala que incluye algunas máquinas de vectores de soporte (SVM).
- SVM light es una colección de herramientas de software para el aprendizaje y la clasificación mediante SVM.
- La demostración en vivo de SVMJS, archivada el 5 de mayo de 2013 en Wayback Machine, es una demostración con interfaz gráfica de usuario para la implementación de SVM en JavaScript .
- Máquinas de vectores de soporte
- Algoritmos de clasificación
- Clasificación estadística
- Métodos de kernel para el aprendizaje automático
- Optimización convexa
- algoritmos de aprendizaje automático