帮酷LOGO
  • 显示原文与译文双语对照的内容
Python learning to rank (LTR) toolkit

  • 源代码名称:pyltr
  • 源代码网址:http://www.github.com/jma127/pyltr
  • pyltr源代码文档
  • pyltr源代码下载
  • Git URL:
    git://www.github.com/jma127/pyltr.git
  • Git Clone代码到本地:
    git clone http://www.github.com/jma127/pyltr
  • Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/jma127/pyltr
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
  • pyltr

    pypi versionBuild status

    pyltr是一个带有排序模型。评估指标。数据争用助手和更多数据的python learning-to-rank工具包。

    这里软件是在 BSD 3-clause 许可证( 查看 LICENSE.txt ) 下许可的。

    作者可以在 ma127jerry <@t> gmail 与一般的反馈。问题或者 Bug 报告联系。

    示例

    导入 pyltr:

    import pyltr

    导入 LETOR 数据集( 比如 。 ( MQ2007 ):

    with open('train.txt') as trainfile, 
     open('vali.txt') as valifile, 
     open('test.txt') as evalfile:
     TX, Ty, Tqids, _ = pyltr.data.letor.read_dataset(trainfile)
     VX, Vy, Vqids, _ = pyltr.data.letor.read_dataset(valifile)
     EX, Ey, Eqids, _ = pyltr.data.letor.read_dataset(evalfile)

    使用用于早期停止和修剪的验证集,为 LambdaMART 模型定型:

    metric = pyltr.metrics.NDCG(k=10)
    # Only needed if you want to perform validation (early stopping & trimming)
    monitor = pyltr.models.monitors.ValidationMonitor(
     VX, Vy, Vqids, metric=metric, stop_after=250)
    model = pyltr.models.LambdaMART(
     metric=metric,
     n_estimators=1000,
     learning_rate=0.02,
     max_features=0.5,
     query_subsample=0.5,
     max_leaf_nodes=10,
     min_samples_leaf=64,
     verbose=1,
    )
    model.fit(TX, Ty, Tqids, monitor=monitor)

    对测试数据进行评估:

    Epred = model.predict(EX)
    print 'Random ranking:', metric.calc_mean_random(Eqids, Ey)
    print 'Our model:', metric.calc_mean(Eqids, Ey, Epred)

    特性

    下面是pyltr中当前实现的一些特性。

    模型

    • LambdaMART ( pyltr.models.LambdaMART )
      • 验证&早期停止
      • 查询子菜单

    浮点度量

    • ( N ) DCG ( pyltr.metrics.DCGpyltr.metrics.NDCG )
      • pow2和身份增益函数
    • ERR ( pyltr.metrics.ERR )
      • pow2和身份增益函数
    • ( M ) AP ( pyltr.metrics.AP )
    • Kendall ( pyltr.metrics.KendallTau )
    • ROC曲线下的auc ( ) 面积

    数据争用

    • 数据加载程序( 比如 。pyltr.data.letor.read )
    • 查询groupers和验证器( pyltr.util.group.check_qidspyltr.util.group.get_groups )

    运行测试

    使用 run_tests.sh 脚本运行所有单元测试。

    构建文档

    cd 进入 docs/ 目录并运行 make html 。 在 docs/_build 目录中生成文档。

    对质量贡献或者缺陷进行了感激地接受。 提交请求请求时,请更新 AUTHOR.txt 以便你可以识别你的工作:) 。

    通过提交Github请求请求,你同意按照项目( 查看 LICENSE.txt ) 许可协议的条款发布提交的代码。




    Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语