Mining Massive Data Sets

CS246

Stanford School of Engineering

The importance of data to business decisions, strategy and behavior has proven unparalleled in recent years. Predictive analytics, data mining and machine learning are tools giving us new methods for analyzing massive data sets. Companies place true value on individuals who understand and manipulate large data sets to provide informative outcomes.

Pivotal issues pertaining to mining massive data sets will range from how to deal with huge document databases and infinite streams of data to mining large social networks and web graphs. An emphasis will be on Map Reduce as a tool for creating parallel algorithms that can process very large amounts of data.

Practical hands-on experience will entail the design of algorithms for analyzing very large amounts of data and to learn existing data mining and machine learning algorithms. As a useful analytic tool, case studies will provide first-hand insight into how big data problems and their solutions allow companies like Google to succeed in the market. 

Topics Include

  • Big data systems like Hadoop, Spark and Hive
  • Link analysis such as PageRank, spam detection and hubs-and-authorities
  • Similarity search such as locality-sensitive hashtag and random hyperplanes
  • Stream data processing
  • Algorithms for large-scale mining
  • Large-scale machine learning 
  • Submodular function optimization
  • Computational advertising

What You Need to Succeed

  • A conferred bachelor’s degree with an undergraduate GPA of 3.0 or better
  • At least one: Computer Organizations & Systems (CS107) or Introduction to Databases (CS145) or equivalent AND
  • At least one: Intro to Probability for Computer Scientists (CS109) or Theory of Probability (STATS116) or equivalent

What You Need To Get Started

Before enrolling in your first graduate course, you must complete an online application.

Don’t wait! While you can only enroll in courses during open enrollment periods, you can complete your online application at any time.

Once you have enrolled in a course, your application will be sent to the department for approval. You will receive an email notifying you of the department's decision after the enrollment period closes. You can also check your application status in your mystanfordconnection account at any time.

Learn more about the graduate application process.

How Much It Will Cost

See more about tuition and fees.