Students will complete at least four courses. Students lacking adequate background in computer science may be required to take CS 600 (Fundamentals of Computer Science for Data Science), and students lacking adequate background in statistics may be required to take STAT 845 (Statistical Concepts for Data Science). Neither of these courses will be counted toward the four course requirement. The four courses should include:
- STAT 847: Exploratory Data Analysis
- Exactly one of:
- CS 631: Data-Intensive Distributed Analytics, or
- CS 651: Data-Intensive Distributed Computing
- At least one of:
- CS 680: Intro. machine learning
- CS 685: Machine learning theory
- CS 686: Intro. to Artificial Intelligence
- CS 795 / CO 602: Fundamentals of optimization
- CS 794 / CO 673: Optimization for data science
- CO 650: Combinatorial Optimization
- CO 663: Convex Optimization and Analysis
- CS 786: Probabilistic inference
- CS 886: Advanced topics in Artificial intelligence
- STAT 840: Computational inference
- STAT 841: Statistical learning: Classification
- STAT 844: Statistical Learning: Function Estimation
- STAT 946: Topics in probability and statistics
- The fourth course is normally chosen from the following list. Courses not on this list are subject to the approval of the Graduate Director.
Machine learning/statistical learning/optimization
- CS 680: Intro. machine learning
- CS 685: Machine learning theory
- CS 686: Intro. to Artificial Intelligence
- CS 795/CO 602: Fundamentals of optimization
- CS 794/CO 673: Optimization for data science
- CO 650: Combinatorial Optimization
- CO 663: Convex Optimization and Analysis
- CO 769: Topics in Continuous Optimization11
- CS 786: Probabilistic inference
- CS 885: Advanced Topics in Computational Statistics11
- CS 886: Advanced topics in Artificial intelligence
- STAT 840: Computational inference
- STAT 841: Statistical learning: Classification
- STAT 844: Statistical Learning: Function EstimationSTAT 946: Topics in probability and statistics11
Computer systems and databases
- CS 638: Principles of database management
- CS 648: Database systems implementation
- CS 656: Computer networks
- CS 657: System performance evaluation
- CS 658: Computer security and privacy
- CS 740: Database engineering
- CS 741: Non-traditional databases
- CS 742: Parallel and distributed databases
- CS 743: Principles of database management
- CS 755: Systems and network architectures and implementation
- CS 848: Advanced topics in databases12
Distributed computing
- CS 654: Distributed systems
- CS 856: Advanced topics in distributed computing11
Data exploration
- STAT 842: Data Visualization
Other
- CS 798: Advanced Research Topics11 Students must also complete the Ethics Milestone.
The thesis requirement consists of the writing of a research thesis and the topic is selected with the guidance of a faculty member in Data Science who serves as the student’s supervisor. The thesis should contain original work in data science, defined as follows (see Section 1): data science is the study and development of methods to extract patterns, knowledge and insight from available data. Data science also comprises the application of these methods in order to understand, predict, and improve business strategy, products and services, scientific, medical and engineering inquiry, public health and safety, as well as other societal pursuits.
The master's thesis is to be submitted electronically to the Faculty of Mathematics Graduate Office with the “Agreement to Read MMath Thesis Form” for a display period of two weeks. The thesis defence consists of a 20-minute presentation by the candidate, followed by detailed questioning by the committee members. A final version of the thesis is to be given to the examining committee at least two weeks before the scheduled defence date.
The examining committee includes the thesis supervisor and two readers. The thesis supervisor and at least one of the additional readers should be members of the Data Science group. The second reader may be any regular faculty member at the University of Waterloo. The thesis should contain original work on data science. The supervisor and committee members should ensure that the thesis is well-written and relevant to the discipline. Credit for the master's thesis is assigned when the supervisor and the two readers approve the thesis and the supervisor returns the signed “Thesis Acceptance Certification” form to the Graduate Director.
11 Note: CO 769, CS 798, CS courses at the 800 level, and STAT courses at the 900 level should be on a topic in Data Science; they are subject to the approval of the Graduate Director