-
Notifications
You must be signed in to change notification settings - Fork 119
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
[RMP] KDD Tutorial (Merlin Models—Retrieval, Ranking, and Negative Sampling) #269
Comments
Some context: How do we train a DLRM model without negative interactions, i.e. explicit binary target column?
Do we have an integrated way to feed the candidates from the retrieval model to ranking model? How would that work?
|
Progress updates:
|
@bschifferer , please fill up the problem, scope and starting point section above. It may be listed in the comments section. Please provide them above for clarity. Let me know if you need any help. |
@viswa-nvidia @karlhigley @sararb for viz. Some updates:
|
Pushing this to arbitration. This ticket is not in POR. Need to refactor this ticket. there is another ticket covering negative sampling work [RMP] Improve negative sampling for retrieval |
Let's keep it open due to NVIDIA-Merlin/models#596 |
Closing as bug is tracked seperately |
Problem:
We have an accepted KDD tutorial (outline can be found here). But Merlin Model does not include all the necessary components to build the outline examples. We also don't have all the experiment results that allow us to tell the desired story, i.e.: Two-tower is better than MF for the retrieval stage & a two-stage model (Retrieval+Ranking) leads to a better score than Retrieval only.
Goal:
Implement the missing blocks in Merlin Models to support the KDD tutorial notebooks.
Negative sampling for ranking
Make blocks part of Model and not of SequentialBlock models#551
Add Cond Layer to tensorflow combinators models#552
Update UniformNegativeSampling to handle targets and add optional control for testing models#583
[BUG] The negative sampling for ranking gives AUC 0.00 value when we add
sampling
layer to the Model class models#596Note: Marc / Oliver to add the PR here
Note: Negative sampling refactoring for retrieval is not in scope for KDD tutorial. We will re- visit the refactoring in 22.08. Marc to add a roadmap ticket for this.
Support batch-predict for top-k recommender
[BUG] to_top_k_recommender model does not have batch_predict() method models#499 (this is not a blocker for KDD tutorial)
Note: Batch predict is a P2
Code for generating local-prediction step of two-stage model
[FEA] cannot properly save and load the TF Retrieval model models#498 (this is not a blocker for KDD tutorial)
Run (Hyper Parameter Optimization) HPO experiments for retrieval and ranking steps:
Note: 22.07 will focus on retrieval. Gabriel to update the status here . These are related to integration tests which are focussed on retrieval.
For 22.08 - we will refactor code for negative sampling for retrieval. This may not be in time for KDD tutorial.
Experiments for ranking will have to be done for KDD tutorial.
Constraints:
Starting Point:
Proposal: https://docs.google.com/document/d/1NtuE9dKV3q7Amg6RMJbiFDidP486jW4RACJZ4V8ED80
New content doc: https://docs.google.com/document/d/1mPT0QVjdZKh7Pe4O6hQOMljTfWMBLYoSRCxDUPI2Mhs/edit
The proposed outline is:
The text was updated successfully, but these errors were encountered: