stringtranslate.com

Máquinas de vectores soporte

En el aprendizaje automático , las máquinas de vectores de soporte ( SVM , también soportan redes de vectores [1] ) son modelos de margen máximo supervisados ​​con algoritmos de aprendizaje asociados que analizan datos para clasificación y análisis de regresión . Desarrolladas en AT&T Bell Laboratories por Vladimir Vapnik con colegas (Boser et al., 1992, Guyon et al., 1993, Cortes y Vapnik , 1995, [1] Vapnik et al., 1997 [2] ) Las SVM son una de las más modelos estudiados, basándose en marcos de aprendizaje estadístico o teoría VC propuesta por Vapnik (1982, 1995) y Chervonenkis (1974).

Además de realizar una clasificación lineal , las SVM pueden realizar de manera eficiente una clasificación no lineal utilizando lo que se llama el truco del núcleo , mapeando implícitamente sus entradas en espacios de características de alta dimensión. Las SVM también se pueden utilizar para tareas de regresión , donde el objetivo se vuelve sensible.

El algoritmo de agrupamiento de vectores de soporte [3] , 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. [ cita necesaria ] Estos conjuntos de datos requieren enfoques de aprendizaje no supervisados , que intentan encontrar agrupaciones naturales de los datos en grupos y, luego, mapear nuevos datos de acuerdo con estos grupos.

La popularidad de las SVM probablemente se deba a su facilidad para el análisis teórico y su flexibilidad para aplicarse a una amplia variedad de tareas, incluidos problemas de predicción estructurados . 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 . [ cita necesaria ]

Motivación

H 1 no separa las clases. H 2 sí, pero sólo con un pequeño margen. H 3 los separa con el margen máximo.

Clasificar datos es una tarea común en el aprendizaje automático . Supongamos que algunos puntos de datos dados pertenecen a una de dos clases, y el objetivo es decidir en qué clase estará un nuevo punto de datos . En el caso de máquinas de vectores de soporte, un punto de datos se ve como un vector de dimensión (una lista de números), y queremos saber si podemos separar dichos puntos con un hiperplano de dimensiones . Esto se llama clasificador lineal . Hay muchos hiperplanos que podrían clasificar los datos. Una elección razonable como mejor hiperplano es aquella que representa la mayor separación o margen entre las dos clases. Entonces, elegimos el hiperplano de modo que se maximice la distancia desde él hasta el punto de datos más cercano en cada lado. Si tal hiperplano existe, se 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 . [ cita necesaria ]

Más formalmente, una máquina de vectores de soporte construye un hiperplano o un conjunto de hiperplanos en un espacio de dimensión alta o infinita, que puede usarse para clasificación , regresión u otras tareas como la detección de valores atípicos. [4] Intuitivamente, una buena separación se logra mediante 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 es el margen, menor es el error de generalización de el clasificador. [5] Un error de generalización menor significa que es menos probable que el implementador experimente un sobreajuste .

maquina de granos

Mientras que el problema original puede plantearse en un espacio de dimensión finita, a menudo sucede que los conjuntos a discriminar no son linealmente separables en ese espacio. Por esta razón, se propuso [6] que el espacio original de dimensión finita se mapeara en un espacio de dimensiones mucho más altas, presumiblemente haciendo la separación más fácil en ese espacio. Para mantener la carga computacional razonable, las asignaciones utilizadas por los esquemas SVM están diseñadas para garantizar que los productos escalares de pares de vectores de datos de entrada puedan calcularse fácilmente en términos de las variables en el espacio original, definiéndolas en términos de una función del núcleo seleccionada. para adaptarse al problema. [7] Los hiperplanos en el espacio de dimensiones superiores 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 se pueden elegir para que sean combinaciones lineales con parámetros de imágenes de vectores de características que ocurren en la base de datos. Con esta elección de un hiperplano, los puntos en el espacio de características que se asignan al hiperplano se definen mediante la relación. Tenga en cuenta que si se vuelve pequeño a medida que se aleja de , cada término de la suma mide el grado de cercanía del punto de prueba a el punto de la base de datos correspondiente . De esta manera, la suma de núcleos anterior se puede utilizar para medir la cercanía relativa de cada punto de prueba a los puntos de datos que se originan en uno u otro de los conjuntos a discriminar. Tenga en cuenta el hecho de que , como resultado, el conjunto de puntos mapeados en cualquier hiperplano puede ser bastante complicado, lo que permite una discriminación mucho más compleja entre conjuntos que no son convexos en absoluto en el espacio original.

