serenade
serenade copied to clipboard
Session-based recommender system: Serenade
The `evaluate_file.rs` presents the prediction latencies. These percentiles that are shown are currently hardcoded. Make the percentiles configurable using the config file. in the config file introduce a new section...
The evaluation metric (MRR@20) that is used for hyperparameter search is currently hardcoded. Serenade has supports for multiple [evaluation metrics](https://github.com/bolcom/serenade/tree/main/src/metrics) such as MRR, F1, HitRate, Ndcg, Popularity. Precision, Recall etc....
Currently our github workflow generates binary artifacts and cargo crate. The workflow takes care of the versioning for the artifacts, but it does not update the versioning for the cargo...
The config library currently used is not the most used/supported by the Rust community. It would be great to replace the current approach to use `serde` and `config` (example: https://github.com/paulobarchi/stdbm/blob/main/src/settings.rs).
Add the VSKNN_STAN algorithm. The VSKNN_STAN algorithm is introduced in the paper: [Empirical Analysis of Session-Based Recommendation Algorithms](https://arxiv.org/pdf/1910.12781.pdf) VSKNN_STAN combines the ideas from STAN and VS-kNN in a single approach...
Add the STAN algorithm to Serenade. Sequence and Time Aware Neighborhood for Session-based Recommendations: STAN https://dl.acm.org/doi/10.1145/3331184.3331322 This method called “Sequence and Time Aware Neighborhood” was presented at SIGIR ’19. STAN...
I found two bugs in Serenade, which lead to reproducibility issue, where the recommender system returns different results when executed with the same inputs. Both are caused by a lack...