How deepblueai/sigir_ecom_2021_data_challenge_1st_place works
This repository contains two SIGIR e-commerce challenge solutions: in-session product recommendation and cart-purchase intent prediction. Their shared workflow is to prepare session data, generate task-specific predictions, and produce challenge submissions; recommendation additionally includes candidate recall and submission formatting that filters seen products. Cart prediction builds event-derived features and uses a LightGBM binary model. Evaluation provides challenge metrics for both tasks. The excerpts show data preparation and some prediction components, but not the full orchestration or all calls between them, so uncertain links are omitted.
Main entry points: utils.py Submission formatting · gen_data.py Cart data preparation · cart_task.py Event features · model.py Intent classifier
Components 14
Recommendation
- Session preparation
code_rec/gen_data.py - Candidate recall
code_rec/multi_recall.py - Submission formatting
code_rec/utils.py
Cart intent
- Cart data preparation
code_cart/gen_data.py - Event features
code_cart/cart_task.py - Intent classifier
code_cart/model.py - Submission formatting
code_cart/utils.py
Submission and evaluation
- Challenge metrics
code_rec/evaluation.py - Recommendation uploader
code_rec/uploader.py - Cart uploader
code_cart/uploader.py
Other components
- Challenge user
- Challenge data
- Prediction files
- AWS submission bucket
Connections 14
- Challenge data → Session preparation: reads sessions
- Challenge data → Cart data preparation: reads sessions
- Candidate recall → Submission formatting: formats results
- Submission formatting → Prediction files: writes JSON
- Cart data preparation → Event features: prepares events
- Event features → Intent classifier: provides features
- Intent classifier → Submission formatting: predicts intent
- Submission formatting → Prediction files: writes JSON
- Challenge user → Challenge metrics: supplies predictions
- Prediction files → Challenge metrics: evaluates against labels
- Challenge user → Recommendation uploader: submits recommendation
- Challenge user → Cart uploader: submits intent result
- Recommendation uploader → AWS submission bucket: uploads file
- Cart uploader → AWS submission bucket: uploads file