this post was submitted on 18 Nov 2023
1 points (100.0% liked)

Machine Learning

1 readers
1 users here now

Community Rules:

founded 11 months ago
MODERATORS
top 3 comments
sorted by: hot top controversial new old
[–] goodreads-rebot@alien.top 1 points 10 months ago (1 children)

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 !

[–] ilos-vigil@alien.top 1 points 10 months ago

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),

  1. 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.
  2. 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.
  3. 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.

[–] ilos-vigil@alien.top 1 points 10 months ago

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.