Games2Anime

Games2Anime

Games2Anime is a website that recommends Anime based on Steam Games.

Due to current world events (COVID-19), there is a greater demand for online entertainment. Steam recently reached a record high for concurrent users and more people than ever are consuming online entertainment. However, there are only so many games on Steam and many gamers may seek to broaden their horizons by trying something new, like Japanese animation (anime). However, it can be difficult to narrow what anime to watch due to its wide variety of genres and styles.

Thus, the goal of our application is to recommend anime to people based on their Steam gaming preferences. By giving our system a game title from Steam, it will return a list of recommended anime based on the similarity in reviews and game description. Each recommendation displays general details and a similarity rating, along with a link to its MyAnimeList page.

It works by comparing Steam Game Descriptions and Anime User Reviews to give you a list of Anime recommendations.

Games2Anime gets a list of all Anime with a MAL rating of 7.0 or above. We then remove any sequels/related movies from the list (to ensure we don’t recommend more than 1 show from a particular series on a search). We get the top 20 reviews for each anime in our list (sorted by most helpful reviews first). We then combine all the reviews and use a fancy tool called TfidfVectorizer that converts a collection of raw documents to a matrix of TF-IDF features. We then perform dimensionality reduction using singular value decomposition (svds) to get a matrices of words in reviews and anime based on words. We these structures, we can find similar anime to words using cosine similarity.

We then get a list of all Steam Games and their descriptions. Based on the game input, we go through each word in the game’s description and get the top anime to that word and build up a ranking based on how often an anime shows up across the entire description. After normalizing and sorting the scores, we return the top 5 anime recommendations based on the game.

Because we are heavily reliant on keyword matching, some keywords get over weighted and thus we have to manually decrease the weight of certain keywords. Sometimes this affects ‘obvious’ results like getting basketball anime for a game about basketball. This is ongoing so some search results are not great, yet. In the future, it would be nice to have search result feedback, either using Rocchio or another method. Another improvement could be adding a video API for when we don’t find a trailer for an anime.

This was a fun final project for CS 4300! I learnt a lot about information retrieval methods and systems along the way and found my next show. I hope it finds your next show as well!

Avatar
Amrit Amar
Data Engineer

My research interests include data design and engineering, graphics and virtual/augmented reality, and artificial intelligence (particularly alignment, interpretability, and evolutionary algorithms).