¿Tiene sentido saltar directamente a las máquinas de vectores de soporte en lugar de probar con otros algoritmos lineales, primero, en el aprendizaje automático?

No estoy seguro de la premisa de su pregunta, ya que las máquinas de vectores de soporte son modelos lineales en sí mismas: aprenden el hiperplano “mejor” (margen más grande) que separa linealmente los datos que se le presentan.

Sin embargo, las máquinas de vectores de soporte también pueden aprender los límites de decisión no lineales bastante bien, pero esto no cambia el hecho de que el SVM es un clasificador lineal. Antes de presentar los datos al SVM para el aprendizaje, las transformaciones de características se pueden aplicar a los datos para generar características no lineales. Aquí es donde se introduce la no linealidad.

Después de generar características polinómicas, es decir, alimentar cada vector de características en alguna función y generar un nuevo vector de características [math] \ phi (x) [/ math], utilizando algunos trucos matemáticos interesantes, puede escribir el problema de optimización y predicción de SVM como depende solo de los productos internos entre los datos de entrenamiento / prueba: [math] \ phi (x_m) * \ phi (x_n) [/ math], y esto permite que el SVM sea kernelized – reemplazado con una función [math] k (x_m, x_n) [/ math] que calcula algún tipo de “similitud” entre los dos puntos. Existen muchos tipos de núcleos, los más populares son los núcleos gaussianos o polinomiales. A partir de esto, los SVM pueden aprender los límites de decisión no lineales.

La cuestión es que este “truco del núcleo” se puede aplicar a muchos algoritmos lineales: regresión de cresta, vecinos más cercanos, regresión logística y el perceptrón. Además, la transformación de la característica con alguna función que genera un conjunto de características polinómicas es muy común entre todos los algoritmos lineales.

En general, las matemáticas detrás de la SVM son un poco más complicadas (pero aún factibles) que la regresión logística y la regresión lineal, por lo que comenzaría aprendiendo y dominando esos modelos, ya que le proporcionarán algunas herramientas esenciales (como calcular derivadas parciales, el algoritmo de descenso de gradiente y el principio de estimación de máxima verosimilitud y minimización empírica del riesgo), que se pueden utilizar para comprender mejor las SVM.

Dependiendo del tamaño de sus datos, puede encontrar que usar un SVM con un núcleo no lineal es mucho más lento que otros enfoques (o SVM con un núcleo lineal).

Hay una buena discusión acerca de por qué este es el caso en esta pregunta: ¿por qué el SVM kernelized es mucho más lento que el SVM lineal?

More Interesting

¿Cuáles son las fuentes que pueden proporcionar múltiples metodologías a partir de un nivel básico para resolver problemas algorítmicos?

¿Las estructuras en lenguaje C son similares a los objetos en Java?

¿Cómo funcionan los algoritmos de Google en los motores de búsqueda?

¿Qué es más importante, aprender múltiples lenguajes de programación o practicar algoritmos?

¿Se puede usar el algoritmo de Prim para encontrar la ruta más corta desde un vértice a todos los demás vértices en un gráfico no dirigido?

Para ubicarse dentro del top 3 en el próximo ICPC regional, ¿qué le sugeriría a un codificador de nivel medio que tenga suficiente conocimiento?

¿Por qué se han desarrollado los algoritmos de ordenamiento O (n ^ 2) (como el ordenamiento por inserción y el ordenamiento por burbuja) y para qué se utilizan?

Además de la programación competitiva, ¿cómo aprender algoritmos?

¿Estamos utilizando los mismos algoritmos de inteligencia artificial de los años 90 con mejores procesadores?

Cómo escribir un programa en C para implementar un algoritmo de planificación de prioridades, junto con la visualización del diagrama de Gantt

¿Qué algoritmo se puede usar para encontrar la clave para el cifrado y la clave de entrada en el formulario?

¿Cuál es el algoritmo más eficiente y efectivo para la detección de anomalías / valores atípicos cuando los datos tienen un pico / valle estacional?

¿Qué es el algoritmo de captura de pantalla de Snapchat?

Cómo ordenar la lista en la columna como números y cadena, pero la cadena no se debe ordenar en Excel

¿Cómo funciona el algoritmo de Warnsdorff?