Glosario

Máquina de vectores de apoyo (SVM)

Descubre la potencia de las máquinas de vectores soporte (SVM) para la clasificación, la regresión y la detección de valores atípicos, con aplicaciones y conocimientos del mundo real.

Entrena los modelos YOLO simplemente
con Ultralytics HUB

Saber más

La máquina de vectores de soporte (SVM) es un potente algoritmo de aprendizaje automático supervisado que se utiliza principalmente para tareas de clasificación, pero también puede aplicarse a la regresión y a la detección de valores atípicos. En esencia, un modelo SVM trata de encontrar el límite óptimo que separa las distintas clases en tus datos. Este límite, conocido como hiperplano, se elige para maximizar el margen, o la distancia entre el hiperplano y los puntos de datos más cercanos de cada clase. Este enfoque en la maximización del margen es lo que hace que las SVM sean especialmente eficaces en la generalización, lo que significa que funcionan bien con datos no vistos.

Cómo funciona la SVM

En esencia, el objetivo de la SVM es encontrar el mejor hiperplano para dividir un conjunto de datos en clases distintas. Imagina que tienes dos grupos de puntos de datos trazados en un gráfico, y quieres trazar una línea para separarlos. Una SVM no traza cualquier línea, sino que encuentra la línea que está más alejada de los puntos más cercanos de ambos grupos. Estos puntos más cercanos se llaman vectores de soporte, y son cruciales para definir el hiperplano y, en consecuencia, el límite de decisión.

Las SVM son versátiles y pueden tratar problemas de clasificación tanto lineales como no lineales. Para datos linealmente separables, basta con una simple línea recta (en 2D) o un hiperplano (en dimensiones superiores). Sin embargo, para conjuntos de datos más complejos y no lineales, las SVM utilizan una técnica llamada truco del núcleo. Esto les permite mapear implícitamente los datos en espacios de mayor dimensión en los que un hiperplano lineal puede separar eficazmente las clases, sin realizar realmente la transformación, que es costosa desde el punto de vista informático. Los núcleos más comunes son los lineales, los polinómicos y los de función de base radial (RBF), cada uno de ellos adecuado para distintos tipos de distribuciones de datos.

Relevancia y aplicaciones

Las SVM son muy valoradas en el aprendizaje automático debido a su robustez y eficacia en espacios de alta dimensión. Son especialmente útiles cuando se trata de conjuntos de datos complejos en los que existe un claro margen de separación entre clases, pero los límites son intrincados. Aunque los nuevos modelos de aprendizaje profundo se han impuesto en muchas áreas, las SVM siguen siendo relevantes y a menudo se prefieren en escenarios con:

  • Alta dimensionalidad: Las SVM funcionan bien incluso cuando el número de características es mucho mayor que el número de muestras. A diferencia de otros algoritmos que pueden tener problemas con datos dispersos y de alta dimensionalidad.
  • Margen de separación claro: Cuando hay una separación clara entre las clases, las SVM pueden encontrar límites eficaces, superando a menudo a otros clasificadores.
  • Necesidad de interpretabilidad: Aunque no son tan intrínsecamente interpretables como los árboles de decisión, las SVM son más transparentes que las redes neuronales complejas. Los vectores de soporte proporcionan información sobre qué puntos de datos son más críticos para la clasificación.

Las SVM han encontrado aplicaciones en diversos campos, entre ellos:

  • Clasificación de imágenes: En visión por ordenador, las SVM pueden utilizarse para tareas de clasificación de imágenes. Por ejemplo, pueden clasificar imágenes en categorías como gatos y perros, o diferentes tipos de objetos detectados por modelosUltralytics YOLO .
  • Clasificación de textos y documentos: Las SVM son eficaces en el procesamiento del lenguaje natural para tareas como el análisis de sentimientos, la detección de spam y la clasificación de artículos de noticias. Pueden manejar los espacios de características de alta dimensión que son comunes en los datos de texto.
  • Diagnóstico médico: En sanidad, las SVM se utilizan en el análisis de imágenes médicas para clasificar imágenes médicas, como la identificación de células cancerosas en imágenes radiológicas o el diagnóstico de enfermedades a partir de los datos de los pacientes.
  • Bioinformática: Las SVM se utilizan para la clasificación de secuencias, la predicción de la estructura de las proteínas y el análisis de la expresión génica en la investigación bioinformática.

Ventajas y limitaciones

Las SVM ofrecen varias ventajas:

  • Eficaces en dimensiones elevadas: Como ya se ha dicho, las SVM destacan en espacios con muchas características.
  • Eficientes en memoria: Utilizan un subconjunto de puntos de entrenamiento (vectores de soporte) en la función de decisión, lo que las hace eficientes en memoria.
  • Funciones de núcleo versátiles: El truco del núcleo permite a las SVM modelar eficazmente límites de decisión no lineales.

Sin embargo, las SVM también tienen limitaciones:

  • Complejidad computacional: El entrenamiento puede ser computacionalmente intensivo, especialmente con grandes conjuntos de datos, aunque técnicas como la Optimización Mínima Secuencial (OMS) ayudan a mitigarlo.
  • Ajuste de parámetros: La elección del núcleo y de los hiperparámetros, como el parámetro de regularización (C) y los parámetros del núcleo, pueden afectar significativamente al rendimiento y requieren un ajuste cuidadoso, a menudo mediante técnicas como el ajuste de hiperparámetros.
  • No son inherentemente probabilísticas: las SVM dan como resultado una etiqueta de clase, pero las estimaciones de probabilidad requieren una calibración adicional, a diferencia de los modelos probabilísticos como la regresión logística o Naive Bayes.

Ejemplos reales

  1. Reconocimiento facial: Las SVM se utilizan en los sistemas de reconocimiento facial para clasificar los rasgos faciales e identificar a los individuos. Dado un conjunto de datos de imágenes faciales, se puede entrenar una SVM para distinguir entre distintas caras, lo que constituye la base de un sistema de reconocimiento facial utilizado en aplicaciones de seguridad o identificación personal.

  2. Detección de correo basura: Las SVM son muy eficaces para filtrar los correos electrónicos basura. Al entrenar una SVM con características extraídas del contenido y los metadatos del correo electrónico, como frecuencias de palabras, encabezados de correo electrónico e información del remitente, el modelo puede clasificar con precisión los correos electrónicos entrantes como spam o no spam, mejorando la seguridad del correo electrónico y la experiencia del usuario.

En conclusión, las máquinas de vectores soporte son un algoritmo de aprendizaje automático robusto y versátil, muy adecuado para la clasificación y otras tareas, sobre todo en entornos de alta dimensión o cuando existe un claro margen de separación entre clases. Aunque puede que no sean la tecnología de aprendizaje profundo más novedosa, su eficacia y fundamento teórico garantizan su continua relevancia en el campo de la inteligencia artificial.

Leer todo