Inspiration

I wanted to explore how Transformers could improve recommendation systems by capturing sequential patterns in user preferences. BERT4Rec’s self-attention architecture offered a powerful way to model viewing behavior beyond rating-based methods, making it ideal for recommendation tasks.

What it does

This is an interactive anime recommendation system powered by a BERT. Instead of numeric ratings, it uses users' favorite anime to generate personalized suggestions. The model is deployed as a web application where users can explore recommendations in real time. Each recommendation card can be flipped, and you can click the MyAnimeList button to visit the anime’s page directly.

How we built it

I scraped data from over 5 million users' anime lists. It's one of the largest public dataset of it's kind. After filtering the data, around 1.7 million users remained, and I used a subset of 600,000 users for this project due to resource limitations. After collecting the data, I was looking for recommendation models to train on this data. I found BERT4Rec project "https://github.com/jaywonchung/BERT4Rec-VAE-Pytorch". The idea of using a Transformer-based architecture for recommendation tasks particularly caught my interest, so I integrated it into my project with some subtle modifications to better fit the nature of the data and project constraints.

Accomplishments that we're proud of

I believe this is one of the first anime recommendation websites to use a BERT. That makes it a fresh and innovative approach in the field.

Links

AnimeRecBERT

This is the GitHub repository for AnimeRecBERT. The project uses a subset of 600,000 users and 54 million ratings. Setup instructions are available in the README.md file. I developed a PyQt GUI application for this project. However, the GUI is basic and lacks many features compared to the website. https://github.com/MRamazan/AnimeRecBERT

AnimeRecBERT Website

This is the website for this project deployed on railway. Sometimes it crashes due to 512MB RAM limit. https://www.animerecbert.online

AnimeRecBERT Web

This is the GitHub repository for web deployment of the AnimeRecBERT project. You can run it on your local machine. Instructions available in README.md file. https://github.com/MRamazan/AnimeRecBertWeb

AnimeRecBERT-Hybrid

This is an improved version of the AnimeRecBERT project, featuring a stronger architecture with genre embeddings included and trained on the full dataset. Train instructions available and you can run inference on local host. Since it doesn't have a public website, you may ignore this one. I just wanted to show the future development of the project.
I didn't use this model on the website because more anime and genres means larger embeddings. Since the site already crashes frequently in its current state, I was concerned that increasing the model’s complexity would make it unusable. https://github.com/MRamazan/AnimeRecBERT-Hybrid

Built With

Share this project:

Updates