Yolo Vision Shenzhen
Shenzhen
Únete ahora
Glosario

Máquina de Vectores de Soporte (SVM)

Descubra el poder de las máquinas de vectores de soporte (SVM) para la clasificación, la regresión y la detección de valores atípicos, con aplicaciones e información del mundo real.

La Máquina de Vectores de Soporte (SVM) es un algoritmo de aprendizaje supervisado potente y versátil que se utiliza tanto para tareas de clasificación como de regresión. En esencia, una SVM encuentra un hiperplano óptimo o un límite de decisión que separa mejor los puntos de datos en diferentes clases. Lo que hace que SVM sea particularmente eficaz es su objetivo de maximizar el margen: la distancia entre el hiperplano de separación y los puntos de datos más cercanos de cualquier clase. Este principio, detallado en el documento fundacional de Cortes y Vapnik, ayuda a mejorar la capacidad de generalización del modelo, haciéndolo menos propenso al sobreajuste.

Cómo funcionan las SVM

El algoritmo funciona representando cada elemento de datos como un punto en un espacio n-dimensional (donde n es el número de características). La clasificación se realiza entonces encontrando el hiperplano que crea la mejor separación entre las clases.

  • Hiperplano: Este es el límite de decisión. En un conjunto de datos con dos características, es una línea; con tres, es un plano. Para más características, se convierte en un hiperplano.
  • Vectores de soporte: Son los puntos de datos más cercanos al hiperplano. Son cruciales porque definen el margen, y eliminarlos alteraría la posición del hiperplano. Se puede encontrar una excelente visualización de los vectores de soporte en las notas de la clase CS229 de Stanford.
  • Margen: El margen es la distancia entre los vectores de soporte y el hiperplano. El objetivo de SVM es encontrar el hiperplano que maximice este margen, creando la separación más robusta posible.
  • El truco del kernel: Para los datos que no son linealmente separables, las SVM utilizan una técnica llamada truco del kernel. Este potente método implica transformar los datos en un espacio de mayor dimensión donde se puede encontrar un separador lineal sin calcular explícitamente las coordenadas de los datos en ese nuevo espacio. Los kernels populares como la función de base radial (RBF) pueden manejar relaciones no lineales muy complejas. Puede explorar una guía de kernels SVM para obtener más detalles.

Aplicaciones en el mundo real

Las SVM son eficaces en muchos dominios, especialmente para problemas con datos de alta dimensionalidad.

  • Bioinformática: En genómica y proteómica, las SVM se utilizan para clasificar proteínas y analizar datos de expresión génica. Por ejemplo, pueden ayudar a identificar subtipos de cáncer basados en datos de microarrays, una tarea que involucra miles de características. Esto las convierte en una herramienta vital en la IA para el cuidado de la salud.
  • Clasificación de Imágenes: Antes del dominio de las redes neuronales profundas, las SVM eran un modelo de alto rendimiento para la clasificación de imágenes. Se han utilizado con éxito para tareas como el reconocimiento de dígitos manuscritos en conjuntos de datos como MNIST y el reconocimiento de objetos en Caltech-101.
  • Clasificación de texto: En el Procesamiento del Lenguaje Natural (PNL), las SVM son eficaces para tareas como la detección de spam y el análisis de sentimientos. Pueden gestionar eficazmente los espacios de características de alta dimensión creados por los métodos de vectorización de texto.

SVM frente a otros algoritmos

En comparación con algoritmos más simples como la Regresión Logística, las SVM buscan maximizar el margen en lugar de simplemente encontrar un límite de separación, lo que puede llevar a una mejor generalización. A diferencia de los métodos basados en árboles como los Árboles de Decisión o los Bosques Aleatorios, las SVM construyen un único hiperplano óptimo (posiblemente en un espacio de alta dimensión). Mientras que los modelos modernos de aprendizaje profundo como Ultralytics YOLO sobresalen en la extracción de características automática de datos sin procesar (como píxeles en visión artificial (CV)), las SVM a menudo requieren una ingeniería de características cuidadosa, pero pueden tener un rendimiento excepcionalmente bueno en conjuntos de datos más pequeños o tipos específicos de datos estructurados donde las características están bien definidas. Puede encontrar muchos de estos conjuntos de datos en el Repositorio de Aprendizaje Automático de la UCI.

Las implementaciones más populares incluyen LibSVM y el módulo SVM en scikit-learn. Aunque SVM no suele ser el núcleo de los frameworks de CV modernos como PyTorch o TensorFlow, puede integrarse en flujos de trabajo más amplios. El entrenamiento y la gestión de estos modelos, junto con otros varios, pueden optimizarse utilizando plataformas como Ultralytics HUB, que simplifica el ciclo de vida de MLOps desde el etiquetado de datos hasta el ajuste de hiperparámetros y la implementación final del modelo.

Únete a la comunidad de Ultralytics

Únete al futuro de la IA. Conecta, colabora y crece con innovadores de todo el mundo

Únete ahora
Enlace copiado al portapapeles