everything.study
COMP 4801

Algorithms for Data Mining, Web, and Social Networks

0.5 credit · Undergraduate

Algorithm design techniques for modern data sets arising in, for example, data mining, web analytics, search engines and social networks. Topics may include locality-sensitive hashing, data streaming, clustering, recommendation systems, link analysis, dimensionality reduction, online algorithms, social network analysis, graph partitioning, and randomized algorithms.

Study notes

Independent, AI-drafted study guide · Public sources linked below · Added November 5, 2026

Original guide aligned to the public Fall 2026 outline. The outline identifies course topics; explanations and exercises are independently written.

Large-data algorithms and approximation

Large datasets change which resources dominate an algorithm. An exact method that fits a mathematical time bound may still need too much memory, too many passes, or too much communication. State the computation model and acceptable error. Streaming algorithms process limited observations with bounded memory; approximate methods trade controlled error for lower resource cost. Distinguish a probabilistic guarantee over an algorithm's random choices from a claim that every real dataset follows a convenient distribution.

References: Mining of Massive Datasets — authors' public textbook site

Similarity, minhash, and locality-sensitive hashing

Similarity requires a representation and metric. Jaccard similarity compares sets through intersection divided by union. Under a uniformly random permutation, the probability that two sets share the same minimum element equals their Jaccard similarity. Repeated minhash values estimate that quantity. Locality-sensitive hashing turns signatures into candidate pairs, reducing exhaustive comparisons. Candidate generation can introduce false positives and false negatives, so verify candidates with the intended similarity measure and choose parameters for the desired tradeoff.

References: Mining of Massive Datasets — authors' public textbook site

Sampling and sketching streams

Reservoir sampling keeps a uniform sample of a stream without knowing its final length. For a reservoir of size k, the i-th item after initialization is admitted with probability k/i, replacing a uniformly selected reservoir entry. Sketches summarize counts or distinctness through randomized structures, with guarantees tied to assumptions and parameters. Repeated items matter differently for sampling events and sampling distinct keys. Specify whether the target population consists of occurrences, users, or unique values.

References: Mining of Massive Datasets — authors' public textbook site

Recommendation and dimensionality reduction

Collaborative filtering predicts preferences from interaction patterns; content-based methods use item or user attributes. Missing interactions are not automatically negative preferences because exposure and selection affect what is observed. Matrix factorization represents users and items through lower-dimensional latent vectors, usually optimized against an observed-data objective and regularization. Split evaluation to reflect time and availability at recommendation time. A random row split can leak a user's future preferences into training and overstate deployment quality.

References: Mining of Massive Datasets — authors' public textbook site

Clustering, social graphs, and online decisions

Clustering optimizes a chosen notion of cohesion, so feature scaling and distance choice can dominate the result. Graph communities can reflect dense connectivity, but a detected cluster is not automatically a meaningful social group. Online algorithms make decisions before future inputs arrive and may be assessed by competitive analysis against a stronger offline benchmark. For every result, state the objective, baseline, randomness, and information available. Reproducible experiments need fixed data preprocessing and reported variability, not only a favorable run.

References: Mining of Massive Datasets — authors' public textbook site

Practice & worked answers

Original exercises for this guide.

1. For sets {a,b,c} and {b,c,d,e}, what is Jaccard similarity?

Show worked answer

The intersection has two elements and the union has five, so similarity is 2/5. Under the ideal minhash model, one signature position matches with probability 0.4; a finite signature is an estimate, not an exact guarantee.

2. Why can a recommender score well offline but fail after deployment?

Show worked answer

The split may reveal future information, the candidate set may be unrealistically easy, or historical exposure may differ from deployment. Define the prediction time, available interactions, and ranking candidates before selecting an evaluation protocol.

Public notes & references

Course sources establish the scope above. Reference materials support the explanations; linked lecture notes and books remain with their authors.

2026

Topics

  • Algorithmic design techniques for modern data sets arising in, for example, data min
  • analysis, dimensionality reduction, online, social networking, game theoretic and prob
  • abilistic algorithms.
  • Mining of Massive Datasets (MMDS) by Leskovec, Rajaraman, Ullman
  • Discrete Structures for Computer Science: Counting, Recursion, and Probability by
  • Michiel Smid
  • edge Discovery, WSDM, ICLR, ICML.
  • course.

Prerequisites & course information

Precludes additional credit for COMP 3801 (no longer offered). Prerequisite(s): COMP 2804 with a minimum grade of B+ . Lecture three hours a week.

Sources