4 ms·
One kind of collaborative filtering algorithm is "Personalized PageRank" (PPR). Like the regular PageRank you do a bunch of random walks on the graph of users a
by lonk11 4y ago
One kind of collaborative filtering algorithm is "Personalized PageRank" (PPR). Like the regular PageRank you do a bunch of random walks on the graph of users and items where the upvotes are the edges of the graph. What makes it "Personalized" is that you start each walk from the user you are making recommendations for.
If you limit the walk to just 3 steps then it becomes "users who upvoted what you upvoted also upvoted this".
What I like about it is that each recommendation is supported by concrete shared liked items which makes each recommendation easily explainable to the user.
I implemented this algorithm for my project (https://linklonk.com/item/3292763817660940288 https://linklonk.com/item/3292763817660940288) that includes RSS feeds as sources of information and it's been working well as a prioritizing RSS reader. It would be great to see this algorithm tried on a bigger website like HN where there are so many upvotes/items/users to work with.
In that case every user would be a curator of content that they have chosen to upvote. If you happen to like someone's upvotes (ie, you upvote the same content as they do) then you would see their other upvoted items ranked higher for you.
The OP is just one curator that has decided to make their liked content public, but PPR would make every user of HN a potential curator of content for you.