Aplicaciones

Las SVM se pueden utilizar para resolver varios problemas del mundo real:

Historia

El algoritmo SVM original fue inventado por Vladimir N. Vapnik y Alexey Ya. Chervonenkis en 1964. [ cita necesaria ] En 1992, Bernhard Boser, Isabelle Guyon y Vladimir Vapnik sugirieron una forma de crear clasificadores no lineales aplicando el truco del núcleo a hiperplanos de margen máximo. [6] La encarnación del "margen suave", como se usa comúnmente en los paquetes de software, fue propuesta por Corinna Cortés y Vapnik en 1993 y publicada en 1995. [1]

SVM lineal

Hiperplano de margen máximo y márgenes para una SVM entrenada con muestras de dos clases. Las muestras en el margen se denominan vectores de soporte.

Se nos proporciona un conjunto de datos de entrenamiento de puntos de la forma

real

Cualquier hiperplano se puede escribir como el conjunto de puntos que satisfacen

vector normalla forma normal de Hesse

Margen duro

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 la mayor posible. La región delimitada por estos dos hiperplanos se llama "margen", y el hiperplano de margen máximo es el hiperplano que se encuentra a medio camino entre ellos. Con un conjunto de datos normalizado o estandarizado, estos hiperplanos pueden describirse mediante las ecuaciones

(Todo lo que esté por encima o por encima de este límite es de una clase, con etiqueta 1)

y

(Todo lo que esté por encima o por debajo de este límite es de la otra clase, con etiqueta −1).

Geométricamente, la distancia entre estos dos hiperplanos es [18] , por lo que para maximizar la distancia entre los planos queremos minimizar . La 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 cada uno

Esto se puede reescribir como

Podemos juntar esto para obtener el problema de optimización:

Los y que resuelven este problema determinan nuestro clasificador, donde está la función de signo .

Una consecuencia importante de esta descripción geométrica es que el hiperplano de margen máximo está completamente determinado por aquellos que se encuentran más cerca de él (se explica a continuación). Estos se denominan vectores de soporte .

margen suave

Para extender SVM a casos en los que los datos no son separables linealmente, la función de pérdida de bisagra es útil

Tenga en cuenta que es el i -ésimo objetivo (es decir, en este caso, 1 o −1) y es la i -ésima salida.

Esta función es cero si se cumple la restricción en (1) , en otras palabras, si se encuentra en el lado correcto del margen. Para los datos en el lado incorrecto del margen, el valor de la función es proporcional a la distancia desde el margen.

El objetivo de la optimización entonces es minimizar:

donde el parámetro determina el equilibrio entre aumentar el tamaño del margen y garantizar que se encuentre en el lado correcto del margen (tenga en cuenta que podemos agregar un peso a cualquiera de los términos en la ecuación anterior). Al deconstruir la pérdida de bisagra, este problema de optimización se puede resumir en lo siguiente:

Por lo tanto, para valores grandes de , se comportará de manera similar a la SVM de margen estricto, si los datos de entrada son clasificables linealmente, pero aún aprenderá si una regla de clasificación es viable o no.

Núcleos no lineales

maquina de granos

El algoritmo de hiperplano de margen máximo original 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 núcleo (propuesto originalmente por Aizerman et al. [19] ) a hiperplanos de margen máximo. [6] El algoritmo resultante es formalmente similar, excepto que cada producto escalar [ se necesita más explicación ] se reemplaza por una función kernel no lineal . [ Se necesita más explicación ] Esto permite que el algoritmo se ajuste al 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.

Es de destacar que trabajar en un espacio de características de dimensiones superiores aumenta el error de generalización de las máquinas de vectores de soporte, aunque, con suficientes muestras, el algoritmo aún funciona bien. [20]

Algunos núcleos comunes incluyen:

El núcleo está relacionado con la transformada mediante la ecuación . El valor w también está en el espacio transformado, con . Los productos escalares con w para clasificación se pueden calcular nuevamente mediante el truco del kernel, es decir .

Calcular el clasificador SVM

Calcular el clasificador SVM (margen suave) equivale a minimizar una expresión de la forma

Nos centramos en el clasificador de margen blando ya que, como se señaló anteriormente, al elegir un valor suficientemente pequeño para se obtiene el clasificador de margen duro para datos de entrada clasificables linealmente. A continuación se detalla el enfoque clásico, que implica reducir (2) a un problema de programación cuadrática . Luego, se discutirán enfoques más recientes, como el descenso en subgradiente y el descenso coordinado.

