Melhor resposta
Aqui estão algumas bibliotecas de Aprendizagem para classificar fora do RankLibhttp: //arogozhnikov.github.io/2015/06/26 /learning-to-rank-software-datasets.html:
- LEROT (Python)
- xapian-letor
- Métrica aprendendo a classificar (Matlab)
- Implementação de classificação SVM (C ++)
- ListMLE , ListNET
- Implementação SVM-MAP (C ++ )
- Biblioteca de aprendizagem para classificar (C ++)
- jforests (Java)
- Demonstração de IPython sobre como aprender a classificar
- Implementação do LambdaRank (Python) especialmente para a competição de classificação kaggle)
Dito isso, o RankLib continua sendo o melhor opção em termos de maturidade e correção comprovada.
Se nada disso funcionar para você, sempre há a opção de escrever um você mesmo.
Resposta
Alternativas Eu já usei no passado e posso recomendar:
SVMRank (C) Máquina de vetores de suporte para classificação
JLIS-Reranking (Java) http://flake.cs.uiuc.edu/~mchang21/softwares/JLIS/rerank.html
Não usei, mas conheço:
XGboost (amplamente usado com interfaces para muitos idiomas; nunca tentei para problemas de classificação) dmlc / xgboost (veja também este exemplo de classificação XGBoost )
Jforests (Java) jforests – Conjuntos de árvores para aprendizado de máquina – Hospedagem de projetos do Google