¿Cuál es la intuición para SVM-Rank y cuándo debo usarla?

SVM-Rank es una técnica para ordenar listas de artículos. SVM-Rank utiliza SVM estándar para clasificar tareas.
Supongamos,
Tenemos un clasificador (SVM) y tenemos dos elementos, elemento1 y elemento2.
Se espera que el artículo 1 se ordene antes que el artículo 2.

Luego,
Entrada al clasificador: (item1, item2)
Salida del clasificador: 1 [lo que implica que el pedido del artículo es correcto, es decir. item1 es mejor que item2]

Entrada del clasificador: (item2, item1)
Salida del clasificador: -1 [lo que implica que el pedido del artículo es incorrecto]

Digamos que el orden preferido de tres elementos es (elemento1, elemento2, elemento3)
Clasifique el par de artículos usando el clasificador entrenado
(item1, item2) = 1, (item1, item3) = 1 => puntaje del item1 = 1 + 1 = 2
(item2, item1) = -1, (item2, item3) = 1 => puntaje del item2 = -1 + 1 = 0
(item3, item1) = -1, (item3, item2) = -1 => puntaje del item3 = -1 – 1 = -2

Según el puntaje, obtenemos rango: elemento1, elemento2, elemento3

El mismo proceso puede repetirse para cualquier número de elementos.

El paso inicial del problema de optimización se formula como regresión ordinal; sin embargo, usando la diferencia entre pares, el problema de regresión se convierte en un problema de clasificación.

SVM-Rank utilizó vectores de diferencia por pares para producir una lista de elementos de clasificación.

Entonces, dada una lista de elementos representados como vector de características, si queremos ordenarlos, SVM-Rank es lo correcto.

Para obtener detalles sobre SVM-Rank, puede consultar esta página de papel en aminer.org

Encontré una serie de posibles aplicaciones de Ranking SVM en la literatura:

* Regresión ordinal
* Optimización de AUC
* Desequilibrio de clase
* Aprender a clasificar problemas

Inicialmente, se han propuesto para la regresión ordinal; La optimización de AUC es solo un caso especial de eso (dos clases).
El desequilibrio de clase está relacionado con la optimización de AUC, ya que AUC es una medida de rendimiento razonable para problemas con el desequilibrio de clase.
Las SVM de clasificación también se han propuesto para problemas de Clasificación de Aprendizaje 2 en el contexto de la recuperación de información. En mi humilde opinión, no encajan bien porque, aunque el AUC también puede verse como una métrica de clasificación, difiere de las métricas de rendimiento de clasificación estándar como NDCG y Precisión media promedio: estas últimas son muy pesadas; es decir, ponen mucho énfasis en los primeros ejemplos en la clasificación (a menudo, los ejemplos por debajo del rango 10 y 20 no importan en absoluto) mientras que AUC trata todas las posiciones en la clasificación por igual.

Dicho esto, he usado Ranking SVM para todos los problemas anteriores y en mi humilde opinión, nunca se ha demostrado que sean útiles, por ejemplo. En mi experiencia, la ponderación de ejemplos generalmente funciona mejor para el desequilibrio de clase y para aprender a clasificar la regresión simple en los puntajes de relevancia (+ un modelo no lineal) proporciona un mejor rendimiento en la mayoría de los puntos de referencia L2R. La diferencia en el rendimiento de AUC entre svm ordinario y svm de clasificación es despreciable en mi humilde opinión.

La aplicación más interesante de Ranking SVM que encontré fue Thorsten Joachims y su grupo, donde utilizaron comentarios implícitos de los usuarios de un motor de búsqueda web (es decir, el usuario hizo clic primero en la posición 2 y no en la 1) para generar “pares de ejemplo” (doc_2 – doc_1) que se introducen en el SVM de clasificación: las señales de entrenamiento de esta forma solo funcionarían para enfoques por pares, como el SVM de clasificación.

Una aplicación interesante que encontré es la clasificación de frases nominales que pertenecen a una de las siete clases semánticas (a saber, PERSONA, ORGANIZACIÓN, GPE (entidad geopolítica), FACILIDAD, UBICACIÓN, VEHÍCULO y ARMA), los modelos de clasificación resultantes generarán cadenas de referencia. solo para frases nominales pertenecientes a estas clases semánticas.

El clasificador svmrank () aquí clasifica si la mención detectada (entidad nombrada) pertenece a alguna de estas 7 clases y también las clasifica.

Y luego solo las entidades clasificadas se utilizan para el procesamiento posterior para obtener una fuerte intuición.

referencia: SVM-Light Support Vector Machine

Es solo una regresión ordinal. Úselo cuando desee determinar el orden de clasificación, pero no un valor específico, como en una regresión.

IMHO SVM Rank no es más que ingeniería de características,

En los rangos SVM, considera su conjunto de características como la diferencia del conjunto de características de dos etiquetas para un documento.

por ejemplo, si tiene dos documentos 2 y1, y2 para la consulta q y el conjunto de características de (q, y1) es x1 y el conjunto de características de (q, y2) es x2, entonces para el rango de svm su conjunto de características será x1-x2 y variable dependiente será +1 si rank (y1)> rank (y2) else -1.

Vea que solo está transformando su espacio de características y luego aplicando svm normal

Una aplicación interesante que encontré es: clasificar la salida de la traducción automática en función de su calidad.

Ref: Clasificación a nivel de oración con estimación de calidad por Eleftherios Avramidis. Traducción automática (2013), 27: 239-256.