As part of the course Collaborative Filtering (by Dr. Angshul Majumdar, IIIT-Delhi) during my undergraduate studies, I implemented a series of evolving movie recommender systems using the MovieLens database (https://grouplens.org/datasets/movielens/).
The main objective was to see improvements introduced by increasingly sophiticated techniques such as user and item bias correction, neighbourhood selection, variance weighting, correlation thresholding and rating normalization.
We also compared results obtained by using various matrix factorization methods such as NNMF, IRPF and SVT (which were compared based on existing implementations out there.)
I have compiled here all the code scripts from that course, and my comparison reports. Hope it helps you understand the basic working (and effects) of most of these techniues!