Google news personalization: scalable online collaborative filtering

Abhinandan DasMayur DatarAshutosh GargShyam Rajaram

article2007WWW1,822 citations

Presents a scalable, production-tested collaborative filtering architecture that combines MinHash clustering, MapReduce-based PLSI, and covisitation tracking to deliver real-time news recommendations across millions of dynamic items and users with high churn.

Listen

Online news platforms face the critical challenge of delivering timely, personalized story recommendations to millions of active visitors while content rapidly updates and expires every few hours. Traditional collaborative filtering systems typically assume a relatively stable catalog of items and rely on computation-heavy offline updates. In fast-moving news environments, however, user interests are immediate and older stories quickly become obsolete. Consequently, platforms require an architecture capable of processing massive data volumes and continuously refreshing recommendations within milliseconds.

The article demonstrates the design, deployment, and real-world performance of a scalable, real-time collaborative filtering system designed to generate personalized recommendations under conditions of extreme content turnover and large user scale.

To solve this, the system combines three distinct algorithmic approaches: two scalable user-clustering methods and an item-to-item co-occurrence method that identifies stories frequently read together within short time windows. Offline clustering jobs group similar readers across months of activity, while distributed online data stores track time-decayed reader activity and update scores immediately when a user clicks an article. A live production evaluation was conducted over five to six months across millions of active readers, comparing click-through performance against standard popularity-based recommendations.

The evaluation revealed several key findings. First, personalization substantially improves user engagement, as personalized recommendations achieved approximately 38% higher click-through rates compared to a baseline strategy of simply showing popular stories. Second, the advanced probabilistic clustering and hashing methods consistently outperformed conventional memory-based correlation techniques in accuracy without sacrificing operational speed. Third, the system demonstrated high operational resilience; separating real-time statistics updates from recommendation serving ensured that recommendations could still be generated quickly even if tracking components experienced brief outages. Finally, the baseline popularity algorithm only outperformed personalization during rare breaking news events involving broad, universal audience interest.

These findings show that large-scale recommendation systems can remain fully content-agnostic and rely strictly on user interaction data. By avoiding text-based analysis, the underlying infrastructure can be adapted across multiple languages and media formats, such as video, music, or images, with minimal reconfiguration. Furthermore, isolating real-time scoring from periodic clustering drastically reduces computational bottlenecks and operational risk while meeting strict sub-second web latency requirements.

Organizations operating high-volume, dynamic content services should consider adopting hybrid architectures that blend long-term behavioral clustering with short-term co-visitation tracking. Future efforts should focus on automated machine learning techniques to dynamically weight algorithm scores and on refining how new users with little interaction history are integrated into clustering models.

While the live results provide high confidence in the overall architecture's effectiveness, the system relies on implicit click data, which can introduce noise from accidental selections or automated traffic. In addition, the probabilistic clustering models still require batch retraining to incorporate newly registered users, temporarily relying on simpler co-visitation methods for recent accounts.

Cover for Google news personalization: scalable online collaborative filtering

Abstract

Several approaches to collaborative filtering have been studied but seldom have studies been reported for large (several million users and items) and dynamic (the underlying item set is continually changing) settings. In this paper we describe our approach to collaborative filtering for generating personalized recommendations for users of Google News. We generate recommendations using three approaches: collaborative filtering using MinHash clustering, Probabilistic Latent Semantic Indexing (PLSI), and covisitation counts. We combine recommendations from different algorithms using a linear model. Our approach is content agnostic and consequently domain independent, making it easily adaptable for other applications and languages with minimal effort. This paper will describe our algorithms and system setup in detail, and report results of running the recommendations engine on Google News.