Primitivo

Minimizar (2) se puede reescribir como un problema de optimización restringida con una función objetivo diferenciable de la siguiente manera.

Para cada uno introducimos una variable . Tenga en cuenta que es el número no negativo más pequeño que satisface

Por tanto, podemos reescribir el problema de optimización de la siguiente manera

A esto se le llama el problema primario .

Doble

Resolviendo el dual lagrangiano del problema anterior, se obtiene el problema simplificado

A esto se le llama el problema dual . Dado que el problema de maximización dual es una función cuadrática del sujeto a restricciones lineales, se puede resolver eficientemente mediante algoritmos de programación cuadrática .

Aquí, las variables se definen de tal manera que

Además, exactamente cuándo se encuentra en el lado correcto del margen y cuándo se encuentra en el límite del margen. De ello se deduce que se puede escribir como una combinación lineal de los vectores de soporte.

El desplazamiento, , se puede recuperar encontrando un en el límite del margen y resolviendo

(Tenga en cuenta que desde .)

truco del kernel

Un ejemplo de entrenamiento de SVM con kernel dado por φ(( a , b )) = ( a , b , a 2 + b 2 )

Supongamos ahora que nos gustaría aprender una regla de clasificación no lineal que corresponde a una regla de clasificación lineal para los puntos de datos transformados. Además, se nos proporciona una función central que satisface .

Sabemos que el vector de clasificación en el espacio transformado satisface

donde, se obtienen resolviendo el problema de optimización

Los coeficientes se pueden resolver mediante programación cuadrática, como antes. Nuevamente, podemos encontrar algún índice tal que , de modo que se encuentre 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 por subgradiente y el descenso por coordenadas. Ambas técnicas han demostrado ofrecer ventajas significativas sobre el enfoque tradicional cuando se trata de conjuntos de datos grandes y dispersos: los métodos de subgradiente son especialmente eficientes cuando hay muchos ejemplos de entrenamiento y coordinan el descenso cuando la dimensión del espacio de características es alta.

Descenso subgradiente

Los algoritmos de descenso de subgradiente para SVM funcionan directamente con la expresión

Tenga en cuenta que es una función convexa de y . Como tal, se pueden adaptar los métodos tradicionales de descenso de gradiente (o SGD ), 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. [21]

Descenso coordinado

Algoritmos de descenso de coordenadas para el trabajo SVM a partir del problema dual.

Para cada , de forma iterativa, el coeficiente se ajusta en la dirección de . Luego, el vector de coeficientes resultante se proyecta sobre el vector de coeficientes más cercano que satisfaga las restricciones dadas. (Por lo general, se utilizan distancias euclidianas). Luego, el proceso se repite hasta que se obtiene 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. [22]

Minimización empírica del riesgo

La máquina de vectores de soporte de margen blando descrita anteriormente es un ejemplo de un algoritmo empírico de minimización de riesgos (ERM) para la pérdida de bisagra . Visto de esta manera, 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 pérdida de bisagra. Esta perspectiva puede proporcionar más información sobre cómo y por qué funcionan las SVM y permitirnos analizar mejor sus propiedades estadísticas.

Minimización de riesgos

En el aprendizaje supervisado, a uno se le proporciona un conjunto de ejemplos de entrenamiento con etiquetas y se desea predecir lo dado . Para hacerlo, se forma una hipótesis , tal que sea una "buena" aproximación de . Una aproximación "buena" generalmente se define con la ayuda de una función de pérdida , que caracteriza qué tan mala es como predicción de . Entonces 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 del total. En estos casos, una estrategia común es elegir la hipótesis que minimice el riesgo empírico:

Bajo ciertos supuestos sobre la secuencia de variables aleatorias (por ejemplo, que son generadas por un proceso de Markov finito), si el conjunto de hipótesis que se consideran es lo suficientemente pequeño, el minimizador del riesgo empírico se aproximará mucho al minimizador del riesgo esperado. a medida que crece. 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 consideran. Si es un espacio normado (como es el caso de SVM), una técnica particularmente efectiva es considerar solo aquellas hipótesis para las cuales . Esto equivale a imponer una penalización de regularización y resolver el nuevo problema de optimización.

Este enfoque se llama regularización de Tikhonov .

De manera más general, puede haber alguna medida de la complejidad de la hipótesis , por lo que se prefieren hipótesis más simples.

