This is really nice. I am working on a book recommendation system myself as a hobby project too, and your website is really cool. May I ask you what stack do you use? Also, for the ML part, why did you choose this model? What I dislike with NN is that they provide black box recommendations while users would like to understand WHY results are recommended, which can be done with simpler heuristics (that are explainable). Let’s keep in touch !
Machine Learning
Community Rules:
- Be nice. No offensive behavior, insults or attacks: we encourage a diverse community in which members feel safe and have a voice.
- Make your post clear and comprehensive: posts that lack insight or effort will be removed. (ex: questions which are easily googled)
- Beginner or career related questions go elsewhere. This community is focused in discussion of research and new projects that advance the state-of-the-art.
- Limit self-promotion. Comments and posts should be first and foremost about topics of interest to ML observers and practitioners. Limited self-promotion is tolerated, but the sub is not here as merely a source for free advertisement. Such posts will be removed at the discretion of the mods.
May I ask you what stack do you use?
Stack for which part (model training, front-end, back-end or something else)? Anyway, i find Torch, TorchServe, PostgreSQL and NextJS are vital part of the project.
Also, for the ML part, why did you choose this model?
Do you mean GCE-GNN as smart recommender? If so, these are primary reasons (copied from SRec blog page),
- User-free model, but utilize other user's sequence during prediction. By user-free model, I mean the model doesn't use user ID/representation on prediction. It's a required feature for SRec recommender system since all visitor is anonymous.
- Authors of GCE-GNN provide source code of the model. This saves some time to re-implement GCE-GNN or verify different GCE-GNN implementations (such as RecBole-GNN) by myself.
- GCE-GNN model architecture/framework is relatively easy to understand.
What I dislike with NN is that they provide black box recommendations while users would like to understand WHY results are recommended
As user, sometimes i also feel this. That's why i also create recommendation by game tags which show some explanation.
Hi r/MachineLearning,
I built SRec since I'm not satisfied with the recommendations shown by Steam, especially for indie/unpopular games. There are 3 available recommendation types,
- Smart recommender. It's based on GCE-GNN (Global Context Enhanced Graph Neural Networks) model with some modifications. Addition details can be seen SRec blog post.
- Recommendation by similar game tags. This recommender provide explanation by showing top-5 most similar tags between chosen and recommended games.
- Recommendation by Steam user preferences.
Currently, smart recommender has poor performance when recommending extremely popular games. The performance of recommendation by similar game tags is limited by how Steam users apply tags to each games. On each game page, SRec also provide review insight that shows most frequently mentioned keywords where you can read some top reviews which mention selected keyword.
I use Torch to train the model and use TorchServe to deploy the model. I only use an RTX 3060 for this project. Feel free to ask any questions.
P.S. I cannot include any link on this comment since it got hit by spam filter.