Table of Contents

  • 1. INTRODUCTION
  • 2. PROBLEM SETTING
  • 2.1 Scale of our operations
  • 2.2 The problem statement
  • 2.3 Strict timing requirements
  • 3. RELATED WORK
  • 3.1 Memory-based algorithms
  • 3.2 Model-based algorithms
  • 4. ALGORITHMS
  • 4.1 MinHash
  • 4.1.1 LSH
  • 4.1.2 MinHash clustering using MapReduce
  • 4.2 PLSI
  • 4.2.2 Using PLSI with Dynamic Datasets
  • 4.3 Using user clustering for recommendations
  • 4.4 Covisitation
  • 4.5 Candidate generation
  • 5. SYSTEM SETUP
  • 5.1 Offline processing
  • 5.2 Data tables
  • 5.3 Real time servers
  • 5.4 Putting the components together
  • 6. EVALUATION
  • 6.1 Test Datasets
  • 6.2 Evaluation methodology and metrics
  • 6.4 Evaluation Results
  • 6.5 Evaluation on live traffic
  • 7. CONCLUSION
  • 8. ACKNOWLEDGMENTS
  • 9. REFERENCES

Knowls

  1. Knowl 1 — MinHash-Based Locality Sensitive Clustering for Binary User Click Histories

    algorithm

    MinHash clustering groups users with overlapping item interaction histories by applying Locality Sensitive Hashing (LSH) over Jaccard similarity. Each user uUu \in \mathcal{U} is represented by a set of clicked news stories CuSC_u \subseteq \mathcal{S}. The similarity between two users ui,uju_i, u_j is given by the Jaccard coefficient:

    S(ui,uj)=CuiCujCuiCujS(u_i, u_j) = \frac{|C_{u_i} \cap C_{u_j}|}{|C_{u_i} \cup C_{u_j}|}

    Under a uniform random permutation of the item universe S\mathcal{S}, the probability that the first item from CuiC_{u_i} matches the first item from CujC_{u_j} equals S(ui,uj)S(u_i, u_j). To construct robust user clusters without storing permutations across millions of items, 64-bit hash values are generated using independent random seeds:

    Input: User click history CuSC_u \subseteq \mathcal{S}, number of hash functions per group pp, number of groups qq, independent random seeds σl,m\sigma_{l,m} for 1lq,1mp1 \le l \le q, 1 \le m \le p
    Output: Set of qq cluster IDs for user uu
    for each group l1l \leftarrow 1 to qq do
        KlK_l \leftarrow empty string
        for each hash index m1m \leftarrow 1 to pp do
            hminh_{\min} \leftarrow \infty
            for each item sCus \in C_u do
                hHash64(Id(s),σl,m)h \leftarrow \text{Hash64}(\text{Id}(s), \sigma_{l,m})
                if h<hminh < h_{\min} then
                    hminhh_{\min} \leftarrow h
                end if
            end for
            KlKlString(hmin)K_l \leftarrow K_l \mathbin{\Vert} \text{String}(h_{\min})
        end for
        Emit cluster membership (Kl,u)(K_l, u)
    end for

    Key design properties include:

    • Concatenating pp hash values (p[2,4]p \in [2, 4]) raises the collision probability to S(ui,uj)pS(u_i, u_j)^p, increasing cluster precision.
    • Generating qq independent concatenated keys (q[10,20]q \in [10, 20]) increases recall across candidate clusters.
    • The 64-bit integer hash range (026410 \dots 2^{64}-1) prevents collisions up to an item universe of 2322^{32} items.
    • In a MapReduce pipeline, Mappers compute the qq cluster IDs per user, the Shuffle phase groups users by cluster ID, and Reducers emit user lists per cluster, pruning clusters whose membership falls below a minimum threshold.
  2. Knowl 2 — Parallel Expectation-Maximization for Probabilistic Latent Semantic Indexing via 2D Grid Sharded MapReduce

    algorithm

    Probabilistic Latent Semantic Indexing (PLSI) models user-item interactions (u,s)U×S(u, s) \in \mathcal{U} \times \mathcal{S} via an unobserved latent community variable zZz \in \mathcal{Z} with Z=L|\mathcal{Z}| = L classes:

    p(su;θ)=z=1Lp(zu)p(sz)p(s|u; \theta) = \sum_{z=1}^L p(z|u) p(s|z)

    For large-scale click logs where the number of users N=UN = |\mathcal{U}| and items M=SM = |\mathcal{S}| are on the order of 10710^7 and L=1000L = 1000, standard single-machine Expectation-Maximization (EM) memory requirements exceed single-node capacities. The EM algorithm is parallelized across an R×KR \times K grid of Mapper workers:

    Input: Sharded click log containing pairs (u,s)(u, s), prior parameter estimates p^(zu)\hat{p}(z|u), N(z,s)N(z, s), and N(z)N(z)
    Output: Updated conditional probability distributions p(zu)p(z|u) and p(sz)p(s|z)
    Mapper at grid coordinate (i,j)(i, j) for user shard i{1,,R}i \in \{1,\dots,R\} and item shard j{1,,K}j \in \{1,\dots,K\}:
        Load local parameters p^(zu)\hat{p}(z|u) for uShardiu \in \text{Shard}_i and N(z,s)N(z, s) for sShardjs \in \text{Shard}_j
        for each observed click pair (u,s)(u, s) where uShardiu \in \text{Shard}_i and sShardjs \in \text{Shard}_j do
            for each latent state zZz \in \mathcal{Z} do
                q(z;u,s;θ^)N(z,s)N(z)p^(zu)zZN(z,s)N(z)p^(zu)q^*(z; u, s; \hat{\theta}) \leftarrow \frac{\frac{N(z, s)}{N(z)} \hat{p}(z|u)}{\sum_{z' \in \mathcal{Z}} \frac{N(z', s)}{N(z')} \hat{p}(z'|u)}
            end for
            Emit intermediate pairs: (u,q)(u, q^*), (s,q)(s, q^*), and (z,q)(z, q^*)
        end for
    Reducer for User uu:
        p(zu)sq(z;u,s;θ^)zsq(z;u,s;θ^)p(z|u) \leftarrow \frac{\sum_s q^*(z; u, s; \hat{\theta})}{\sum_{z'} \sum_s q^*(z'; u, s; \hat{\theta})}
        Emit updated CPD p(zu)p(z|u)
    Reducer for Item ss:
        N(z,s)uq(z;u,s;θ^)N(z, s) \leftarrow \sum_u q^*(z; u, s; \hat{\theta})
        Emit updated statistic N(z,s)N(z, s)
    Reducer for Latent State zz:
        N(z)suq(z;u,s;θ^)N(z) \leftarrow \sum_s \sum_u q^*(z; u, s; \hat{\theta})
        Emit updated statistic N(z)N(z)

    The conditional probability distribution for items is obtained via p(sz)=N(z,s)N(z)p(s|z) = \frac{N(z, s)}{N(z)}. Sharding users into RR shards and items into KK shards ensures each Mapper only loads 1/R1/R of user parameters and 1/K1/K of item statistics, bounding per-machine memory consumption to (N/R+M/K)×L×4(N/R + M/K) \times L \times 4 bytes.

  3. Knowl 3 — Dynamic Real-Time PLSI Adaptation for High-Churn Itemsets

    model/method

    In news recommendation systems, the item set undergoes constant churn (frequent insertions and deletions every few minutes), which invalidates offline-learned static item parameters p(sz)p(s|z) and makes full retraining infeasible.

    To adapt PLSI to dynamic itemsets in real time:

    1. The user conditional probability distributions p(zu)p(z|u) are learned offline via MapReduce and treated as fixed fractional memberships across LL user community clusters zZz \in \mathcal{Z}.
    2. For each cluster zz and each active or newly published story ss, an online weighted click count is maintained in real time.
    3. When user uu clicks on story ss, the online counter for every cluster zz is updated by the fractional weight p(zu)p(z|u) discounted by an exponential time-decay factor.
    4. The item distribution given latent class zz is dynamically normalized on the fly:

    p(sz)=DecayedWeightedClicks(s,z)sSDecayedWeightedClicks(s,z)p(s|z) = \frac{\text{DecayedWeightedClicks}(s, z)}{\sum_{s' \in \mathcal{S}} \text{DecayedWeightedClicks}(s', z)}

    This enables newly published articles to acquire real-time PLSI scores immediately as cluster members interact with them.

  4. Knowl 4 — Time-Decayed Item-Item Covisitation Graph for Real-Time Short-Term Recommendations

    model/method

    Item-item covisitation models short-term user interests based on stories clicked within a brief time window (typically a few hours).

    The system maintains an online graph in distributed storage where nodes represent news stories S\mathcal{S} and edge weights represent time-decayed counts of covisitation instances. An edge (sj,sk)(s_j, s_k) exists if a user clicks both sjs_j and sks_k within the time window.

    Online updates upon user click:

    • When user uiu_i clicks story sks_k, the system retrieves uiu_i's recent click history CuiC_{u_i}.
    • For every prior recent item sjCuis_j \in C_{u_i}, the adjacency lists for both sjs_j and sks_k are updated in real time with an age-discounted count increment.

    Candidate recommendation scoring: For a candidate item ss and a user uiu_i with recent click history CuiC_{u_i}, the covisitation score is:

    rui,scovisit=sjCuiWeight(sj,s)sSWeight(sj,s)r^{\text{covisit}}_{u_i, s} = \sum_{s_j \in C_{u_i}} \frac{\text{Weight}(s_j, s)}{\sum_{s' \in \mathcal{S}} \text{Weight}(s_j, s')}

    The raw covisitation scores are normalized via linear scaling to the range [0,1][0, 1].

  5. Knowl 5 — Unified Linear Combination Scoring for Hybrid Multi-Algorithm Recommendations

    model/method

    To combine long-term user interests with immediate short-term session intent, recommendation scores from multiple model-based and memory-based algorithms are combined via a linear model:

    rua,sk=aAwarskar_{u_a, s_k} = \sum_{a \in \mathcal{A}} w_a r^a_{s_k}

    where A={MinHash,PLSI,Covisitation}\mathcal{A} = \{\text{MinHash}, \text{PLSI}, \text{Covisitation}\}, waw_a is the weight assigned to algorithm aa, and rska[0,1]r^a_{s_k} \in [0, 1] is the normalized candidate score produced by algorithm aa.

    For user-clustering methods (MinHash and PLSI), the candidate score rua,skclusterr_{u_a, s_k}^{\text{cluster}} is computed as:

    rua,skclusterci:uaciw(ua,ci)(ujciI(uj,sk)sSujciI(uj,s))r_{u_a, s_k}^{\text{cluster}} \propto \sum_{c_i : u_a \in c_i} w(u_a, c_i) \left( \frac{\sum_{u_j \in c_i} I(u_j, s_k)}{\sum_{s' \in \mathcal{S}} \sum_{u_j \in c_i} I(u_j, s')} \right)

    where w(ua,ci)w(u_a, c_i) is the fractional membership of user uau_a in cluster cic_i (equal weights across matching hash buckets for MinHash; p(z=ciua)p(z=c_i|u_a) for PLSI), and I(uj,sk)I(u_j, s_k) represents the time-decayed click indicator of member uju_j on story sks_k.

    The top KK candidate stories ranked by rua,skr_{u_a, s_k} are returned to the user.

  6. Knowl 6 — Decoupled Online Serving and Asynchronous Statistics Architecture for Real-Time Recommendations

    model/method

    The recommendation system separates real-time scoring from statistics aggregation using two distributed Bigtable data tables and decoupled serving components:

    1. Data Tables:

      • User Table (UT): Indexed by user ID; stores the user's cluster IDs (MinHash buckets and PLSI latent classes) and click history.
      • Story Table (ST): Indexed by story ID; stores real-time time-decayed cluster click counts (s×cs \times c) and item covisitation adjacency lists (s×ss \times s'), along with normalizer sums.
    2. Serving Workflows:

      • Recommendation Serving: The News Frontend (NFE) passes the user ID and candidate story IDs to the News Personalization Server (NPS). The NPS retrieves the user's clusters and recent history from the UT, fetches cluster click counts and covisitation statistics from the ST (with local caching and expiry windows), computes the combined linear scores, and returns the top ranked stories within a strict sub-second latency budget (a few hundred milliseconds).
      • Click Ingestion: When a user clicks a story, the NFE records the click in the UT and notifies the News Statistics Server (NSS). The NSS fetches the user's cluster memberships and recent click history from the UT and updates cluster click counts and covisitation pairs in the ST, buffering writes for throughput.

    Decoupling NPS from NSS ensures that if the NSS fails or lags, the NPS continues serving recommendations using slightly stale ST statistics, achieving graceful degradation without user-facing downtime.

  7. Knowl 7 — Candidate Generation for Online News Recommendation

    algorithm

    Generating recommendation scores for millions of available news items in real time is computationally prohibitive. A candidate set Cu\mathcal{C}_{u} of items for user uu is formed using either of two methods:

    Input: User uu, user cluster set Ku\mathcal{K}_u, user recent click history CuC_u, item covisitation graph Gcovisit\mathcal{G}_{\text{covisit}}
    Output: Candidate story set Cu\mathcal{C}_u
    Method 1 (System Candidate Set):
        CclustercKu{sSClicks(c,s)>0}\mathcal{C}_{\text{cluster}} \leftarrow \bigcup_{c \in \mathcal{K}_u} \{s \in \mathcal{S} \mid \text{Clicks}(c, s) > 0\}
        CcovisitsCu{sS(s,s)Gcovisit}\mathcal{C}_{\text{covisit}} \leftarrow \bigcup_{s' \in C_u} \{s \in \mathcal{S} \mid (s', s) \in \mathcal{G}_{\text{covisit}}\}
        CuCclusterCcovisit\mathcal{C}_u \leftarrow \mathcal{C}_{\text{cluster}} \cup \mathcal{C}_{\text{covisit}}
        return Cu\mathcal{C}_u
    Method 2 (Frontend Candidate Filtering):
        CfrontendFilterStories(edition,language,freshness,custom_sections)\mathcal{C}_{\text{frontend}} \leftarrow \text{FilterStories}(\text{edition}, \text{language}, \text{freshness}, \text{custom\_sections})
        CuCfrontend\mathcal{C}_u \leftarrow \mathcal{C}_{\text{frontend}}
        return Cu\mathcal{C}_u

    Method 1 defines the minimal sufficient candidate set because stories outside the union of cluster clicks and covisitation neighbors receive a score of zero under the scoring model, bounding candidate evaluation to at most a few thousand items per user request.

  8. Knowl 8 — Precision-Recall Evaluation of MinHash, PLSI, and Correlation on Static Datasets

    empirical result

    Offline evaluations were conducted across three datasets:

    • MovieLens: 943 users, 1,670 movies, ~54,000 ratings (binarized to 1 if rating \ge user's mean rating, 0 otherwise).
    • NewsSmall: 5,000 users, 40,000 items, 370,000 clicks.
    • NewsBig: 500,000 users, 190,000 items, 10,000,000 clicks.

    Evaluations used an 80%-20% train-test split per user across multiple runs. Inferred ratings were binarized across thresholds in {10xx[0.1,4.0]}\{10^{-x} \mid x \in [0.1, 4.0]\}.

    Key empirical findings:

    • PLSI achieved the highest precision across all recall levels, followed by MinHash clustering.
    • Both PLSI and MinHash outperformed the standard memory-based Pearson/Cosine Correlation benchmark on MovieLens and NewsSmall.
    • Memory-based Correlation failed to scale to NewsBig because keeping the pairwise user matrix in memory or querying disk in real time became computationally infeasible, whereas MapReduce-based PLSI and MinHash scaled efficiently.
    • The precision-recall quality difference between PLSI and MinHash narrowed as the dataset size increased from MovieLens to NewsBig.
  9. Knowl 9 — Interlaced A/B Testing Methodology for Position-Unbiased Live Recommendation Evaluation

    experimental setup

    To evaluate competing recommendation algorithms on live web traffic without presentation or position bias (where users preferentially click higher-ranked positions):

    1. Two or more candidate algorithms generate independent sorted ranked recommendation lists for a user request.
    2. The final presented recommendation list is constructed by interlacing items round-robin from the competing lists (e.g., item 1 from Algorithm A, item 1 from Algorithm B, item 2 from Algorithm A, item 2 from Algorithm B, removing duplicate items).
    3. The starting algorithm order in the interlace sequence is systematically cycled across user requests so each algorithm appears at each position rank with equal frequency.
    4. Relative performance is measured by tracking user clicks attributed to each algorithm's recommended items. The ratio of click-throughs across a shared baseline provides an unbiased comparison of recommendation quality.
  10. Knowl 10 — Live Traffic Click-Through Rate Improvement over Popularity Baseline on Google News

    empirical result

    In live traffic A/B testing conducted over millions of Google News users across 5 to 6 months:

    • Hybrid collaborative filtering algorithms biased toward item covisitation (weight =2.0= 2.0, denoted CVBiased) and biased toward user clustering (weight =2.0= 2.0 for PLSI and MinHash, denoted CSBiased) were compared against a baseline algorithm that recommends the most popular stories ranked by age-discounted total clicks.
    • On average, both CVBiased and CSBiased achieved a 38% higher click-through rate (CTR) compared to the Popular baseline.
    • The Popular baseline only outperformed personalized collaborative filtering during rare, highly viral breaking events (e.g., major celebrity news events).
    • Direct live comparisons between MinHash and PLSI showed that while individual standalone models (weights 1:1:0 or 1:0:1) performed better than an unweighted equal blend (1:1:1), neither MinHash nor PLSI showed a statistically conclusive advantage over the other.

Coverage note — No substantial contributed material was omitted. The 10 knowls fully cover the system architecture, MinHash and PLSI MapReduce formulations, dynamic real-time adaptation, covisitation modeling, candidate generation, and offline and live experimental evaluations.

References

  1. 1.G. Adomavicius, and A. Tuzhilin Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions. In IEEE Transactions on Knowledge And Data Engineering, Vol 17, No. 6, June 2005
  2. 2.D. Blei, A. Ng, and M. Jordan Latent Dirichlet Allocation In Journal of Machine Learning Research, 2003.
  3. 3.J. Breese, D. Heckerman, and C. Kadie Empirical Analysis of Predictive Algorithms for Collaborative Filtering. In Proc. of the 14th Conf. on Uncertainty in Artifical Intelligence, July 1998.
  4. 4.A. Broder. On the resemblance and containment of documents. In Compression and Complexity of Sequences (SEQUENCES'97), 1998, pp. 21–29.
  5. 5.J. Buhler Efficient large-scale sequence comparison by locality-sensitive hashing. In Bioinformatics, Vol. 17, pp 419 –428, 2001.
  6. 6.M. Charikar. Similarity Estimation Techniques from Rounding Algorithms. In Proc. of the 34th Annual ACM Symposium on Theory of Computing, STOC (2002).
  7. 7.N. Cristianini, and J. Shawe-Taylor An Introduction to Support Vector Machines and Other Kernel-based Learning Methods Cambridge University Press, 1st edition (March 28, 2000).
  8. 8.E. Cohen. Size-Estimation Framework with Applications to Transitive Closure and Reachability. Journal of Computer and System Sciences 55 (1997): 441–453.
  9. 9.E. Cohen, M. Datar, S. Fujiwara, A. Gionis, P. Indyk, R. Motwani, J. Ullman, and C. Yang. Finding Interesting Associations without Support Pruning. In Proc. of the 16th Intl. Conf. on Data Engineering, (ICDE 2000).
  10. 10.F. Chang, J. Dean, S. Ghemawat, W. Hsieh, D. Wallach, M. Burrows, T. Chandra, A. Fikes, and R. Gruber. Bigtable: A Distributed Storage System for Structured Data. In Proc. of the 7th Symposium on Operating System Design and Implementation, (OSDI 2006).
  11. 11.M. Datar, N. Immorlica, P. Indyk, and V. Mirrokni Locality-Sensitive Hashing Scheme Based on p-Stable Distributions. In Proc. of the 20th ACM Annual Symposium on Computational Geometry (SOCG 2004).
  12. 12.J. Dean, and S. Ghemawat., "MapReduce: Simplified Data Processing on Large Clusters.", In Proc. of 6th Symposium on Operating Systems Design and Implementation (OSDI), San Francisco, 2004.
  13. 13.A. Gionis, P. Indyk, and R. Motwani. Similarity Search in High Dimensions via Hashing. In Proc. of the 25th Intl. Conf. on Very Large Data Bases, VLDB(1999).
  14. 14.T. Hofmann Latent Semantic Models for Collaborative Filtering In ACM Transactions on Information Systems, 2004, Vol 22(1), pp. 89–115.
  15. 15.P. Indyk A Small Approximately Min-Wise Independent Family of Hash Functions. In Proc. 10th Symposium on Discrete Algorithms, SODA (1999).
  16. 16.P. Indyk and R. Motwani. Approximate Nearest Neighbor: Towards Removing the Curse of Dimensionality. In Proc. of the 30th Annual ACM Symposium on Theory of Computing, 1998, pp. 604–613.
  17. 17.B. Marlin, and R. Zemel The multiple multiplicative factor model for collaborative filtering In ACM Intl. Conf. Proceeding Series, Vol. 69, 2004.
  18. 18.R. Motwani and P. Raghavan. Randomized Algorithms. Cambridge University Press, 1985.
  19. 19.P. Resnick, N. Iakovou, M. Sushak, P. Bergstrom, and J. Riedl. GroupLens: An Open Architecture for Collaborative Filtering of Netnews, In Proc. of Computer Supported Cooperative Work Conf. , 1994.
  20. 20.B. Sarwar, G. Karypis, J. Konstan, and J. Reidl Application of Dimensionality Reduction in Recommender Systems – A Case Study In Proc. of the ACM WebKDD Workshop, 2000.
  21. 21.B. Sarwar, G. Karypis, J. Konstan, and J. Reidl Item-based collaborative filtering recommendation algorithms. In Proc. of the 10th Intl. WWW Conf. , (WWW) 2001.
  22. 22.G. Shani, R. Brafman, and D. Heckerman, An MDP-Based Recommender System In Proc. of the 18th Conf. Uncertainty in Artificial Intelligence, Aug. 2002.
  23. 23.K. Yu, X. Xu, J. Tao, M. Ester, and H. Kriegel Instance Selection Techniques for Memory-Based Collaborative Filtering In Proc. of the Second Siam Intl. Conf. on Data Mining, (SDM) 2002.

Citation

MLA
Das, A. S., et al. “Google News Personalization”. Proceedings of the 16th International Conference on World Wide Web, 2007, pp. 271–80, https://doi.org/10.1145/1242572.1242610.
APA
Das, A. S., Datar, M., Garg, A., & Rajaram, S. (2007). Google news personalization. Proceedings of the 16th International Conference on World Wide Web, 271–280. https://doi.org/10.1145/1242572.1242610
Chicago
Das, A. S., M. Datar, A. Garg, and S. Rajaram. 2007. “Google News Personalization”. Proceedings of the 16th International Conference on World Wide Web, 271–80. https://doi.org/10.1145/1242572.1242610.
Harvard
Das, A.S. et al. (2007) “Google news personalization”, Proceedings of the 16th international conference on World Wide Web. ACM, pp. 271–280. Available at: https://doi.org/10.1145/1242572.1242610.
Vancouver
1. Das AS, Datar M, Garg A, Rajaram S (2007) Google news personalization. In: Proceedings of the 16th international conference on World Wide Web. ACM, pp 271–280

BibTeX

@inproceedings{Das_2007, series={WWW′07}, title={Google news personalization: scalable online collaborative filtering}, url={http://dx.doi.org/10.1145/1242572.1242610}, DOI={10.1145/1242572.1242610}, booktitle={Proceedings of the 16th international conference on World Wide Web}, publisher={ACM}, author={Das, Abhinandan S. and Datar, Mayur and Garg, Ashutosh and Rajaram, Shyam}, year={2007}, month=May, pages={271–280}, collection={WWW′07} }
Metadata:Crossref

Access the Paper

This paper is available from its original source. Click below to access the PDF.

Open PDF