Xgboost: Como usar o xgboost para fazer a classificação listwise lambdamart?

Criado em 2 mar. 2016  ·  9Comentários  ·  Fonte: dmlc/xgboost

Rank: pairwise ” - defina o XGBoost para fazer a tarefa de classificação, minimizando a perda de pairwise

você quer dizer isso? Visto que lambdamart é uma abordagem listwise, como posso ajustá-lo à classificação listwise? incluindo commond, parâmetros e formato de dados de treinamento, e onde posso definir o lambda para lambdamart.
você poderia fazer uma breve demonstração ou introdução? Muito Obrigado!

Comentários muito úteis

Isso precisa de esclarecimento nos documentos.
Especificamente:

  1. O FAQ diz "Sim, xgboost implementa LambdaMART. Verifique a seção de objetivos em parâmetros", mas a página de parâmetros não contém nenhuma menção ao LambdaMART.
  2. Se LambdaMART existir, deve haver um exemplo. Estou feliz em enviar um PR para isso.
  3. Talvez seja apenas uma questão de combinação de termos, mas eu recomendo que, se o Xgboost quiser anunciar o LambdaMART no FAQ, que os documentos e o código também usem esse termo.

Todos 9 comentários

OK eu vejo. O XGBoost suporta a realização de tarefas de classificação. No cenário de classificação, os dados são frequentemente agrupados e precisamos do arquivo de informações do
especifique tarefas de classificação. O modelo usado no XGBoost para classificação é o LambdaRank, esta função ainda não foi concluída. Atualmente, fornecemos classificação em pares.

Portanto, a aprendizagem listwise não é suportada. Qualquer plano?

use classificação: ndcg para classificação lambda com métrica ndcg

Olá, acabei de tentar usar o objetivo = ' rank: map ' e o objetivo = ' rank: ndcg ', mas nenhum deles parece funcionar. A função objetivo dos pares é realmente boa. Posso ver no código que a função objetivo do LambdaMART ainda está lá, porém não entendo por que ela não pode ser selecionada usando a API python. Obrigado.

@tqchen você pode comentar se rank:ndcg ou rank:map funciona para Python?

Isso precisa de esclarecimento nos documentos.
Especificamente:

  1. O FAQ diz "Sim, xgboost implementa LambdaMART. Verifique a seção de objetivos em parâmetros", mas a página de parâmetros não contém nenhuma menção ao LambdaMART.
  2. Se LambdaMART existir, deve haver um exemplo. Estou feliz em enviar um PR para isso.
  3. Talvez seja apenas uma questão de combinação de termos, mas eu recomendo que, se o Xgboost quiser anunciar o LambdaMART no FAQ, que os documentos e o código também usem esse termo.

está resolvido?

@vatsan Parece que foi um descuido. Você pode enviar uma solicitação pull para atualizar o documento de parâmetro?

@vatsan @ Sandy4321 @travisbrady Estou adicionando todos os objetivos ao documento de parâmetro: # 3672

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

trivialfis picture trivialfis  ·  3Comentários

vkuznet picture vkuznet  ·  3Comentários

XiaoxiaoWang87 picture XiaoxiaoWang87  ·  3Comentários

lizsz picture lizsz  ·  3Comentários

pplonski picture pplonski  ·  3Comentários