×

Eigentaste: A constant time collaborative filtering algorithm. (English) Zbl 0989.68052

Inf. Retr. 4, No. 2, 133-151 (2001).
Summary: Eigentaste is a collaborative filtering algorithm that uses universal queries to elicit real-valued user ratings on a common set of items and applies Principal Component Analysis (PCA) to the resulting dense subset of the ratings matrix. PCA facilitates dimensionality reduction for offline clustering of users and rapid computation of recommendations. For a database of \(n\) users, standard nearest-neighbor techniques require \(O(n)\) processing time to compute recommendations, whereas Eigentaste requires \(O(1)\) (constant) time. We compare Eigentaste to alternative algorithms using data from Jester, an online joke recommending system.
Jester has collected approximately 2,500,000 ratings from 57,000 users. We use the Normalized Mean Absolute Error (NMAE) measure to compare performance of different algorithms. In the appendix we use uniform and normal distribution models to derive analytic estimates of NMAE when predictions are random. On the Jester dataset, Eigentaste computes recommendations two orders of magnitude faster with no loss of accuracy. Jester is online at: http://eigentaste.berkeley.edu.

MSC:

68P20 Information storage and retrieval of data

Keywords:

eigentaste; Jester

Software:

Eigentaste
Full Text: DOI