Amazon's item-to-item collaborative filtering recommender
The recommender algorithm that Amazon adopted early on was an improvement of the Recommender1
implemented previously. The main difference is in step 5, where now we have two more substeps, which pick the n1 most similar items and sort them by popularity:
Recommender algorithm 2 is as follows:
Initialize the utility matrix (uij) with m rows and n columns, where m is the number of users and n is the number of items.
For each pair (i, j) in the input list, set uij = 1.
Initialize the similarity matrix (sjk) with n rows and n columns.
For each j = 1…n and each k = 1…n, set sjk = s(u, v), the cosine similarity of the jth column u and the kth column v of the utility matrix.
For a given user-purchase pair (i, j) (that is, uij = 1):
Find the set S of items not bought by user i
Sort the items in S according to how similar they are to item j
Let S' be the top n1 elements of S
Sort the items in S' by popularity
Recommend the top n2 items in S'.
This...