Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Benchmark partial #715

Merged
merged 10 commits into from
Apr 16, 2019
Merged

Benchmark partial #715

merged 10 commits into from
Apr 16, 2019

Conversation

miguelgfierro
Copy link
Collaborator

Description

Benchmark of some algos in Movielens, this was a request from @nikhilrj and @wutaomsft

As discussed, this will be temporal, in the future we will use directly the notebooks to execute the benchmarks

Related Issues

#464

Checklist:

  • My code follows the code style of this project, as detailed in our contribution guidelines.
  • I have added tests.
  • I have updated the documentation accordingly.

@review-notebook-app
Copy link

Check out this pull request on ReviewNB: https://app.reviewnb.com/Microsoft/Recommenders/pull/715

Visit www.reviewnb.com to know how we simplify your Jupyter Notebook workflows.

Copy link
Collaborator Author

@miguelgfierro miguelgfierro left a comment

Choose a reason for hiding this comment

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

Please note that this is a first iteration for you guys to review. I would need to add text in the notebook and docstrings in the utils

@miguelgfierro miguelgfierro added this to the Benchmarking milestone Apr 5, 2019
@anargyri
Copy link
Collaborator

anargyri commented Apr 8, 2019

Do we want to include some tuning for the benchmarking (either as part of this code or as a preprocessing step)?

@miguelgfierro
Copy link
Collaborator Author

@anargyri that's a good point, I guess in the benchmark we should have some "optimal" parameters precomputed via hyperparameter tuning, so we can claim that the results of the benchmark are reasonable enough.

benchmarks/benchmark_utils.py Outdated Show resolved Hide resolved
benchmarks/movielens.ipynb Show resolved Hide resolved
benchmarks/movielens.ipynb Outdated Show resolved Hide resolved
benchmarks/movielens.ipynb Outdated Show resolved Hide resolved
benchmarks/benchmark_utils.py Outdated Show resolved Hide resolved
@gramhagen
Copy link
Collaborator

I thought from #589 we were going to have separate notebooks / scripts for each algorithm? did i misinterpret what was meant there for scaling this out as we add new algorithms?

Copy link
Collaborator

@loomlike loomlike left a comment

Choose a reason for hiding this comment

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

This is super! Also very interesting that the more data to train, the less accuracy we get for both rating and ranking metrics, maybe because of the bigger number of users and items? Does this mean reco scenario is not easily generalizable (across users and items)?

Anyway see my comments. Can't wait to have this notebook in our staging and master branches.

benchmarks/movielens.ipynb Outdated Show resolved Hide resolved
benchmarks/benchmark_utils.py Outdated Show resolved Hide resolved
benchmarks/benchmark_utils.py Outdated Show resolved Hide resolved
benchmarks/movielens.ipynb Show resolved Hide resolved
benchmarks/movielens.ipynb Show resolved Hide resolved
benchmarks/movielens.ipynb Outdated Show resolved Hide resolved
@miguelgfierro
Copy link
Collaborator Author

I thought from #589 we were going to have separate notebooks / scripts for each algorithm? did i misinterpret what was meant there for scaling this out as we add new algorithms?

you are right, this was requested by Tao for having an initial benchmark until we start developing the benchmark through the notebooks

Copy link
Collaborator

@anargyri anargyri left a comment

Choose a reason for hiding this comment

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

Awesome! We now have some benchmarks; we can keep improving them as we get better hyperparameters.

@miguelgfierro miguelgfierro merged commit df15c43 into staging Apr 16, 2019
@miguelgfierro miguelgfierro deleted the miguel/bench_partial branch April 16, 2019 11:13
yueguoguo pushed a commit that referenced this pull request Sep 9, 2019
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.

5 participants