I have a binary matrix
N x N where both rows and columns represent users of a website. If
matix[i,j] = 1 it means that
user i liked the
user j (posts). On the other sied, not necessarily
matix[j,i] = 1 because it could be that
user j did not like
user i' posts. I would like, given a
user k, to suggest the top 10 users to follow. I think this problem can be solved using a collaborative filtering. I did some research, but I only found solutions based on matrices where columns and rows contains different items, e.g. users-songs, users-movies, users-items, etc.
Would it make sense to apply what is commonly known as
ITEM-ITEM (as described in this post)?:
- Normalize user vectors to unit vectors.
- Construct a new item by item matrix.
- Compute the cosine similarity between all items in the matrix.