Creating a Movie Recommender

Hey @ravimashru lets connect over a call.

2 Likes

Cool! I love the idea of trying to make this something reusable.

1 Like

Roger that! I can set up a call.

Any date and time preferences? One option would be Wednesday 8:00 am IST (Tuesday 7:30 pm PT).

1 Like

Ya that should work. Let’s connect. Thanks.

Just scheduled a call. See you all then! :slight_smile:


Wednesday, 1 September · 8:00 – 9:00am IST
Video call link: https://meet.google.com/xtv-cgir-kbs

1 Like

@kurianbenoy-aot and I had the first call today to kick this off :tada:

Here are some things we discussed:

Information

Decisions

  • The tech stack we’ll use is: FastAPI + VueJS
  • Working model: mostly working asynchronously with 1 - 2 check-in calls a week to keep us on track

Action items

  • Train a model on the MovieLens 25M Dataset.
  • Learning & upskilling (FastAPI & VueJS)
  • Try out Deta as a possible free hosting option for the backend

Next meeting

Tentative date/time: Saturday, 4 September. 7pm IST (if it works for everyone)

Tentative agenda: create a skeleton for the different parts of the project, create repo on GitHub.

4 Likes

This is incredible! :smiley:

May I suggest looking at NVIDIA Merlin ecosystem for some ideas? The team has been winning RecSys comps consistently and usually open source ideas on here. You might find something interesting to experiment.

The blog on medium also tends to have great suggestions :tea:

3 Likes

Thanks @bhutanisanyam1

1 Like

Thanks! We’ll check these out. :slight_smile:

Hey guys. This is a great project. I am currently watching this space actively for ideas

I have also been working on a similar recommendation system but for books

But was stuck at the putting it in production part. I’m currently hosting at Streamlit but for some reason my app keeps on crashing because I’m using too much resources after some time.

I have learned about sparse embeddings @bhutanisanyam1 and Deta for hosting @ravimashru so you guys have been very resourceful

Planning on joining in the other call

3 Likes

Hi @ravimashru and team, not sure if I am late to the party but this seems like a very cool project. I’d love to be involved.

1 Like

@ravimashru @bhutanisanyam1 Is there another call scheduled?

Hey @edwinq… Welcome to the community! :slight_smile:

You’re not late at all. We’ve just had one call so far and then I guess we got busy with other things. We’d love to have you on board.

I was planning to resume working on this over the weekend, but I haven’t scheduled a call yet.

I’m not sure what timezone you’re in. Does Saturday 2:00 p.m. GMT work for you?

@kurianbenoy-aot @vrc0503 will you be joining as well?

Sure, I’m in EST so I should be free for about an hour or so then. Still meeting here :

Video call link: https://meet.google.com/xtv-cgir-kbs ?

1 Like

Awesome!

I think that’s the old one. I’ve set up a new meeting here.

It would also love to join the meeting. I am still excited to work on this project. @ravimashru, I am not able to find the meeting link you shared

1 Like

Oh, that’s strange. That was a link to a calendar invite. If that’s not working then here’s a link to the call directly: https://meet.google.com/heu-heqi-grq

1 Like

After fighting the errors for over 12 hours, I decided to submit a bug. :sweat:

2 Likes

Apologies, I was not able to attend the last call, are there any action items that we can get started on?

No worries @edwinq! Here’s a summary of what we did:

  1. We created the fast-recsys org on GitHub to store everything we work on. I can add you to the org as well if you give me your GitHub username.

  2. We created skeleton repositories for the UI (using VueJS) and the backend API server (using FastAPI).

  3. We also started looking into NVIDIA Merlin since it has really cool tools for feature engineering (NVTabular), training (HugeCTR) and even an inference server (Triton). However, we pretty much hit a roadblack with installing the required dependencies when trying out the examples and @bhutanisanyam1 created the GitHub issue he mentions above.

We’re currently experimenting with two approaches:

  1. Creating an API server to serve the model trained using fastai.

  2. Use the NVIDIA Merlin ecosystem to train and deploy the recommendation system.

Here’s a few things we can start doing:

  1. Create a web UI that a user can use to rate movies they have already watched (some inspiration: Book Recommender: Collaborative Filtering, Shiny | Kaggle) and view recommendations.

  2. Convert the contents of this blog post into Python files and create REST API endpoints that we can use from the UI.

  3. The maintainers of NVTabular have responded to the issue that Sanyam created. We can try to set up an environment with the required dependencies like they recommend and try to run the example notebooks (they already have notebooks that use the MovieLens25 dataset that we also plan to use :slightly_smiling_face:)

Apart from this, I don’t think we have any other planned/concrete action items. We’re just planning to learn and figuring things out as we go!

We’ve planned to meet again at the same time this Saturday as well (Calendar invite). We’d love to see you there if you can make it. :slight_smile:

1 Like