SVM y la pérdida de bisagra

Recuerde que el clasificador SVM (margen suave) se elige para minimizar la siguiente expresión:

A la luz de la discusión anterior, vemos que la técnica SVM es equivalente a la minimización empírica del riesgo con la regularización de Tikhonov, donde en este caso la función de pérdida es la pérdida bisagra.

Desde esta perspectiva, SVM está estrechamente relacionado con otros algoritmos de clasificación fundamentales , como los mínimos cuadrados regularizados y la regresión logística . La diferencia entre los tres radica en la elección de la función de pérdida: los mínimos cuadrados regularizados equivalen a una minimización empírica del riesgo con la pérdida al cuadrado ; la regresión logística emplea la pérdida logarítmica ,

Funciones objetivo

La diferencia entre la pérdida 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, denotemos condicional al evento de que . En el ámbito de la clasificación tenemos:

Por tanto, el clasificador óptimo es:

Para la pérdida cuadrada, la función objetivo es la función de expectativa condicional ; Para la pérdida logística, es la función logit . Si bien ambas funciones objetivo producen el clasificador correcto, como , nos brindan más información de la que necesitamos. De hecho, nos brindan 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 clasifique correctamente los datos. Esto amplía 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 ellos es el clasificador de margen máximo. [23]

Propiedades

Los SVM pertenecen a una familia de clasificadores lineales generalizados y pueden interpretarse como una extensión del perceptrón . 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írica y maximizan el margen geométrico ; de ahí que también se les conozca como clasificadores de margen máximo .

Meyer, Leisch y Hornik han realizado una comparación del SVM con otros clasificadores. [24]

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 de y a menudo se selecciona mediante una búsqueda en cuadrícula con secuencias de y que crecen exponencialmente , por ejemplo, ; . Normalmente, cada combinación de opciones de parámetros se verifica mediante validación cruzada y se seleccionan los parámetros con la mejor precisión de validación cruzada. Alternativamente, se pueden utilizar trabajos recientes en optimización bayesiana para seleccionar y , lo 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, luego se entrena en todo el conjunto de entrenamiento utilizando los parámetros seleccionados. [25]

Asuntos

Los posibles inconvenientes del SVM incluyen los siguientes aspectos:

Extensiones

Agrupación de vectores de soporte (SVC)

SVC es un método similar que también se basa en funciones del kernel pero es apropiado para el aprendizaje no supervisado. [ cita necesaria ]

SVM multiclase

SVM multiclase tiene como objetivo asignar etiquetas a 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 a múltiples problemas de clasificación binaria . [26] Los métodos comunes para dicha reducción incluyen: [26] [27]

Crammer y Singer propusieron un método SVM multiclase que convierte 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. [30] Véase también Lee, Lin y Wahba [31] [32] y Van den Burg y Groenen. [33]

Máquinas de vectores de soporte transductivos

Las máquinas transductivas de vectores de soporte amplían las SVM en el sentido de que también podrían tratar datos parcialmente etiquetados en aprendizaje semisupervisado siguiendo los principios de la transducción . Aquí, además del conjunto de formación , el alumno también recibe un conjunto

de ejemplos de prueba a clasificar. Formalmente, una máquina de vectores de soporte transductivo se define mediante el siguiente problema de optimización primaria: [34]

Minimizar (en )

sujeto a (para cualquiera y cualquiera )

y

Las máquinas transductivas de vectores de soporte fueron introducidas por Vladimir N. Vapnik en 1998.

SVM estructurado

Las SVM se han generalizado a SVM estructuradas , donde el espacio de etiquetas está estructurado y posiblemente sea de tamaño infinito.

Regresión

Regresión de vectores de soporte (predicción) con diferentes umbrales ε . A medida que ε aumenta, la predicción se vuelve menos sensible a los errores.

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 . [35] Este método se llama regresión de vector de soporte (SVR). El modelo producido por la clasificación de vectores de soporte (como se describió anteriormente) depende solo de un subconjunto de datos de entrenamiento, porque a la función de costo para construir el modelo no le importan los puntos de entrenamiento que se encuentran más allá del margen. De manera análoga, el modelo producido por SVR depende solo de un subconjunto de datos de entrenamiento, porque la función de costo 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). [36]

Entrenar el SVR original significa resolver [37]

minimizar
sujeto a

