¿Por qué las RVM no son tan populares como las SVM?

Patente RVM

La descripción en la patente corresponde a la primera versión de RVM que utiliza el método de maximización de la expectativa de la iteración de punto fijo para maximizar la probabilidad marginal. La versión posterior de la página RVM en miketipping.com (que también es más rápida) no está patentada por Microsoft (algunos contribuyentes de scikit-learn realmente se pusieron en contacto con Tipping sobre ese problema Relevance Vector Machine (RVM) · Problema # 1513 · scikit-learn / scikit- aprender, ver la respuesta de jhallock7 el 7 de agosto).
También puede encontrar la implementación disponible gratuitamente de RVM (versión más rápida) distribuida sujeta a la Licencia Pública GNU, versión 2 en el sitio web personal de Tipping Sparse Bayesian Models (y el RVM)

Comparación RVM vs SVM
En esta parte solo intentaré comparar algunas propiedades de dos algoritmos. Espero que esto ayude a responder la pregunta.

a) Optimización convexa
SVM se traduce en un problema de optimización convexa, mientras que RVM no.
Esto significa que RVM puede atascarse en un óptimo local y dar resultados diferentes cada vez que se aplica. El remedio común en el caso del óptimo local es volver a ejecutar el código y verificar el valor de probabilidad marginal (si es mayor que en el algoritmo de ejecución anterior encontrado óptimo local), esto significa que puede necesitar ejecutar RVM un par de veces solo para asegurarse de que Tienes el máximo global.

b) escasez de solución
RVM generalmente proporciona soluciones mucho más dispersas que SVM, lo que resulta en una mejora significativa en la velocidad de predicción.
Implementé dos ejemplos simples que comparaban la escasez de soluciones producidas por RVM y SVM (uso mi propia implementación de RVM AmazaspShumik / Bayesian-Regression-Methods) y en ambos ejemplos los modelos dados por RVM son significativamente más compactos.

Ejemplo 1: clasificación

La tasa de clasificación errónea de SVM en el conjunto de prueba es 0.1075, con 147 vectores de soporte
La tasa de clasificación errónea de RVM en el conjunto de prueba es 0.105, con 44 vectores relevantes
código: AmazaspShumik / Métodos de regresión bayesiana

Ejemplo 2: regresión

SVM MSE = 0.993437271355, con 327 vectores de soporte
RVM MSE = 1.00140847844, con 15 vectores relevantes


código: AmazaspShumik / Métodos de regresión bayesiana

c) tratamiento probabilístico
SVM no es un modelo probabilístico mientras que RVM sí lo es. RVM puede proporcionar una distribución predictiva en el conjunto de pruebas, lo que puede ser útil en muchos casos. Por ejemplo, con la distribución predictiva, puede encontrar fácilmente límites de confianza del 95% o probabilidad de que el objetivo esté por debajo / por encima de un umbral crítico (esto puede usarse para el modelado de riesgo financiero, por ejemplo).
Sin embargo, en algunos casos no se debe confiar en la distribución predictiva producida por RVM. Considere, por ejemplo, un problema de regresión con el núcleo rbf (lo mismo será cierto para cualquier función de base localizada utilizada como núcleo), la fórmula describe la varianza de la distribución predictiva producida por RVM:

σ2 (x) = 1 / β + φ (x) ‘* Σ * φ (x), donde
β – precisión de probabilidad
x – observación en conjunto de prueba
φ (x) = [k (x, x_0), k (x, x_1), .., k (x, x_m)] (x_0, x_1,…, x_m – vectores relevantes;
k (:, 🙂 – función de kernel rbf)

Es bastante fácil ver que si las distancias de L2 desde x a todos los vectores relevantes son grandes, entonces φ (x) se acerca al vector de ceros. Distribución predictiva
dado por RVM, cada vez habrá más certeza sobre los puntos de datos que se encuentran fuera del dominio de los datos. Esta es una propiedad claramente indeseable.

A continuación se muestra un ejemplo que ilustra esta propiedad de RVM. Hay 200 puntos de datos en el conjunto de entrenamiento, 100 de ellos están en el intervalo [-10, -9] y otros 100 en el intervalo [9,10].

Como puede ver, la variación de la distribución predictiva es más pequeña fuera del dominio de los datos.
código: AmazaspShumik / Métodos de regresión bayesiana

d ) Aproximación de Laplace
RVM no tiene una solución analítica para el caso de clasificación, utiliza la aproximación de Laplace para encontrar la función de probabilidad marginal (Tipping (2001)). Esto implica que RVM hereda automáticamente todos los problemas de aproximación de Laplace.
Tenga en cuenta que SVM no utiliza ninguna aproximación numérica ni para regresión ni para problemas de clasificación.

Fuentes:
Página en jmlr.org
http://miketipping.com/papers/met-fastsbl.pdf
Bishop (2006), Reconocimiento de patrones y aprendizaje automático, Ch: 3,4,7,9

Tenga en cuenta que el entrenamiento para un RVM es más costoso desde el punto de vista computacional que para un SVM, ya que implica la optimización de una función no convexa. Sin embargo, un punto a favor de RVM es que los hiperparámetros se aprenden como parte del entrenamiento, mientras que en SVM es posible que tengamos que hacer varias carreras para aprender buenos hiperparámetros. Fuente: Reconocimiento de patrones y aprendizaje automático, Bishop

No puedo estar seguro, pero me imagino que es porque Microsoft posee una patente estadounidense en el RVM. Esto significa que nadie, excepto Microsoft, puede usar RVM para ninguna aplicación comercial de terceros sin licencia hasta que expire la patente. La patente RVM expira en 2019.

Cualquier persona es libre de usar el RVM para fines académicos, por lo que probablemente sea por eso que hay documentos sobre RVM.

Referencia:

Patente US6633857 – Máquina de vectores de relevancia

More Interesting

¿Por qué se usa tanto el aumento de gradiente con los árboles de decisión, en lugar de con otros clasificadores?

¿En qué orden debo aprender redes neuronales, aprendizaje automático, IA y NPL?

Cómo entrenar clasificador lineal paso a paso con Caffe, utilizando las respuestas de la última capa completamente conectada del modelo AlexNet como características

¿Dónde debo comenzar si quiero escribir un algoritmo de etiquetado y clasificación de oraciones?

¿En qué conjuntos de datos se formó el Sistema de traducción automática neuronal (GNMT) de Google?

MLconf 2015 Seattle: ¿Cómo funciona la técnica de aproximación simbólica agregada (SAX)?

¿Cuándo y por qué un clasificador Bayes ingenuo es una opción mejor / peor que un clasificador forestal aleatorio?

Cómo realizar un proyecto de predicción relacionado con la salud utilizando big data y machine learning

¿Por qué los modelos gráficos probabilísticos tienen un rendimiento inferior en las tareas de clasificación en comparación con las redes neuronales o las máquinas de vectores de soporte?

¿Crees que Robot puede realizar todas las tareas humanas con Deep Learning?

¿Por qué es importante la eliminación de variables en los modelos gráficos probabilísticos?

¿Existe una conexión entre la ciencia de datos y el aprendizaje automático?

¿Es una buena idea dejar el aprendizaje automático después de 2 años y estudiar desarrollo web, si me di cuenta de que no soy tan inteligente para todas esas matemáticas de ML?

¿Cuáles son los temas candentes / nuevos en el aprendizaje estadístico?

¿Cómo almacena un sistema de aprendizaje automático su memoria aprendida?