Muchos autores de artículos que leí afirman que las SVM son una técnica superior para enfrentar su problema de regresión / clasificación, conscientes de que no podrían obtener resultados similares a través de las NN. A menudo, la comparación establece que
SVM, en lugar de NN,
- Tener una fuerte teoría fundacional
- Alcance el óptimo global debido a la programación cuadrática
- No tiene problemas para elegir un número adecuado de parámetros
- Son menos propensos al sobreajuste
- Necesita menos memoria para almacenar el modelo predictivo
- Produzca resultados más legibles y una interpretación geométrica.
¿Es en serio un pensamiento ampliamente aceptado? No cite el Teorema del almuerzo libre o declaraciones similares, mi pregunta es sobre el uso práctico de esas técnicas.
Por otro lado, ¿qué tipo de problema abstracto definitivamente enfrentarías con NN?
machine-learning
svm
neural-networks
stackovergio
fuente
fuente
Respuestas:
Es una cuestión de compensaciones. SVM son en este momento, los NN que solía ser en . Encontrará un número creciente de artículos que afirman que se encuentran bosques aleatorios, modelos gráficos probabilísticos o métodos bayesianos no paramétricos . Alguien debería publicar un modelo de pronóstico en los Anales de Investigación Improbable sobre qué modelos se considerarán modernos.
Dicho esto, para muchos problemas supervisados famosos y difíciles, los modelos individuales de mejor rendimiento son algún tipo de NN, algún tipo de SVM o un método de descenso de gradiente estocástico específico del problema implementado utilizando métodos de procesamiento de señal.
Ventajas de NN:
Pros de SVM:
Menos hiperparámetros. En general, las SVM requieren menos búsqueda en la cuadrícula para obtener un modelo razonablemente preciso. SVM con un núcleo RBF generalmente funciona bastante bien.
Óptimo global garantizado.
Contras de NN y SVM:
fuente
La respuesta a su pregunta es, en mi experiencia, "no", los SVM no son definitivamente superiores, y lo que funciona mejor depende de la naturaleza del conjunto de datos en cuestión y de la habilidad relativa del operador con cada conjunto de herramientas. En general, los SVM son buenos porque el algoritmo de entrenamiento es eficiente y tiene un parámetro de regularización, que lo obliga a pensar en la regularización y el ajuste excesivo. Sin embargo, hay conjuntos de datos en los que los MLP ofrecen un rendimiento mucho mejor que los SVM (ya que se les permite decidir su propia representación interna, en lugar de tenerla preespecificada por la función del núcleo). Una buena implementación de MLP (por ejemplo, NETLAB) y la regularización o la detención temprana o la selección de arquitectura (o mejor aún, las tres) a menudo pueden dar muy buenos resultados y ser reproducibles (al menos en términos de rendimiento).
La selección del modelo es el principal problema con los SVM, elegir el kernel y optimizar el kernel y los parámetros de regularización a menudo pueden llevar a un ajuste excesivo si se optimiza en exceso el criterio de selección del modelo. Si bien la teoría que apuntala el SVM es un consuelo, la mayoría solo se aplica a un núcleo fijo, por lo que tan pronto como intente optimizar los parámetros del núcleo ya no se aplica (por ejemplo, el problema de optimización que se resolverá al ajustar el núcleo generalmente no es convexo y puede tener mínimos locales).
fuente
Solo intentaré explicar mi opinión que parecía ser compartida por la mayoría de mis amigos. Tengo las siguientes preocupaciones sobre NN que no son sobre SVM en absoluto:
Eso no significa que no debas usar NN, solo debes usarlo con cuidado. Por ejemplo, Convolutional NN puede ser extremadamente bueno para el procesamiento de imágenes, otros Deep NN también demostraron ser buenos para otros problemas.
Espero que ayude.
fuente
Estoy usando redes neuronales para la mayoría de los problemas. El punto es que, en la mayoría de los casos, se trata más de la experiencia del usuario que del modelo. Aquí hay algunas razones por las que me gustan las NN.
Revisaré tus otros puntos paso a paso.
Yo diría que los NN son igualmente fuertes en ese caso: ya que los entrenas en un marco probabilístico. Eso hace posible el uso de tratamientos previos y un tratamiento bayesiano (por ejemplo, con técnicas o aproximaciones variacionales).
Para un conjunto de hiperparámetros. Sin embargo, la búsqueda de buenos hps no es convexa, y no sabrá si también encontró el óptimo global.
Con SVM, también debe seleccionar hiperparámetros.
Necesita almacenar los vectores de soporte. Los SVM en general no serán más baratos para almacenar MLP, depende del caso.
La capa superior de un MLP es una regresión logística en el caso de la clasificación. Por lo tanto, hay una interpretación geométrica (separando el hiperplano) y también una interpretación probabilística.
fuente
De alguna manera, estas dos amplias categorías de técnicas de aprendizaje automático están relacionadas. Aunque no es perfecto, dos documentos que he encontrado útiles para mostrar las similitudes en estas técnicas están a continuación
y
fuente