Xgboost: ¿Cómo usar xgboost para hacer ranking de lista de lambdamart?

Creado en 2 mar. 2016  ·  9Comentarios  ·  Fuente: dmlc/xgboost

" Rango: por pares ": configure XGBoost para realizar la tarea de clasificación minimizando la pérdida por pares

¿Te refieres a esto? Dado que lambdamart es un enfoque basado en listas, ¿cómo puedo ajustarlo a la clasificación por listas? incluyendo commond, parámetros y formato de datos de entrenamiento, y dónde puedo configurar el lambda para lambdamart.
¿Podrías dar una breve demostración o introducción? ¡muchas gracias!

Comentario más útil

Esto necesita una aclaración en los documentos.
Específicamente:

  1. Las preguntas frecuentes dicen "Sí, xgboost implementa LambdaMART. Consulte la sección de objetivos en los parámetros", pero la página de parámetros no contiene ninguna mención de LambdaMART.
  2. Si LambdaMART existe, debería haber un ejemplo. Me complace enviar un PR para esto.
  3. Esto puede ser solo una cuestión de combinación de términos, pero recomendaría que si Xgboost quiere anunciar LambdaMART en las preguntas frecuentes, los documentos y el código también usen ese término.

Todos 9 comentarios

OK veo. XGBoost admite la realización de tareas de clasificación. En el escenario de clasificación, los datos a menudo se agrupan y necesitamos el archivo de información del
especifique las tareas de clasificación. El modelo utilizado en XGBoost para la clasificación es el LambdaRank, esta función aún no está completa. Actualmente, proporcionamos clasificación por pares.

Por lo tanto, no se admite el aprendizaje por listas. ¿Algún plan?

rango de uso

Hola, acabo de intentar usar tanto objetivo = ' rango: mapa ' como objetivo = ' rango: ndcg ', pero ninguno de ellos parece funcionar. La función objetivo por pares está realmente bien. Puedo ver en el código que la función del objetivo de LambdaMART todavía está allí, sin embargo, no entiendo por qué no se puede seleccionar usando la API de Python. Gracias.

@tqchen, ¿puedes comentar si rank:ndcg o rank:map funcionan para Python?

Esto necesita una aclaración en los documentos.
Específicamente:

  1. Las preguntas frecuentes dicen "Sí, xgboost implementa LambdaMART. Consulte la sección de objetivos en los parámetros", pero la página de parámetros no contiene ninguna mención de LambdaMART.
  2. Si LambdaMART existe, debería haber un ejemplo. Me complace enviar un PR para esto.
  3. Esto puede ser solo una cuestión de combinación de términos, pero recomendaría que si Xgboost quiere anunciar LambdaMART en las preguntas frecuentes, los documentos y el código también usen ese término.

esta resuelto?

@vatsan Parece que fue un descuido. ¿Puede enviar una solicitud de extracción para actualizar el documento del parámetro?

@vatsan @ Sandy4321 @travisbrady Estoy agregando todos los objetivos al parámetro doc: # 3672

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

trivialfis picture trivialfis  ·  3Comentarios

Str1ker17 picture Str1ker17  ·  3Comentarios

nicoJiang picture nicoJiang  ·  4Comentarios

frankzhangrui picture frankzhangrui  ·  3Comentarios

pplonski picture pplonski  ·  3Comentarios