MDS Courses


Course NumberBlockCourse TitleShort DescriptionExpanded DescriptionSection 1 InstructorSection 2 Instructor
DSCI 5111Programming for Data SciencePseudo-code. Program design and structure. Flow control. Iteration. Lists (arrays). Functions. File I/O. Classes, objects, methods, and libraries.Program design and data manipulation with Python. Overview of data structures, iteration, flow control, and program design relevant to data exploration and analysis. When and how to exploit pre-existing libraries.Prajeet BajpaiElham E Khoda
DSCI 5211Computing Platforms for Data ScienceIntroduction to software, shells, tools, and file systems for use in the Data Science program. Installation, configuration, and use of statistical and programming software including Integrated Development Environments (IDEs). Problem resolution skills.How to install, maintain, and use the data scientific software stack. The Unix shell, version control, and problem solving strategies. Literate programming documents.Ilya MusabirovDaniel Chen
DSCI 5231Programming for Data ManipulationProgram design and data manipulation using industry-standard software tools designed for statistical work. Organizing, filtering, sorting, grouping, reformatting, converting, and cleaning data to prepare it for further analysis.Program design and data manipulation with R. Organizing, filtering, sorting, grouping, reformatting, converting, and cleaning data to prepare it for further analysis.Gittu GeorgeTiffany Timbers
DSCI 5511Descriptive Statistics and Probability for Data ScienceDescriptive statistics including measures of location and spread. Random variables, distributions, and parameters. Categorical variables. Uncertainty. Missing data.Fundamental concepts in probability including conditional, joint, and marginal distributions. Statistical view of data coming from a probability distribution.Payman NickchiAlexi Rodríguez-Arelis
DSCI 5122Algorithms and Data StructuresBasic algorithms. Recursion. Data structures including linked lists, queues, stacks, trees, graphs, and hash tables. Searching and sorting. Introduction to complexity including Big-O notation, efficiency, and scalability.How to choose and use appropriate algorithms and data structures to help solve data science problems. Key concepts such as recursion and algorithmic complexity (e.g., efficiency, scalability).Elham E KhodaSky Sheng
DSCI 5312Data Visualization IDescriptive plots using statistical and programming software. Basics, mechanics, and principles of data visualization.Exploratory data analysis. Design of effective static visualizations. Plotting tools in R and Python.Joel ÖstblomJoel Östblom
DSCI 5522Statistical Inference and Computation IRandom variables, parameters, observed data, statistics (distinctions and connections). Estimation: point and interval. Two-group comparisons, frequentist version. Simulation-based approaches.The statistical and probabilistic foundations of inference. Large sample results. The frequentist paradigm.Alexi Rodríguez-ArelisRodolfo Lourenzutti
DSCI 5712Supervised Learning IDecision trees. k-th nearest neighbour classifiers. Naive Bayes classifiers. Logistic regression.Introduction to supervised machine learning. Basic machine learning concepts such as generalization error and overfitting. Various approaches such as K-NN, decision trees, linear classifiers.Varada KolhatkarVarada Kolhatkar
DSCI 5133Databases and Data RetrievalRelational schemas. SQL queries. Database programming using embedded SQL. XML and XQuery.How to work with data stored in relational database systems. Storage structures and schemas, data relationships, and ways to query and aggregate such data.Gittu GeorgeGittu George
DSCI 5223Data Science WorkflowsInteractive and non-interactive data analysis. Scripting. Dynamic reporting. Reproducibility. Project and file management. Version control. Automated workflows.Interactive vs. scripted/unattended analyses and how to move fluidly between them. Reproducibility through automation and containerization.Daniel ChenSky Sheng
DSCI 5613Regression ILinear models: continuous response; one or more categorical covariates and/or one or more continuous covariates.Linear models for a quantitative response variable, with multiple categorical and/or quantitative predictors. Matrix formulation of linear regression. Model assessment and prediction.Rodolfo LourenzuttiPayman Nickchi
DSCI 5733Feature and Model SelectionPerformance of a classification model. Generalization error, overfitting of training data. Shrinkage, feature selection, Akaike Information Criterion, Bayesian Information Criterion. k-fold cross validation. Bootstrapping. Receiver Operating Characteristic curve. Elastic nets, regularization.How to evaluate and select features and models. Cross-validation, ROC curves, feature engineering, and regularization.Prajeet BajpaiElham E Khoda
DSCI 5244Collaborative Software DevelopmentSoftware life cycle. Unit testing. Continuous integration. Submission to a relevant repository for distribution. Packaging for installation and use by others. Software licenses. Classes and abstraction.How to exploit practices from collaborative software development techniques in data scientific workflows. Appropriate use of abstraction, the software life cycle, unit testing / continuous integration, and packaging for use by others.Tiffany TimbersDaniel Chen
DSCI 5414Privacy, Ethics, and SecurityPrivacy and data. Ethics boards, legal issues, licensing. Physical and logical data security, social engineering. Encryption, data anonymization, privacy-preserving techniques. Case studies.The legal, ethical, and security issues concerning data, including aggregated data. Proactive compliance with rules and, in their absence, principles for the responsible management of sensitive data. Case studies.Sky ShengSky Sheng
DSCI 5624Regression IINon-parametric regression and smoothing. Data-driven parameter selection. Robust regression. Mixed effects.Useful extensions to basic regression, e.g., generalized linear models, mixed effects, smoothing, robust regression, and techniques for dealing with missing data.Alexi Rodríguez-ArelisPayman Nickchi
DSCI 5724Supervised Learning IISupport Vector Machines. Random Forests. Ensemble Classifiers. Graphical models.Introduction to numerical optimization (e.g., gradient descent). Neural networks and deep learning.Varada KolhatkarPrajeet Bajpai
DSCI 5255Web and Cloud ComputingNetworks and the Internet, scraping data, APIs, cloud computing, Web services for scalable computing, Web hosting, Web publication platforms, introduction to parallel computing.How to use the web as a platform for data collection, computation, and publishing. Accessing data via scraping and APIs. Using the cloud for tasks that are beyond the capability of your local computing resources.Gittu GeorgeIlya Musabirov
DSCI 5535Statistical Inference and Computation IIMultiple hypothesis testing, false discovery rate. Two-group comparisons, Bayesian paradigm.Bayesian reasoning for data science. How to formulate and implement inference using the prior-to-posterior paradigm.Payman NickchiAlexi Rodríguez-Arelis
DSCI 5635Unsupervised LearningUnsupervised learning. K-means/medoids. Model-based clustering. Expectation-maximization algorithm. Hierarchical clustering. Dimension reduction. Matrix decomposition. Heatmaps, contour plots, dendograms.How to find groups and other structure in unlabeled, possibly high dimensional data. Dimension reduction for visualization and data analysis. Clustering, association rules, model fitting via the EM algorithm.Sky ShengVarada Kolhatkar
DSCI 5745Spatial and Temporal ModelsTime series. State space and change point detection. Hidden Markov Models. Gaussian processes.Model fitting and prediction in the presence of correlation due to temporal and/or spatial association. ARIMA models.Prajeet BajpaiPrajeet Bajpai
DSCI 5326Data Visualization IIInteractive visualization, design choices, dynamic change over time, multiple views, data reduction, dealing with complexity.How to make principled and effective choices with respect to marks, spatial arrangement, and colour. Analysis, design, and implementation of interactive figures. How to provide multiple views, deal with complexity, and make difficult decisions about data reduction.Daniel ChenDaniel Chen
DSCI 5426Communication and ArgumentationClaims, reasons, and evidence. Strengths and weaknesses of models. Effective oral and written presentation of scientific results, including interpretation of data and recognition of assumptions, bias, validity, and reliability. Citations, references, and peer-review.How to interpret and present data science findings to a variety of audiences. Written and spoken presentation skills.Grace TompkinsGittu George
DSCI 5546Experimentation and Causal InferenceRandomization. A/B testing. Blocked designs. Orthogonality. Batch effects, confounding. Causality. Contemporary examples. Simulations.Statistical evidence from randomized experiments versus observational studies. Applications of randomization, e.g., A/B testing for website optimization. Methods for dealing with the multiple testing problem.Ilya MusabirovIlya Musabirov
DSCI 5756Advanced Machine LearningNeural networks trained with backpropagation. Deep learning. Overfitting and underfitting. Active data acquisition. Hyperparameter optimization.Advanced machine learning methods in the context of natural language processing (NLP) applications. Bag of words, recommender systems, topic models, natural language as sequence data, Markov chains, and recurrent neural networks.Elham E KhodaVarada Kolhatkar
DSCI 5917Capstone ProjectA capstone design project designed to give students experience in leading complex multidisciplinary projects relevant to data science.A mentored group project based on real data and questions from a partner within or outside the university. Students will formulate questions and design and execute a suitable analysis plan. The group will work collaboratively to produce a reproducible analysis pipeline, project report, presentation and possibly other products, such as a dashboard.MDS teaching teamMDS teaching team