Search code examples
pythonbigdatadata-sciencerecommendation-engine

Personnalized Collaborative Filtering


I'm working on a recommendation engine. I have already tested the user based Collaborative filtering (CF) and the item based CF with the Python surprise library. However, I would like to test a collaborative filtering (user and item) approach in which the nearest neighbors to be determined are not based on similarity of ratings. Indeed, I have established user profiles and item profiles.

Concretely, i would like:

  • User Collaborative filtering to take a particular user, find users that are similar to that user (based on the similarities between the type profiles and the current user, then once the nearest typical profile has been identified, we find the k nearest neighbors belonging to the identified type profile; similarity is not based on ratings) and recommend items that those similar users liked.

  • Same for Item based Collaborative Filtering

The idea is to know if a thorough knowledge of users and items improves the recommendation engine.

Someone would have an idea of ​​how to do this in Python?

Bests regards


Solution

  • Check this repository: https://github.com/ZwEin27/User-based-Collaborative-Filtering

    This is implemented in python with k nearest neighbor. Change the code according to your requirement and then you are good to go.