Skip to content

LambdaMART implementation with latest master rebase#82

Open
srinikrish22 wants to merge 13 commits intokiudee:masterfrom
srinikrish22:lambdamart-implementation-rebased
Open

LambdaMART implementation with latest master rebase#82
srinikrish22 wants to merge 13 commits intokiudee:masterfrom
srinikrish22:lambdamart-implementation-rebased

Conversation

@srinikrish22
Copy link
Copy Markdown

I have implemented the LambdaMART algorithm for object ranking. This branch has the latest rebase from the current master branch of cs-ranking.

Description

I have created a class with the required core functionality of lambdamart and added ndcg metric implementation to the utils. I have added the ranker into the test_ranking and also added the ranker definition in the constants.

Motivation and Context

This change aims at adding an implementation of a new ranker for object ranking to the repository.

How Has This Been Tested?

I have added the possibility to test this ranker under the existing testing infrastructure of the cs-ranking repository.

Does this close/impact existing issues?

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added tests to cover my changes.

Copy link
Copy Markdown
Owner

@kiudee kiudee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the rebase.
Overall, the code improved a lot over the previous submission.

To finalize the submission, remember to:

@coveralls
Copy link
Copy Markdown

coveralls commented Feb 16, 2020

Pull Request Test Coverage Report for Build 700

  • 123 of 175 (70.29%) changed or added relevant lines in 4 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.5%) to 47.507%

Changes Missing Coverage Covered Lines Changed/Added Lines %
csrank/objectranking/lambdamart.py 118 170 69.41%
Totals Coverage Status
Change from base Build 687: 0.5%
Covered Lines: 3801
Relevant Lines: 8001

💛 - Coveralls

@srinikrish22
Copy link
Copy Markdown
Author

Fixes have been made based on the suggested changes. I have also run the black code formatter.

@srinikrish22
Copy link
Copy Markdown
Author

Thank you for the rebase.
Overall, the code improved a lot over the previous submission.

To finalize the submission, remember to:

* [ ]  Currently, I am not able to use `predict` without it throwing an error. This should be fixed.

* [ ]  Fix the issues remarked in the code.

* [ ]  Execute the [black](https://black.readthedocs.io/en/stable/) code formatter on your files and on the functions you added. Try to avoid reformatting existing files.

* [ ]  Add LambdaMART to https://github.com/kiudee/cs-ranking/blob/master/csrank/objectranking/__init__.py for direct import (`from csrank import LambdaMART`).

All the changes requested have been completed:

@timokau timokau mentioned this pull request Mar 26, 2020
7 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants