Built in Februrary 2020 as part of the Insight Health Data Fellows Program. As an avid reader, I often find it difficult to prioritize which books I'd like to read out of my ever-growing to-read pile (so many books, so little time!). Consequently, I created NoveList!
I built, trained, and evaluated a collaborative filtering recommender system in Jupyter Notebooks with scikit-surprise, pandas, numpy, and seaborn. I then deployed NoveList using streamlit and Heroku. While I no longer maintain the app, you can view a demo below.
In a perfect world, I'd train an LLM on the book text themselves to recommend books based on content. However, there are several challenges to this approach, including but not limited to copyright issues.