donde hay una muestra de entrenamiento con valor objetivo . El producto interno más la intersección es la predicción para esa muestra y es un parámetro libre que sirve como umbral: todas las predicciones deben estar dentro de un rango de las predicciones verdaderas. Las variables de holgura generalmente se agregan a lo anterior para permitir errores y permitir la aproximación en el caso de que el problema anterior no sea factible.

SVM bayesiana

En 2011 Polson y Scott demostraron que el SVM admite una interpretación bayesiana mediante la técnica de aumento de datos . [38] En este enfoque, el SVM se ve como un modelo gráfico (donde los parámetros están conectados mediante distribuciones de probabilidad). Esta vista ampliada permite la aplicación de técnicas bayesianas a SVM, como el modelado de características flexibles, el ajuste automático de hiperparámetros y la cuantificación de la incertidumbre predictiva . Recientemente, Florian Wenzel desarrolló una versión escalable de SVM bayesiana, que permite la aplicación de SVM bayesianas a big data . [39] Florian Wenzel desarrolló dos versiones diferentes, un esquema de inferencia variacional (VI) para la máquina de vectores de soporte del núcleo bayesiano (SVM) y una versión estocástica (SVI) para la SVM bayesiana lineal. [40]

Implementación

Los parámetros del hiperplano de margen máximo se obtienen resolviendo la optimización. Existen varios algoritmos especializados para resolver rápidamente el problema de programación cuadrática (QP) que surge de las SVM, basándose principalmente en heurísticas para dividir el problema en partes más pequeñas y manejables.

Otro enfoque es utilizar un método de punto interior que utiliza iteraciones tipo Newton para encontrar una solución de las condiciones de Karush-Kuhn-Tucker de los problemas primario y dual. [41] En lugar de resolver una secuencia de problemas desglosados, este enfoque resuelve directamente el problema por completo. Para evitar resolver un sistema lineal que involucra la matriz del núcleo grande, a menudo se usa una aproximación de rango bajo a la matriz en el truco del núcleo.

Otro método común es el algoritmo de optimización mínima secuencial (SMO) de Platt , que divide el problema en subproblemas bidimensionales que se resuelven analíticamente, eliminando la necesidad de un algoritmo de optimización numérica y almacenamiento matricial. Este algoritmo es conceptualmente simple, fácil de implementar, generalmente más rápido y tiene mejores propiedades de escala para problemas SVM difíciles. [42]

El caso especial de las máquinas de vectores de soporte lineales se puede resolver de manera más eficiente mediante el mismo tipo de algoritmos utilizados para optimizar su prima cercana, la regresión logística ; esta clase de algoritmos incluye descenso de subgradiente (p. ej., PEGASOS [43] ) y descenso de coordenadas (p. ej., LIBLINEAR [44] ). LIBLINEAR tiene algunas propiedades atractivas en el tiempo de entrenamiento. Cada iteración de convergencia requiere un tiempo lineal en el tiempo necesario para leer los datos del tren, y las iteraciones también tienen una propiedad de convergencia Q-lineal , lo que hace que el algoritmo sea extremadamente rápido.

Las SVM generales del kernel también se pueden resolver de manera más eficiente utilizando el descenso de subgradiente (por ejemplo, P-packSVM [45] ), especialmente cuando se permite la paralelización .

Las SVM de kernel están disponibles en muchos kits 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. [46] Existen algunos métodos de estandarización, como min-max, normalización mediante escala decimal y puntuación Z. [47] La ​​resta de la media y la división por la varianza de cada característica se utiliza generalmente para SVM. [48]

Ver también

Referencias

  1. ^ abc Cortés, Corinna ; Vápnik, Vladimir (1995). "Redes de vectores de soporte" (PDF) . Aprendizaje automático . 20 (3): 273–297. CiteSeerX  10.1.1.15.9362 . doi : 10.1007/BF00994018 . S2CID  206787478.
  2. ^ Vapnik, Vladimir N. (1997). Gerstner, Wulfram; Germond, Alain; Hasler, Martín; Nicoud, Jean-Daniel (eds.). "El método del vector de soporte". Redes neuronales artificiales: ICANN'97 . Berlín, Heidelberg: Springer: 261–271. doi :10.1007/BFb0020166. ISBN 978-3-540-69620-9.
  3. ^ Ben-Hur, Asa; Cuerno, David; Siegelmann, Hava; Vapnik, Vladimir N.""Agrupación de vectores de soporte" (2001);". Revista de investigación sobre aprendizaje automático . 2 : 125–137.
  4. ^ "1.4. Máquinas vectoriales de soporte: documentación de scikit-learn 0.20.2". Archivado desde el original el 8 de noviembre de 2017 . Consultado el 8 de noviembre de 2017 .
  5. ^ Hastie, Trevor ; Tibshirani, Robert ; Friedman, Jerome (2008). Los elementos del aprendizaje estadístico: minería de datos, inferencia y predicción (PDF) (Segunda ed.). Nueva York: Springer. pag. 134.
  6. ^ abc Boser, Bernhard E.; Guyón, 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 . pag. 144. CiteSeerX 10.1.1.21.3818 . doi :10.1145/130385.130401. ISBN  978-0897914970. S2CID  207165665.
  7. ^ Prensa, William H.; Teukolsky, Saúl A.; Vetterling, William T.; Flannery, Brian P. (2007). "Sección 16.5. Máquinas de vectores de soporte". Recetas numéricas: el arte de la informática científica (3ª ed.). Nueva York: Cambridge University Press. ISBN 978-0-521-88068-8. Archivado desde el original el 11 de agosto de 2011.
  8. ^ Joachims, Thorsten (1998). "Categorización de texto con Support Vector Machines: aprendizaje con muchas funciones relevantes". Aprendizaje automático: ECML-98 . Apuntes de conferencias sobre informática. vol. 1398. Saltador. págs. 137-142. doi : 10.1007/BFb0026683 . ISBN 978-3-540-64417-0.
  9. ^ Pradhan, Sameer S.; et al. (2 de mayo de 2004). Análisis semántico superficial utilizando máquinas de vectores de soporte. Actas de la Conferencia sobre 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.
  10. ^ Vapnik, Vladimir N.: Orador invitado. Procesamiento y gestión de información de IPMU 2014).
  11. ^ Barghout, Lauren (2015). "Gránulos de información de taxones espaciales utilizados en la toma iterativa de decisiones difusas para la segmentación de imágenes" (PDF) . Computación granular y toma de decisiones . Estudios en Big Data. vol. 10. págs. 285–318. doi :10.1007/978-3-319-16829-6_12. ISBN 978-3-319-16828-9. S2CID  4154772. Archivado desde el original (PDF) el 8 de enero de 2018 . Consultado el 8 de enero de 2018 .
  12. ^ A. Maity (2016). "Clasificación supervisada de datos polarimétricos RADARSAT-2 para diferentes características del terreno". arXiv : 1608.00501 [cs.CV].
  13. ^ DeCoste, Dennis (2002). "Entrenamiento de máquinas de vectores de soporte invariantes" (PDF) . Aprendizaje automático . 46 : 161-190. doi : 10.1023/A:1012454411458 . S2CID  85843.
  14. ^ Maitra, DS; Bhattacharya, U.; Parui, SK (agosto de 2015). "Enfoque común basado en CNN para el reconocimiento de caracteres escritos a mano de múltiples guiones". 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.
  15. ^ Gaonkar, B.; Davatzikos, C. (2013). "Estimación analítica de mapas de significancia estadística para clasificación y análisis de imágenes multivariantes basados ​​​​en máquinas de vectores de soporte". NeuroImagen . 78 : 270–283. doi : 10.1016/j.neuroimage.2013.03.066. PMC 3767485 . PMID  23583748. 
  16. ^ Cuingnet, Rémi; Rosso, Charlotte; Chupín, María; Lehericy, Stéphane; Dormont, Didier; Benali, Habib; Sansón, Yves; Colliot, Olivier (2011). "Regularización espacial de SVM para la detección de alteraciones de la difusión asociadas al resultado del ictus" (PDF) . Análisis de Imágenes Médicas . 15 (5): 729–737. doi :10.1016/j.media.2011.05.007. PMID  21752695. Archivado desde el original (PDF) el 22 de diciembre de 2018 . Consultado el 8 de enero de 2018 .
  17. ^ Statnikov, Alejandro; Hardin, Douglas; & Aliferis, Constantin; (2006); "Uso de métodos basados ​​en el peso de SVM para identificar variables causalmente relevantes y no causalmente relevantes", Sign , 1, 4.
  18. ^ "¿Por qué el margen SVM es igual a 2 ‖ w ‖ {\displaystyle {\frac {2}{\|\mathbf {w} \|}}}". Intercambio de pilas de matemáticas . 30 de mayo de 2015.
  19. ^ 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 por reconocimiento de patrones". Automatización y Control Remoto . 25 : 821–837.
  20. ^ Jin, Chi; Wang, Liwei (2012). Límite de margen PAC-Bayes dependiente de la dimensionalidad. Avances en los sistemas de procesamiento de información neuronal. CiteSeerX 10.1.1.420.3487 . Archivado desde el original el 2 de abril de 2015. 
  21. ^ Shalev-Shwartz, Shai; Cantante, Yoram; Srebro, Nathan; Cotter, Andrés (16 de octubre de 2010). "Pegasos: solucionador de subgradiente estimado primario para SVM". Programación Matemática . 127 (1): 3–30. CiteSeerX 10.1.1.161.9629 . doi :10.1007/s10107-010-0420-4. ISSN  0025-5610. S2CID  53306004. 
  22. ^ Hsieh, Cho-Jui; Chang, Kai-Wei; Lin, Chih-Jen; Keerthi, S. Sathiya; Sundararajan, S. (1 de enero de 2008). "Un método de descenso de coordenadas duales para SVM lineal a gran escala". Actas de la 25ª conferencia internacional sobre aprendizaje automático - ICML '08 . Nueva York, NY, Estados Unidos: ACM. págs. 408–415. CiteSeerX 10.1.1.149.5594 . doi :10.1145/1390156.1390208. ISBN  978-1-60558-205-4. S2CID  7880266.
  23. ^ 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. ISSN  0899-7667. PMID  15070510. S2CID  11845688. 
  24. ^ Meyer, David; Leisch, Friedrich; Hornik, Kurt (septiembre de 2003). "La máquina de vectores de soporte bajo prueba". Neurocomputación . 55 (1–2): 169–186. doi :10.1016/S0925-2312(03)00431-4.
  25. ^ Hsu, Chih-Wei; Chang, Chih-Chung y Lin, Chih-Jen (2003). Una guía práctica para la clasificación de vectores de soporte (PDF) (Reporte técnico). Departamento de Ciencias de la Computación e Ingeniería de la Información, Universidad Nacional de Taiwán. Archivado (PDF) desde el original el 25 de junio de 2013.
  26. ^ ab Duan, Kai-Bo; Keerthi, S. Sathiya (2005). "¿Cuál es el mejor método SVM multiclase? Un estudio empírico" (PDF) . Sistemas clasificadores múltiples . LNCS . vol. 3541, págs. 278–285. CiteSeerX 10.1.1.110.6789 . doi :10.1007/11494683_28. ISBN  978-3-540-26306-7. Archivado desde el original (PDF) el 3 de mayo de 2013 . Consultado el 18 de julio de 2019 .
  27. ^ Hsu, Chih-Wei y Lin, Chih-Jen (2002). "Una comparación de métodos para máquinas de vectores de soporte multiclase" (PDF) . Transacciones IEEE en redes neuronales . 13 (2): 415–25. doi : 10.1109/72.991427. PMID  18244442. Archivado desde el original (PDF) el 3 de mayo de 2013 . Consultado el 8 de enero de 2018 .
  28. ^ Platt, John; Cristianini, Nello ; Shawe-Taylor, John (2000). "DAG de gran margen para clasificación multiclase" (PDF) . En Solla, Sara A .; Leen, Todd K.; Müller, Klaus-Robert (eds.). Avances en los sistemas de procesamiento de información neuronal . Prensa del MIT. págs. 547–553. Archivado (PDF) desde el original el 16 de junio de 2012.
  29. ^ Dietterich, Thomas G.; Bakiri, Ghulum (1995). "Resolver problemas de aprendizaje multiclase mediante códigos de salida de corrección de errores" (PDF) . Revista de investigación en inteligencia artificial . 2 : 263–286. arXiv : cs/9501101 . Código Bib : 1995cs.......1101D. doi :10.1613/jair.105. S2CID  47109072. Archivado (PDF) desde el original el 9 de mayo de 2013.
  30. ^ Crammer, Koby y Singer, Yoram (2001). "Sobre la implementación algorítmica de máquinas vectoriales basadas en kernel multiclase" (PDF) . Revista de investigación sobre aprendizaje automático . 2 : 265–292. Archivado (PDF) desde el original el 29 de agosto de 2015.
  31. ^ 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 (PDF) desde el original el 17 de junio de 2013.
  32. ^ Lee, Yoonkyung; Lin, Yi; Wahba, gracia (2004). "Máquinas de vectores de soporte multicategoría". Revista de la Asociación Estadounidense de Estadística . 99 (465): 67–81. CiteSeerX 10.1.1.22.1879 . doi :10.1198/016214504000000098. S2CID  7066611. 
  33. ^ 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.
  34. ^ Joaquín, Thorsten. Inferencia transductiva para clasificación de texto utilizando máquinas de vectores de soporte (PDF) . Actas de la Conferencia Internacional sobre Aprendizaje Automático de 1999 (ICML 1999). págs. 200–209.
  35. ^ Drucker, Harris; Burges, Cristo. 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.
  36. ^ Suykens, Johan AK; Vandewalle, Joos PL; "Los mínimos cuadrados admiten clasificadores de máquinas vectoriales", Neural Processing Letters , vol. 9, núm. 3, junio de 1999, págs. 293–300.
  37. ^ Smola, Alex J.; Schölkopf, Bernhard (2004). "Un tutorial sobre la regresión de vectores de soporte" (PDF) . Estadística y Computación . 14 (3): 199–222. CiteSeerX 10.1.1.41.1452 . doi :10.1023/B:STCO.0000035301.49549.88. S2CID  15475. Archivado (PDF) desde el original el 31 de enero de 2012. 
  38. ^ Polson, Nicolás 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 .
  39. ^ Wenzel, Florián; Galy-Fajou, Theo; Deutsch, Matthäus; Kloft, Marius (2017). "Máquinas bayesianas de vectores de soporte no lineales para Big Data". Aprendizaje automático y descubrimiento de conocimiento en bases de datos . Apuntes de conferencias sobre informática. vol. 10534. págs. 307–322. arXiv : 1707.05532 . Código Bib : 2017arXiv170705532W. doi :10.1007/978-3-319-71249-9_19. ISBN 978-3-319-71248-2. S2CID  4018290.
  40. ^ Florián Wenzel; Matthäus Deutsch; Théo Galy-Fajou; Marius Kloft; "Inferencia aproximada escalable para la máquina de vectores de soporte no lineal bayesiano"
  41. ^ Ferris, Michael C.; Munson, Todd S. (2002). "Métodos de punto interior para máquinas de vectores de soporte masivos" (PDF) . Revista SIAM sobre Optimización . 13 (3): 783–804. CiteSeerX 10.1.1.216.6893 . doi :10.1137/S1052623400374379. S2CID  13563302. Archivado (PDF) desde el original el 4 de diciembre de 2008. 
  42. ^ 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) desde el original el 2 de julio de 2015.
  43. ^ Shalev-Shwartz, Shai; Cantante, Yoram; Srebro, Nathan (2007). Pegasos: SOlver de subgrado estimado primario para SVM (PDF) . ICML. Archivado (PDF) desde el original el 15 de diciembre de 2013.
  44. ^ Fan, Rong-En; Chang, Kai-Wei; Hsieh, Cho-Jui; Wang, Xiang-Rui; Lin, Chih-Jen (2008). "LIBLINEAR: Una biblioteca para clasificación lineal grande" (PDF) . Revista de investigación sobre aprendizaje automático . 9 : 1871–1874.
  45. ^ Allen Zhu, Zeyuan; Chen, Weizhu; Wang, pandilla; Zhu, Chenguang; Chen, Zheng (2009). P-packSVM: SVM del kernel de descenso primario paralelo (PDF) . ICDM. Archivado (PDF) desde el original el 7 de abril de 2014.
  46. ^ Fan, Rong-En; Chang, Kai-Wei; Hsieh, Cho-Jui; Wang, Xiang-Rui; Lin, Chih-Jen (2008). "LIBLINEAR: Una biblioteca para clasificación lineal grande". Revista de investigación sobre aprendizaje automático . 9 (agosto): 1871–1874.
  47. ^ Mohamed, Ismail; Usman, Dauda (1 de septiembre de 2013). "Estandarización y sus efectos sobre el algoritmo de agrupación de K-Means". Revista de Investigación de Ciencias Aplicadas, Ingeniería y Tecnología . 6 (17): 3299–3303. doi : 10.19026/rjaset.6.3638 .
  48. ^ Fennell, Peter; Zuo, Zhiya; Lerman, Kristina (1 de diciembre de 2019). "Predecir y explicar datos de comportamiento con descomposición estructurada del espacio de características". Ciencia de datos de EPJ . 8 . arXiv : 1810.09841 . doi : 10.1140/epjds/s13688-019-0201-0 .

Otras lecturas

enlaces externos